CentOS 安装 mailx 用命令以 SMTP 方式发送邮件可用 SSL
创始人
2024-05-31 14:16:26
0

安装

yum -y install mailx

普通连接发送

如果使用普通的 25 端口发送,那么编辑 /etc/mail.rc,在配置文件末尾添加以下设置

#无加密连接设置
#From
set from=yourname@host.com
#设置SMTP服务器
set smtp=smtp.host.com
#设置SMTP服务器登录名
set smtp-auth-user=yourname@host.com
#设置SMTP服务器登录密码
set smtp-auth-password=yourPassword
#设置SMTP验证方式
set smtp-auth=login

SSL 加密连接发送

现在各大免费邮箱基本上不再使用 25 端口了,而是提供 SSL 方式来连接,使用的是 465 端口。因此,在配置文件中应该使用如下设置

#无加密连接设置
#From
set from=yourname@host.com
#设置SMTP服务器SSL连接
set smtp=smtps://smtp.host.com:465
#设置SMTP服务器登录名
set smtp-auth-user=yourname@host.com
#设置SMTP服务器登录密码
set smtp-auth-password=yourPassword
#设置SMTP验证方式
set smtp-auth=login
#设置秘钥目录,以下目录为自建目录
set nss-config-dir=/root/.certs/
#验证
set ssl-verify=ignore

SSL 连接需要使用秘钥,秘钥可以从 Firefox 的配置文件中找到,那是三个.db 后缀的文件( cert8.db,key3.db,secmod.db ),在 windows 系统中可以在 C:\Users\ 用户名 \AppData\Roaming\Mozilla\Firefox\Profiles\xxxxx.default 文件夹中找到,在 Linux 系统中可以在~/.mozilla/firefox/xxxx.default 目录下找到。

QQ邮箱证书获取方式

使用Q 邮箱的 SSL 证书,需要手动的获取QQ 邮箱的证书保存到本地指定的目录里以备调用和验证,具体命令如下:

mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.certs

为了防止出现发送邮件警告提示,还需要进入邮箱 SSL 证书存放目录
cd /root/.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.

这是为了信任证书的标记操作。

163邮箱证书获取方式

使用163邮箱的 SSL 证书,需要手动的获取163邮箱的证书保存到本地指定的目录里以备调用和验证,具体命令如下:

mkdir -p /root/.certs/echo -n | openssl s_client -connect smtp.163.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/163.crtcertutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/163.crtcertutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/163.crtcertutil -L -d /root/.certs

为了防止出现前文所说的发送邮件警告提示,还需要进入邮箱 SSL 证书存放目录 /root/.certs 里执行如下命令:

cd /root/.certs/certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 163.crt

返回如下提示即可:

Notice: Trust flag u is set automatically if the private key is present.

发送命令测试

命令行方式

mailx -s “标题名” 目标邮箱地址 ,按回车后输入邮件内容,按 Ctrl+D 完成输入,完成发送。

管道方式

echo "邮件内容" | mailx -s "标题名" 目标邮箱地址

文件重定向

mailx -s "标题名称" 目标邮箱地址 < 文本文件名

如果加上 - v 参数,会列出邮件连接服务器以及发送邮件的具体过程
带附件发送 -a 参数

echo "邮件内容" | mailx -s "标题名称" -a 附件文件名称 目标邮箱地址

示例

echo "测试mailx命令行发送邮件" | mailx -v -s "这是一封测试邮件" -a test.zip xxxxxx@163.com

相关内容

热门资讯

古人尊重差异的故事? 古人尊重差异的故事?历史上,因为尊重彼此文化差异而留下千古佳话的例子 并不鲜见。忘不了汉代的张骞通西...
作文 《一只流浪狗的自述》 作文 《一只流浪狗的自述》1.我是一直流浪狗。我以前的主人抛弃我了,我只好在这流浪。 一天早...
小王读一本168页的故事书,前... 小王读一本168页的故事书,前4天读了96页,照这样计算,看完这本书需要多少天?168/(96/4)...
美两名前总统罕见发声 批评特朗... 转自:财联社【美两名前总统罕见发声 批评特朗普政府解散国际开发署】财联社7月1日电,据央视新闻报道,...
中国核工业建设股份有限公司20... 证券代码:601611 证券简称:中国核建 公告编号:2025-042中国核工业建设股份有限公司2...
长沙市一中(湘江科学城校区)完...     长沙市一中(湘江科学城校区)项目航拍图。    通讯员 供图  三湘都市报6月30日讯  6...
北京推进17座重点桥系桥下空间... 转自:千龙网原标题:北京推进17座重点桥系桥下空间提升,计划年底前全面完工 燕莎桥、北苑高架桥等桥下...
芦衣顺母是什么意思 芦衣顺母是什么意思  1、《芦衣顺母》是《论语·先进》中的典故,二十四孝故事之一。主要内容是讲闵损(...
古代“录取通知书”长什么样? □吴德玉荀超张峥清光绪二十年金榜局部图。现藏中国第一历史档案馆《骆成骧殿试策》残本(之一)。  重庆...
国泰聚鑫量化选股混合型发起式证... 重要提示1、国泰聚鑫量化选股混合型发起式证券投资基金(以下简称“本基金”)已获中国证监会证监许可【2...