Pages

Thursday, 19 April 2018

使用sendmail配置邮件服务,发送邮件

这里是Ubuntu14.04 Server环境。
Ubuntu可以使用mailsendmail来发送邮件,这里使用sendmail

一、安装

安装很容易,直接apt-get
sudo apt-get install sendmail
sudo apt-get install sendmail-cf
还有几个可选包:
squirrelmail  # 提供webmail
spamassassin  # 提供邮件过滤
mailman  # 提供邮件列表支持
dovecot  # 提供IMAP和POP接收邮件服务器守护进程
测试是否安装成功:
ps aux |grep sendmail
如果出现类似:
root     14264  0.0  0.5 100700  2788 ?        Ss   14:43   0:00 sendmail: MTA: accepting connections
root     14602  0.0  0.1  11740   940 pts/1    S+   15:29   0:00 grep --color=auto sendmail
sendmail安装成功。

二、配置

sendmail默认是本机用户发送给本机,所以需要修改可以发送到整个Internet:
修改sendmail配置宏文件,路径为/etc/mail/sendmail.mc
找到:
DAEMON_OPTIONS(`Family=inet,  Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl
Addr=127.0.0.1修改为Addr=0.0.0.0,意思是可以连接到任何服务器。
保存修改的文件,下面备份配置文件:
cd /etc/mail
mv sendmail.cf sendmail.cf~
然后生成新的配置文件:
m4 sendmail.mc > sendmail.cf
接下来修改hosts文件,路径为/etc/hosts
原内容大概为:
127.0.1.1 name name
127.0.0.1 localhost
修改为:
127.0.0.1 yourdomain.com localhost name
保存并关闭文件。

三、测试能否正常运行

输入如下命令:
telnet 127.0.0.1 25
会得到:
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
220 mysite ESMTP Sendmail 8.14.4/8.14.4/Debian-4.1ubuntu1; Sat, 9 May 2015 15:38:45 +0800; (No UCE/UBE) logging access from: yourdomain.com(OK)-yourdomain.com [127.0.0.1]
则表明工作正常。
注意在防火墙中打开25号端口!

四、测试发送邮件

输入如下命令:
sendmail -t <<EOF
会出现>符号,输入下面格式的内容(每行后面回车):
From:Mail test <test@yourdomain.com>
To:xxxx@163.com
Subject:邮件测试
测试test
EOF

No comments:

Post a Comment