阿里云通过465端口发送邮件绕过25端口
2019-08-01 01:06
3415 查看
使用阿里云ECS的站长们应该都知道阿里云ECS为了防止其服务器被当做垃圾邮件发送服务器禁止了邮件端口25的使用,这就造成系统级的提醒邮件无法发送,类似Fail2ban、DDoS Deflate的重要暴力破解、DDOS攻击提醒邮件有时候还是很重要的,错过了会给我们的服务器运维工作带来被动的,所以明月一直在谋求Linux系统邮件发送的问题解决。
安装和配置系统的mailx:
yum -y install mailx
安装完成后,编辑/etc/mail.rc文件配置mailx使用QQ邮箱作为发送邮件邮箱,在配置文件最后添加如下QQ邮箱配置即可:
set from=xxxxxx@qq.com set smtp=smtps://smtp.qq.com:465 set smtp-auth-user=xxxxxx@qq.com set smtp-auth-password=你的QQ邮箱授权码 set smtp-auth=login set ssl-verify=ignore set nss-config-dir=/opt/.certs
配置smstps
因为阿里云ECS封禁了25端口,所以我们只能使用TLS方式(TSL也就是使用SSL加密的方式,使用465或者其他端口来发送邮件)绕过25端口需求来发送邮件,所以必须先获得邮箱的SSL证书并存放到本地,最后一行的nss-config-dir就是制定的存放QQ邮箱SSL证书的位置。
mkdir -p /opt/.certs/ echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /opt/.certs/qq.crt certutil -A -n "GeoTrust SSL CA" -t "C,," -d /opt/.certs -i /opt/.certs/qq.crt certutil -A -n "GeoTrust Global CA" -t "C,," -d /opt/.certs -i /opt/.certs/qq.crt certutil -L -d /opt/.certs chmod -R 777 /opt/.certs #让所有用户都可以发邮件
为了防止出现前文所说的发送邮件警告提示,还需要进入邮箱SSL证书存放目录/opt/.certs里执行如下命令:
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
返回如下提示即可:
**Notice: Trust flag u is set automatically if the private key is present.**
至此,已经完成了mailx结合QQ邮箱发送系统邮件的部署了,通过命令行发送测试邮件试试吧:
mailx -s "邮箱测试" xxxx@qq.com < message_file.txt
相关文章推荐
- 阿里云服务器发送邮件失败,25端口被禁用,采用ssl 方式 465端口发送
- 阿里云服务器25端口不可用,换465端口发送邮件
- 阿里云服务器 通过JavaMail发送邮箱STMP问题 25端口被禁用 使用SSL协议465端口
- Java使用465端口发送邮件(绕过25端口限制)
- 关于阿里云屏蔽25端口,无法发送邮件的解决方案
- 阿里云服务器封25端口导致邮件无法发送
- 阿里云服务器禁掉25端口 Javamail无法发送邮件
- 通过465端口发送邮件
- 阿里云服务器spring boot 发送QQ邮件25端口被封怎么办
- 阿里云服务器 发送邮箱 STMP 25端口 465端口问题 Javamail 25被禁用
- Java 使用465端口发送邮件
- Spring Boot 使用465端口发送邮件
- 关于zabbix发送报警邮件25端口不通问题的解决方案
- .NET 针对465加密端口 加密协议SSL(Implicit SSL)进行的邮件发送
- 阿里云25号端口禁用无法发送邮件解决办法
- 邮件服务端口 port 25、109、110、143、465、995、993
- 腾讯企业邮箱阿里云端口25发送失败
- ECS阿里云服务器默认禁了smtp 端口25 无法发送邮件
- 邮件端口 port 25、109、110、143、465、995、993
- 发送端口25,465,587端口疑问解答