如果想用自己的域名发送邮件,可以用 postfix 软件。 postfix 是一个邮件传输代理。这里在 debian 系统上安装一下。比如我的域名是 youxiangmi.comt ,需要我的QQ邮箱(xxxx@qq.com)发送一封邮件。
要想使用自己的域名发送邮件需要完成以下几点
- 对域名需要解析好, 这里使用域名 youxiangmi.com
- 安装 mtu (邮件传输代理软件) ,这里使用 postfix
- 服务器的25端口不能被封
如果仅仅是发送邮寄保存 25端口的,出连接畅通即可。就是你的服务器可以连接对方邮件服务器的 25 端口。
使用自己的域名发送邮件
首先在服务器上,连接一下 smtp.qq.com 的 25 端口,如果不能连接,那是发不来邮件的。如果不通可以检查一下几个部分
- 防火墙是否屏蔽了25端口
- 云服务器的端口是否已经打开
- 运营商是不是关闭了25端口的连接
不管怎么,要想发送邮件,25 端口的出方向,必须没有问题。
安装 postfix 就比较简单的
因为这个我希望这台服务器就是用来发送邮件的,我直接把服务器全面设置为 youxiangmi.com
hostnamectl set-hostname youxiangmi.com
不用交互式安装
export DEBIAN_FRONTEND=noninteractive
安装 postfix
apt-get install postfix
之前已经设置了主机名 为 youxiangmi.com,所有安装好后 postfix 的配置文件 /etc/postfix/main.cf 中主机名是设置好的。
安装后还需要检查一下 postfix 是否运行正常
ss -lnpt | grep 25
LISTEN 0 100 0.0.0.0:25 0.0.0.0:* users:(("master",pid=3523,fd=13))
LISTEN 0 100 [::]:25 [::]:* users:(("master",pid=3523,fd=14))
可以看到,25 端口已经成功启动。同时监听了 ipv4 和 ipv6。
域名解析
域名解析一共添加了三个。 如果对于发送邮件 TXT 记录是必须要填写,否则发出的邮件会被认为是垃圾邮件,设置在邮件的垃圾箱中都找不到。前两个 A 记录 和 MX 记录是接收有邮件使用的。
发送邮件测试
echo "mail content" | sendmail you-qq-email@qq.com
如果一切正常,就可以收到邮件,打开QQ邮箱看一下。
没有 spf 记录会怎么
之前说过如果没有配置 spf 发送的邮件容易被当作垃圾邮件。删除了 spf 测试一下。