这篇具有很好参考价值的文章主要介绍了linux中的sendmail发送邮件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。
Linux/UNIX 下的老牌邮件服务器。
Sendmail 作为一种免费的邮件服务器软件,已被广泛的应用于各种服务器中,它在稳定性、可移植性、及确保没有 bug 等方面具有一定的特色,且可以在网络中搜索到大量的使用资料。
一、邮件发送原理图
MUA:Mail User Agent,邮件用户代理,用来编写,收发邮件
MTA:Mail Transfer Agent,邮件传输代理,将邮件传输到正确目的地
MDA:Mail Delivery Agent,邮件分发代理,将邮件分发到正确目的用户
举例说明,假如A用户使用的是QQ邮箱,B用户使用的是163邮箱,A要向B发送一封邮件。流程如下:
1、A用户通过MUA编写好邮件,并发送
2、该邮件通过MTA,首先发送到QQ邮件服务器
3、QQ邮件服务器分析到目的邮箱地址是163,所以再通过MTA传送到163邮件服务器
4、163邮件服务器收到该邮件
5、由于使用163邮箱的用户有很多,再通过MDA把该邮件发送到正确的用户
6、B用户通过MUA就可以查看A用户发送的邮件。
二、安装
# mail是MUA,sendmail是MTA
1. sendmail必须先要安装两个包
sudo apt-get install sendmail
sudo apt-get install sendmail-cf # 配置工具
2. ubuntu下最常使用的是mail功能,需要安装mailutils
sudo apt-get install mailutils
3. 若需要使用带“附件”的功能,还需要安装sharutils
sudo apt-get install sharutils
4. 测试
输入命令:ps aux | grep sendmail
相关文件:
三、配置
默认情况下,sendmail只会为本机用户发送邮件,若要将它扩展到整个Internet,则修改sendmail配置宏文件,路径为/etc/mail/sendmail.mc。
sudo vi /etc/mail/sendmail.mc
将Addr=127.0.0.1改为0.0.0.0,表明可以连接到任何服务器上
保存修改的文件,下面备份配置文件:
cd /etc/mail
mv sendmail.cf sendmail.cf~
然后生成新的配置文件:
m4 sendmail.mc > sendmail.cf
重启sendmail生效:systemctl restart sendmail 或者 /etc/init.d/sendmail restart
四、测试发送邮件
常用的发送邮件方式有以下几种:
1. 如何写一般的邮件: mail test@qq.com Cc 编辑抄送对象,Subject:邮件主题,输入回车,邮件正文后,按Ctrl-D结束
2. 快速发送方式: echo "邮件正文" | mail -s "邮件主题" test@126.com
3. 以文件内容作为邮件正文来发送: mail -s test test@126.com < test.txt
4. 发送带附件的邮件: uuencode 附件 附件名| mail -s "邮件标题" 收信人 -b 密送人 -- -f 发信人 -F 发信人名称
查看日志:tail -f /var/log/mail.log
五、邮件发送问题
1、发送失败,日志报错
My unqualified host name (node1) unknown; sleeping for retry
/var/log/mail.log日志有如下报错:
参考
Sendmail: "unqualified hostname unknown; sleeping for retry unqualified hostname - Linux Tutorials - Learn Linux Configuration,
这个错误输出实际上使问题非常清楚。文本的意思正是它所说的。这意味着 Sendmail
无法解析您的完全限定域名
。
unqualified host name。
在我们的例子中,系统的主机名是node1(hostname命令查看)
要解决此问题,请更改:
/etc/hosts
重启服务:systemctl restart sendmail
再次发送邮件:echo '邮件内容' | mail -s '邮件标题'
1162886013@qq.com
tail -f /var/log/mail.log的日志显示:
查看邮箱是否收到:收到了
文章来源地址https://www.toymoban.com/news/detail-577099.html
文章来源:https://www.toymoban.com/news/detail-577099.html
到了这里,关于linux中的sendmail发送邮件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!