PowerMTA 是用于电子邮件营销的高度可配置的邮件服务器。与一般电子邮件服务器不同,PowerMTA 可以配置以满足您的特殊邮件投递要求。
1、安装 PowerMTA
2、在 PowerMTA 中创建 SMTP 用户
3、在 PowerMTA 中更改 SMTP 端口
4、如何在 PowerMTA 中配置主机名
5、在 PowerMTA 中创建 DKIM
6、PowerMTA 允许 IP 发送电子邮件
7、在 PowerMTA 中启用 Web 监视器 UI
8、PowerMTA 通过域的另一个 SMTP 服务器路由邮件
9、PowerMTA IP 轮换
10、使用 telnet 的 PowerMTA 测试
====================================================
1、安装 PowerMTA
如果您已经有邮件服务器,请将其删除。
yum install unzip net-tools telnet git gdb -y yum remove postfix -y
如果你想保持当前的邮件服务器,你可以在 25 以外的端口上运行 PowerMTA。
cd /root/PMTA/ unzip PowerMTA5.0r1.zip cd /root/PMTA/PowerMTA5.0r1 yum install PowerMTA-5.0r1-201909161531.x86_64.rpm service pmta stop service pmtahttp stop rm -f /usr/sbin/pmtad rm -f /usr/sbin/pmtahttpd cd /root/PMTA/PowerMTA5.0r1/usr/sbin cp * /usr/sbin chmod -R 755 /usr/sbin/pmta chmod -R 755 /usr/sbin/pmtad chmod -R 755 /usr/sbin/pmtahttpd cp /root/PMTA/PowerMTA5.0r1/license /etc/pmta
重新启动 PowerMTA
service pmta start service pmtahttp start
如果出现任何错误,请在调试模式下运行 powermta
pmtad --debug
要自定义您的 PowerMTA 安装,请编辑配置文件
vi /etc/pmta/config
修改配置文件后,需要重启PowerMTA
service pmta restart
或者重新加载,哪个更快
service pmta reload
====================================================
2、在 PowerMTA 中创建 SMTP 用户
安装 PowerMTA 后,您需要创建 SMTP 用户。要创建 SMTP 用户,请编辑文件
vi /etc/pmta/config
寻找
## password "changeme" #
在下面添加
password "SMTP_PASSWORD_HERE" source {smtpuser-auth}smtp-service yes always-allow-relaying yes require-auth true process-x-virtual-mta yes default-virtual-mta vmta-1 remove-received-headers true #add-received-headers false hide-message-source true#smtp-source-host 79.137.44.176 smtp1.serverok.in #domain-key default,smtp1.serverok.in,/etc/pmta/default.smtp1.serverok.in.pem max-msg-rate 100/h
在上面的代码中,将 SMTP_USERNAME_HERE 和 SMTP_PASSWORD_HERE 替换为您需要的 SMTP 用户名和密码。
在 vmta-1 中,被注释掉的域密钥行用于启用外发电子邮件的 DKIM 签名。
重启PowerMTA
systemctl restart pmta
====================================================
3、在 PowerMTA 中更改 SMTP 端口
要在 PowerMTA 中更改 SMTP 端口,请编辑文件
vi /etc/pmta/config
查找以以下开头的行
smtp-listener
此行指定 PowerMTA 服务器使用的端口。您可以更改此线路上的电源。如果您需要 PowerMTA 侦听多个端口,复制线路并更改端口,这将使 PowerMTA 使用两个端口工作。
smtp-listener 0/0:2525 smtp-listener 0/0:25
这将使 PowerMTA 在端口 25 和端口 2525 上工作
编辑 /etc/pmta/config 后,您需要重新启动 PowerMTA
systemctl restart pmta
====================================================
4、如何在 PowerMTA 中配置主机名
默认情况下,PowerMTA 使用服务器的主机名。您可以为每个虚拟 MTA 指定一个自定义主机名。
要为 VitualMTA 设置主机名,请按如下方式添加主机名条目。
host-name smtp1.serverok.in #domain-key default,smtp1.serverok.in,/etc/pmta/default.smtp1.serverok.in.pemmax-msg-rate 100/h
====================================================
5、在 PowerMTA 中创建 DKIM
要生成 DKIM,请转到
https://www.sparkpost.com/resources/tools/dkim-wizard/
在第一个文本框中,输入您将从中发送电子邮件的域名。例如,如果我需要从admin@serverok.in发送电子邮件,我需要在此文本框中输入 serverok.in。
在域密钥选择器文本框中,输入您的 DKIM 密钥的名称。这可以是任何名称,不允许有空格。在下面的截图中,我使用“default”作为键名。
以位为单位的密钥大小 = 2048
单击“Create Key”。
将生成的“Private Key”保存在文件中
/etc/pmta/KEY_NAME_HERE.DOMAIN_NAME_HERE.pem
在上面的示例中,文件名为 default.serverok.in.pem
接下来您需要为您的域名编辑 DNS 记录。使用以下名称创建 TXT 记录
KEY_NAME_HERE._domainkey.DOMAIN_NAME_HERE
在上面的例子中,名称是 default._domainkey.serverok.in
DKIM 向导将为这个 TXT 条目赋值,使用它。对于某些 DNS 提供商,您不需要对文本值使用双引号。如果您的提供商显示双引号,则您不需要它。对于 v=DKIM1\; k=rsa\; \ 不需要,删除它。
启用 DKIM 签名
要启用 DKIM 签名,请编辑
vi /etc/pmta/config
添加
domain-key default,serverok.in,/etc/pmta/default.serverok.in.pem
这可以在您的虚拟 mta 设置中,例如
#domain-key default,*,/etc/pmta/default.serverok.in.pem domain-key default,serverok.in,/etc/pmta/default.serverok.in.pemmax-msg-rate 100/h
====================================================
6、PowerMTA 允许 IP 发送电子邮件
要允许 Web 服务器通过 PowerMTA 发送电子邮件而无需身份验证,您需要编辑 PowerMTA 配置文件
vi /etc/pmta/config
为允许中继邮件所需的 IP 地址添加源条目
always-allow-relaying yes smtp-service yes
将 IP_ADDRESS 替换为您需要允许发送电子邮件而无需验证的 Web 服务器的 IP 地址。
重新启动 PowerMTA
systemctl restart pmta
如果没有源条目,如果您尝试发送电子邮件,您将被拒绝并显示错误“550 5.7.1 relaying denied for recipient”。
使用swaks的示例
root@lab:~# swaks --to admin@serverok.in --server smtp1.serverok.in --port 2525 === Trying smtp1.serverok.in:2525... === Connected to smtp1.serverok.in. <- 220 smtp1.serverok.in ESMTP service ready -> EHLO lab.serverok.in <- 250-smtp1.serverok.in says hello <- 250-ENHANCEDSTATUSCODES <- 250-PIPELINING <- 250-CHUNKING <- 250-8BITMIME <- 250-AUTH CRAM-MD5 <- 250-AUTH=CRAM-MD5 <- 250-XACK <- 250-SIZE 0 <- 250-VERP <- 250-SMTPUTF8MAIL FROM:<- 250 2.1.0 MAIL ok -> RCPT TO: <** 550 5.7.1 relaying denied for recipient in "RCPT TO: " -> QUIT <- 221 2.0.0 smtp1.serverok.in says goodbye === Connection closed with remote host. root@lab:~#
====================================================
7、在 PowerMTA 中启用 Web 监视器 UI
PowerMTA 附带一个 Web Monitor UI,它将向您显示有关邮件服务器的一些统计信息,还可以运行一些命令,编辑 PowerMTA 配置文件。
要启用 Web Monitor UI,您需要在 PowerMTA 配置中将您的 IP 地址列入白名单,为此您需要一个固定的 IP 地址。
vi /etc/pmta/config
寻找
http-access 127.0.0.1 monitor http-access ::1 monitor
在下面添加
http-access 51.38.246.115 admin
在上一行中将 51.38.246.115 替换为您的 IP 地址并重新启动 PowerMTA。
systemctl restart pmta
现在您将能够访问 PowerMTA Web Monitor UI,网址为
https://YOUR_MAIL_SERVER_IP:8080/
Web 监视器日志文件
tail -f /var/log/pmta/pmtahttp.log
====================================================
8、PowerMTA 通过域的另一个 SMTP 服务器路由邮件
如果你想通过另一个 SMTP 服务器从 PowerMTA 路由 emils,你可以使用以下配置。
在此示例中,所有发送到 @outlook.com 域的外发电子邮件都将通过 Amazon SES 进行路由。
编辑 PowerMTA 配置文件
vi /etc/pmta/config
添加以下内容
queue-to amazon-ses.route auth-username USER_NAME_HERE auth-password PASSWORD_HERE route email-smtp.us-west-2.amazonaws.com:587 use-starttls yes require-starttls yes
重新启动 PowerMTA
systemctl restart pmta
====================================================
9、PowerMTA IP 轮换
要在 PowerMTA 中设置 IP 轮换,请在服务器上配置多个 IP。为这些 IP 中的每一个设置 rDNS,将子域指向与反向 DNS 条目相同的这些 IP。
这是一个例子
首先我们需要编辑 DNS 记录。添加以下 A 记录。
pmta1.sevrerok.in A 176.123.8.12 pmta2.sevrerok.in A 176.123.8.13 pmta3.sevrerok.in A 176.123.8.17
与您的服务器提供商一起设置 rDNS(反向 DNS/PTR 记录)。
176.123.8.12 > pmta1.sevrerok.in 176.123.8.13 > pmta2.sevrerok.in 176.123.8.17 > pmta3.sevrerok.in
编辑 PowerMTA 配置文件
vi /etc/pmta/config
找到您的虚拟 mta 配置,将其替换为
smtp-source-host 176.123.8.12 pmta1.sevrerok.in domain-key default,*,/etc/pmta/default.sevrerok.in.pemmax-msg-rate 400/hsmtp-source-host 176.123.8.13 pmta2.sevrerok.in domain-key default,*,/etc/pmta/default.sevrerok.in.pem max-msg-rate 400/hsmtp-source-host 176.123.8.17 pmta3.sevrerok.in domain-key default,*,/etc/pmta/default.sevrerok.in.pem max-msg-rate 400/hvirtual-mta pmta1 virtual-mta pmta2 virtual-mta pmta3
====================================================
10、使用 telnet 的 PowerMTA 测试
要使用 telnet 测试 PowerMTA,请运行
telnet localhost 25
现在粘贴以下内容
ehlo localhost mail from: admin@smtp1.serverok.in rcpt to: you@your-domain.com data Subject: Testing This is text email. . quit
查看日志
tail -f /var/log/pmta/pmta.log
要查看 PowerMTA 队列,请运行
pmta show queues
下载地址:https://www.dobunkan.com/server/yuanma/26649
评论0