centos下利用mail命令进行邮件发送
centos下默认自带mail命令:
可以用如下命令查看存放位置:
which mail
结果如下:

如果没有安装可以使用 如下命令安装
yum -y install mailx
利用mail命令进行邮件发送,需要利用到第三方邮件服务器,如163等,需要一个授权码来识别(注意不是邮箱密码),获取授权码过程如下:

需要手机号验证开启,具体过程可以百度 163邮箱授权
参考: https://jingyan.baidu.com/article/aa6a2c149f7b250d4c19c4b3.html
授权码获取到后,按如下步骤配置
1、修改/etc/mail.rc
vim /etc/mail.rc
2、在最后添加如下配置:
# mail config
set from=***********@.com
set smtp=smtps://smtp.163.com:465
set smtp-auth-user=********@.com
set smtp-auth-password=*********
set smtp-auth=login
set nss-config-dir=/root/.certs
set ssl-verify=ignore
---说明
from:对方收到邮件时显示的发件人
smtp:指定第三方发邮件的smtp服务器地址
set smtp-auth-user:第三方发邮件的用户名
set smtp-auth-password:邮箱授权码
smtp-auth:SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式
nss-config-dir: SSL验证信息存放位置,需要后面步骤创建
ssl-verify: SSL验证信息忽略
3、创建 /root/.certs 目录
mkdir -p /root/.certs
4、下载证书到 /root/.certs 目录,本例是下载163证书
a、向163请求证书
echo -n | openssl s_client -connect smtp..com: | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/.crt
b、添加一个证书到本地:
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/.crt
c、再次添加一个证书到本地:
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/.crt
d、标记证书被信任
cd /root/.certs/
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i .crt
5、测试邮件发送,有两种方式,可以用mail命令也可以用mailx命令,如下:
a、使用mail命令 ,加上 -v 会显示发送过程,多个接收人直接在后面空格加上其他人邮箱地址:
echo "hallo" | mail -v -s "this is Test Mail" xxxxxx@qq.com bbbbbb@qq.com
b、使用mailx命令:
mailx -s "hello" xxxxxx@qq.com
回车后手动输入邮件正文,如下:

然后按ctrl+d结束输入,自动发送
参考:
https://blog.xunxe.com/1579.html
http://blog.51cto.com/12832314/2125950
centos下利用mail命令进行邮件发送的更多相关文章
- Linux下使用mail命令发送邮件
因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送.mail命令的语法如下: Usage: mail ...
- Ubuntu下使用mail命令发送邮件
Ubuntu下使用mail命令发送邮件 mail命令在Ubuntu下是需要安装的,使用下条命令进行安装: sudo apt-get install heirloom-mailx 接下来输入用户密码,等 ...
- 用系统默认mail服务实现邮件发送
用系统默认mail服务实现邮件发送 1.操作步骤 第一步:设备服务器发送邮件要用的,邮箱地址,账号密码 编辑/etc/mail.rc vim /etc/mail.rc 在文件的结尾追加,账号信息配置 ...
- CentOS下利用Docker部署Surging
原文:CentOS下利用Docker部署Surging 1. 安装Centos, 配置固定ip配置文件地址vi /etc/sysconfig/network-scripts/ifcfg-ens33`` ...
- Linux系统下利用wget命令把整站下载做镜像网站
Linux系统下利用wget命令把整站下载做镜像网站 2011-05-28 18:13:01 | 1次阅读 | 评论:0 条 | itokit 在linux下完整的用wget命令整站采集网站做镜像 ...
- Linux下利用script命令录制并回放终端会话
Linux下利用script命令录制并回放终端会话 核心命令 script 和 scriptreplay 录制屏幕 script -t 2>timescript typescript 命令解释: ...
- (转载)Mac系统下利用ADB命令连接android手机并进行文件操作
Mac系统下利用ADB命令连接android手机并进行文件操作 标签: Mac adb android 2016-03-14 10:09 5470人阅读 评论(1) 收藏 举报 分类: Androi ...
- CentOS下mysql常用命令
CentOS下mysql常用命令 1.开启和关闭 1.1.开启 service mysql start 1.2.关闭 service mysql stop 1.3.重启 service mysql ...
- SMTP协议--在cmd下利用bat命令行发送邮件
SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议 选择‘开始’-‘运行’,输入cmd,进入命令提示符窗口. Windows7默认没有开始Telnet服务,请在运 ...
随机推荐
- 自己开发Thinkpad电源管理程序
自己开发Thinkpad电源管理程序 - 知乎 https://zhuanlan.zhihu.com/p/20706403
- Linux Shell 文本处理工具集锦--Awk―sed―cut(row-based, column-based),find、grep、xargs、sort、uniq、tr、cut、paste、wc
本文将介绍Linux下使用Shell处理文本时最常用的工具:find.grep.xargs.sort.uniq.tr.cut.paste.wc.sed.awk:提供的例子和参数都是最常用和最为实用的: ...
- [golang]内存不断增长bytes.makeSlice
------------------------------------------ 2015.7月更新 后面发现这里其实有一个sb的问题,在于内存回收和释放. 每个http请求,都会带一个http. ...
- zabbix 添加 微信、邮件 媒介详解
1:zabbix 添加 微信.邮件 媒介. 1.2:发送告警邮件 1:一次完整的监控流程可以简单描述为: Host Groups (设备组) ->Hosts ( ...
- Spring框架第一篇之Spring的第一个程序
一.下载Spring的jar包 通过http://repo.spring.io/release/org/springframework/spring/地址下载最新的Spring的zip包,当然,如果你 ...
- 细说PHP7
PHP7带来的新东西 1.类型的声明. 可以使用字符串(string), 整数 (int), 浮点数 (float), 以及布尔值 (bool),来声明函数的参数类型与函数返回值. declare(s ...
- 【MYSQL】主从常见问题运维
参见Mysql主从常见错误,http://hzcsky.blog.51cto.com/1560073/479476
- 转载 C#开发串口总结,并提炼串口辅助类到公用类库中
C#开发串口总结,并提炼串口辅助类到公用类库中 开发C#相关的项目有很多年了,一直没有接触串口的开发,近期由于工作的需要,需要了解熟悉对硬件串口的开发,通过对串口的深入了解,串口也不再是什么神秘的东西 ...
- mysql update 多表 (复制)
定我们有两张表,一张表为Product表存放产品信息,其中有产品价格列Price:另外一张表是ProductPrice表,我们要将ProductPrice表中的价格字段Price更新为Price表中价 ...
- Git-创建和合并分支
本人拜读了廖雪峰老师关于Git的讲述后整理所得 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你 ...