使用postfix软件,用自己的域名发送邮件

如果想用自己的域名发送邮件,可以用 postfix 软件。 postfix 是一个邮件传输代理。这里在 debian 系统上安装一下。比如我的域名是 youxiangmi.comt ,需要我的QQ邮箱(xxxx@qq.com)发送一封邮件。

要想使用自己的域名发送邮件需要完成以下几点

  1. 对域名需要解析好, 这里使用域名 youxiangmi.com
  2. 安装 mtu (邮件传输代理软件) ,这里使用 postfix
  3. 服务器的25端口不能被封

如果仅仅是发送邮寄保存 25端口的,出连接畅通即可。就是你的服务器可以连接对方邮件服务器的 25 端口。

使用自己的域名发送邮件

首先在服务器上,连接一下 smtp.qq.com 的 25 端口,如果不能连接,那是发不来邮件的。如果不通可以检查一下几个部分

  1. 防火墙是否屏蔽了25端口
  2. 云服务器的端口是否已经打开
  3. 运营商是不是关闭了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 测试一下。

结果是:发送的时候,没有异常,QQ邮箱也没有收到邮件,大概10秒收,收了一封邮件。

spf 检测失败
spf 检测失败

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注