使用465加密端口发送邮件

因云虚拟主机的25端口默认封闭,需要使用SSL加密端口(通常是465端口)来对外进行发送邮件。本文通过提供.NET、PHP和ASP样例来介绍使用SSL加密端口发送邮件的方法,其他语言的实现思路与本文介绍的方法基本相同。

安装mailx

# yum -y install mailx

修改mailx配置文件

# vim /etc/mail.rc

添加以下内容

set from="xxxxxxxxxx@163.com"	# 这里使用163邮箱
set smtp=smtps://smtp.163.com:465	# 使用465加密端口
set smtp-auth-user="xxxxxxxxxx@163.com"	# 用户名
set smtp-auth-password="********"	# SMTP授权码
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs	# 指向证书目录

创建证书目录

# mkdir -p /root/.certs/	# 创建目录

请求证书

echo -n | openssl s_client -connect smtp.163.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/163.crt

添加证书到数据库

# certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt
# certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt
# certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 163.crt

查看证书

# certutil -L -d /root/.certs

测试邮件

# echo "test" | mail -s "test" xxxxxxxx@163.com
# Mail 

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×