美文网首页Linux
阿里云ECS屏蔽端口25的解决办法!

阿里云ECS屏蔽端口25的解决办法!

作者: 阿伟派 | 来源:发表于2017-09-05 12:36 被阅读1880次

    阿里云ECS已经屏蔽了邮件端口25,而且即便通过安全管控申请解封端口25了,也只能使用SMTP发邮件。所以我需要让我的Postfix绕过端口25

    关于Postfix的真正管用的实例还是非常少的,本人也差不多折腾了一个星期才搞定。而且也只是实现了基于外部SMTP服务器发送邮件的配置方法。

    本文实例是我在Ubuntu 16.04中实操记录,主要解决WordPres的首次注册接收邮件和重设密码邮件的问题。整个是通关了的,没有Bug了。

    第一步、安装Postfix
    sudo apt install postfix
    

    在安装过程中会弹出简单配置的窗口,选择Internet Site,然后其他的配置直接无视,直接默认回车,直到安装结束。

    第二步、配置main.cf

    将里面的relayhost设置为

    relayhost = [smtpdm.aliyun.com]:80
    

    默认情况下这个参数是没有赋值的,至于我为什么要设置这个值,建议看看文章末尾给的链接,我开通了阿里云的DirectMail,“邮件推送”功能,每天有200条免费邮件的名额,对于大多数小站长而言绰绰有余。

    接着将以下参数的设置放进main.cf

    smtp_sasl_auth_enable = yes
    smtp_sasl_security_options = noanonymous
    smtp_use_tls = yes
    smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt
    smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
    smtp_generic_maps = hash:/etc/postfix/generic
    
    第三步、配置generic

    /etc/postfix/generic这个文件默认不存在的,直接创建,然后将以下代码放进文件里去。

    www-data service@idojia.com
    www-data@bYqaQ1K9TRQCksi0 service@idojia.com
    service@code.idojia.com service@idojia.com
    

    bYqaQ1K9TRQCksi0是服务器的主机名。执行以下命令就可以知道主机名了

    hostname
    

    本来发件人地址是wordpress@bYqaQ1K9TRQCksi0,有了第一行的代码后,以后注册用户收到的邮件显示的发件人就改写成了service@idojia.com

    温馨提醒:如果要详细配置generic,一定要重点看/var/log/mail.log和/var/log/mail.err,比如我的有如下代码

    postfix/pickup[2012]: 4D0B122086A: uid=1000 from=<www-data>
    
    postfix/qmgr[2531]: DD6A322086A: from=<www-data@bYqaQ1K9TRQCksi0>
    
    第四步、配置sasl_passwd

    /etc/postfix/sasl_passwd这个文件默认也不存在的,直接创建,然后将以下代码放进文件里去。

    [smtpdm.aliyun.com]:80 service@idojia.com:BhROhrB97b
    
    第五步、生成数据库文件
    sudo postmap /etc/postfix/sasl_passwd
    
    sudo postmap /etc/postfix/generic
    
    第六步、重启Postfix
    sudo service postfix restart
    

    到此为止,接收邮件的问题就正常了。

    现在附上阿里云的“邮件推送管理平台”的链接:https://dm.console.aliyun.com/

    其实文章中涉及的以下几个值,也可以换成其他的SMTP服务器的

    [smtpdm.aliyun.com]:80 //比如换成QQ企业邮箱的[smtp.exmail.qq.com]:465
    service@idojia.com //比如换成你的QQ企业邮箱
    BhROhrB97b //改成你的QQ企业邮箱的密码

    如果端口是465,就是加密发送,Postfix的配置文件main.cf中还要添加如下代码

    smtp_tls_wrappermode = yes
    smtp_tls_security_level = encrypt
    

    相关文章

      网友评论

        本文标题:阿里云ECS屏蔽端口25的解决办法!

        本文链接:https://www.haomeiwen.com/subject/voeujxtx.html