通过命令行发送邮件
电子邮件原理
搭建步骤
- 关闭本机的sendmail/postfix服务(postfix是为了解决sendmail的一些缺点而推出的替代品)
发件人信息为我们指定的运行Postfix的主机名,这会导致一个非常严重的后果,就是QQ或者163邮箱会把这封邮件当做垃圾邮件放到垃圾箱,甚至我们发送的邮件会被当做垃圾邮件屏蔽掉
1 | # sendmail (实际上sendmail已经没人用了) |
安装替代postfix/sendmail的邮件客户端heirloom-mailx
1
2# 安装heirloom-mailx
sudo apt install heirloom-mailx修改邮件客户端对应的配置文件
/etc/s-nail.rc
1
2
3
4
5set from=xxx@163.com
set smtp=smtp.163.com
set smtp-auth-user=xxx # 这里填不带@163.com的用户名
set smtp-auth-password=123456 # 这里填 SMTP口令,非邮箱账户密码
set smtp-auth=login测试
1
2echo "你好" | mail -s "测试" 123456@qq.com
# 注意邮件标题不要含有 test,这是因为126163邮箱的反垃圾机制
注意,邮件的主题不能是 IP 或 test 等词,最好用中文的”通知”等,不然会被当做垃圾邮件屏蔽掉.