一,安裝郵件傳輸代理程序
sudo apt-get install sendmail
sudo apt-get install sendmail-cf
二, ubuntu下最常使用的是mail功能,需要安裝mailutils
sudo apt-get install mailutils
還有幾個可選包:
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
此處如果報錯
*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`always_add_domain')*** ERROR: FEATURE() should be before MAILER()
*** MAILER(`local') must appear after FEATURE(`allmasquerade')*** ERROR: FEATURE() should be before MAILER()
解決辦法:
修改sendmail.mc最後幾行
vi /etc/mail/sendmail.mc
將文檔中的
MAILER_DEFINITIONS
MAILER(`local')dnl
MAILER(`smtp')dnl
放到文檔最後
四,重啓sendmail
service sendmail restart
查看下:
netstat -tlunp | grep 25
tcp 0 0 0.0.0.0:25 0.0.0.0:* LISTEN
五,發郵件
echo "正文!" | mail -s 標題 [email protected]
注意有可能郵件被髮送成垃圾郵件了,去垃圾郵件找