我使用命令安装了 Postfix 邮件传输代理sudo apt install mailutils
。
我在终端中使用以下命令。
echo "This is the body of the email" | mail -s "This is the subject line" [email protected]
它运行正常,但我想使用我的 Gmail 帐户。我该怎么做?
注意我的Ubuntu版本是18.10。
答案1
1.配置Postfix
编辑 Postfix 配置文件。
sudo nano /etc/postfix/main.cf
在文件底部向上约 6 行处找到以下行 Relayhost = 并将其删除。
将以下内容添加到文件末尾。
relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes
保存文件并退出。(按 CTRL + X,按 Y,然后按 ENTER)
2. 创建密码和数据库文件
创建用于存储我们的凭证的 sasl_passwd 文件。
sudo nano /etc/postfix/sasl_passwd
插入以下内容:
[smtp.gmail.com]:587 [email protected]:password
保存文件并退出。(按 CTRL + X,按 Y,然后按 ENTER)
使用 postmap 命令为 Postfix 创建一个哈希数据库文件。
sudo postmap /etc/postfix/sasl_passwd
现在 /etc/postfix/ 目录中应该有一个名为 sasl_passwd.db 的文件。
为了增加安全性,我们只允许 root 用户读取和写入 sasl_passwd 和 sasl_passwd.db
sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
3.发送测试邮件
我们现在将发送一封测试电子邮件。请确保替换[电子邮件保护]使用您自己的电子邮件地址。
echo "Test Email message body" | mail -s "Email test subject" [email protected]