Linux 通过smtp 发送邮件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 通过smtp 发送邮件相关的知识,希望对你有一定的参考价值。
最近在项目上使用邮件服务,使用自带的mail服务是可以发送邮件,但是在测试后发现发送的地址不是常规的邮件。本来想偷懒使用自带的sendmail,但是老被屏蔽,所以只好使用第三方授权来发送邮件,以下是我ubuntu12上操作
基本环境
[email protected]:/home/lt5# cat /etc/issue Ubuntu 14.04.5 LTS \n \l [email protected]:/home/lt5# uname -a Linux lt5 4.4.0-31-generic #50~14.04.1-Ubuntu SMP Wed Jul 13 01:07:32 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
2. 安装软件 heirloom-mailx
[email protected]:/home/lt5# apt-get install heirloom-mailx
3. 修改配置文件/etc/nail.rc
[email protected]:/home/lt5# tail -7 /etc/nail.rc # added by summer at 2017-01-21 set [email protected] #要换成你的163邮箱 set smtp=smtp.163.com set [email protected] #换成你的163邮箱 set smtp-auth-password=sdxdsxds #换成你的163邮箱对应的授权码 set smtp-auth-login #end
配置文件说明解释
from 是发送的邮件地址
smtp 是发生的外部smtp服务器的地址
smtp-auth-user 是外部smtp服务器认证的用户名
smtp-auth-password 是外部smtp服务器认证的用户密码
smtp-auth 是邮件认证的方式
注意:有关163的授权码的事情自行百度,或者如下操作即可。
我使用的外部 SMTP 邮箱是网易 163 邮箱,延时相对 qq 会比较小
登录 163 邮箱,在 163 邮箱设置-->常规设置-->POP3/SMTP/IMAP 开启以上三个服务并选择收取全部邮件,在 163 邮箱设置-->常规设置-->客户端密码授权记下客户端授权密码(一串字符,很重要)
5.发送邮件测试
[email protected]:/home/lt5# mailx -s ‘test a mail‘ [email protected] </etc/hosts
解释说明
1. -s 就是后面接邮件的主题
2. [email protected] 就是要收邮件的邮件地址,我已经隐藏了,只要加上你需要的eamil即可
要的话发送多人,中间加逗号即可
3. < /etc/hosts就是你要发送的邮件内容,也就是接受者邮件的正文
如下接受者收到的邮件内容
以上是关于Linux 通过smtp 发送邮件的主要内容,如果未能解决你的问题,请参考以下文章