注意:budgetvm官方对架设邮件服务器非常限制,担心对外发垃圾邮件,一旦被举报,就直接封VPS,所以下面的配置中,我们将邮件通过 Gmail 的账号转发出去。(本文是ubuntu系统)
在 Putty 使用如下命令,安装 postfix,替换下面命令中的第一行 mydomain.com 为 你VPS上绑定的域名,如果有多个域名,选择其中一个即可。
hostname mydomain.com
apt-get -y install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules
在弹出的对话框中,如果你的邮件服务器仅仅为你本地的程序使用,可以直接选择 Local only ,否则请选择其它选项。
安装完成后,请运行如下命令限制 postfix 为 10 个并发:
postconf -e default_process_limit=10
将邮件服务器采用gmail账号做邮件中转,首先你需要先有一个gmail的账号: USERNAME@gmail.com PASSWORD ,为了避免出现Gmail的图形验证登陆,你可以开启Gmail的账号的二次验证,然后创建一个应用密码,这样你可以采用应用密码来配置。
postconf -e relayhost=smtp.gmail.com:587
postconf -e smtp_sasl_auth_enable=yes
postconf -e smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
postconf -e smtp_sasl_security_options=noanonymous
postconf -e smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
postconf -e smtp_use_tls=yes
下面的脚本中的 USERNAME 和 PASSWORD 单词请改为你正确的用户名和密码,
echo "smtp.gmail.com:587 USERNAME@gmail.com:PASSWORD" > /etc/postfix/sasl_passwd
chmod 400 /etc/postfix/sasl_passwd
postmap /etc/postfix/sasl_passwd
service postfix restart
完成了本地邮件服务器的搭建。
测试下:
echo "Test mail" | mail -s "Test" you@example.com
查看邮件投递日志:
tail /var/log/mail.log
这样你的程序就可以直接使用本地的SMTP服务对外发邮件了。