不在服务器上启动 sendmail 服务,直接使用外部 SMTP 的发送邮件其实更简单,下面是使用 smtp.163.com 的基本配置
set from=NAME@163.com
set smtp=smtps://smtp.163.com
set smtp-auth-user=NAME
set smtp-auth-password=xxxx
set smtp-auth=login
把 NAME 替换成为登录的账号,xxx 替换为授权码,注意是授权码,而不是登录密码,这个是网易的特殊设置。
写好之后,保存文件为 mail.rc
关键是保存的地方,我尝试了很多地方 ~/.mailrc
, /etc/nail.rc
等等,都不起作用,发送邮件报错
echo 'Test' | mail -v -s 'Title' superman@163.com
Please install an MTA on this system if you want to use sendmail!
总是提示要装 sendmail
,这说明配置文件没有起作用,无奈之好查看 man mail
求助,直接设置环境变量解决问题,首先要保存文件为 ~/mail.rc
export MAILRC=~/mail.rc
echo 'Test' | mail -v -s 'Title' superman@163.com
这时候会 balabala 的输出一大堆,邮件发送成功。