温馨提示×

如何在Ubuntu中配置Sendmail以支持SSL

小樊
99
2024-08-26 17:09:19
栏目: 云计算

要在Ubuntu中配置Sendmail以支持SSL,请按照以下步骤操作:

  1. 安装Sendmail和相关组件:
sudo apt-get update
sudo apt-get install sendmail sendmail-cf mailutils
  1. 生成SSL证书。你可以使用自签名证书或从证书颁发机构(CA)购买证书。这里我们使用自签名证书进行演示:
sudo openssl req -new -x509 -days 365 -nodes -out /etc/mail/certs/sendmail.pem -keyout /etc/mail/certs/sendmail.pem
sudo chmod 600 /etc/mail/certs/sendmail.pem
  1. 编辑Sendmail配置文件/etc/mail/sendmail.mc,添加以下内容以启用SSL支持:
sudo nano /etc/mail/sendmail.mc

在文件中找到并取消以下行的注释(删除行首的dnl):

dnl # DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl

然后在该行下面添加以下内容:

DAEMON_OPTIONS(`Port=smtp, Name=MTA, M=Ea')dnl

这将启用SMTPS(端口465)支持。

  1. 在同一个配置文件中,找到并取消以下行的注释(删除行首的dnl):
dnl # DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl

然后在该行下面添加以下内容:

DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl

这将启用STARTTLS支持(端口587)。

  1. 保存并退出编辑器。

  2. 重新生成Sendmail配置文件:

sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
  1. 重启Sendmail服务:
sudo service sendmail restart

现在,你的Sendmail服务器已经配置为支持SSL。你可以使用以下命令测试SMTPS(端口465)和STARTTLS(端口587)连接:

echo "Subject: Test Email" | sendmail -v -t -i -f sender@example.com recipient@example.com

请确保将sender@example.comrecipient@example.com替换为实际的发件人和收件人电子邮件地址。

0