linux下使用自带mailx发送邮件

linux 发邮件最简单的办法linux

最近想经过linux监控系统情况并自动报警,通常Linux发送报警邮件经过本地邮箱或外部邮箱服务器,这里用最简单的方法实现linux 使用外部邮箱便可实现发送邮件功能,你只需简单注册个国内的邮件服务商邮箱,如163,也可使用公司邮箱,须要安装mailx工具,mailx是一个小型的邮件发送程序。vim

具体步骤以下:服务器

一、安装工具

[root@001 ~]# yum install mailx测试

二、编辑配置文件spa

[root@001 ~]# vim /etc/mail.rc #添加以下内容.net

set from=xxxx@126.comcode

set smtp=smtp.126.comget

set smtp-auth-user=xx@126.com域名

set smtp-auth-password=xxx

set smtp-auth=login

---说明

from:对方收到邮件时显示的发件人

smtp:指定第三方发邮件的smtp服务器地址,域名若是无法解释可添加入/etc/hosts,通常smtp使用25端口

set smtp-auth-user:第三方发邮件的用户名

set smtp-auth-password:用户名对应的密码,有些邮箱填的是受权码

smtp-auth:SMTP的认证方式,默认是login,也能够改为CRAM-MD5或PLAIN方式

三、测试

[root@text ~]# mail -s "邮件名" xxxxxxx@qq.com < /etc/passwd    #文本文件内容发送邮件

[root@text ~]# echo "测试邮件" | mail -s "测试" xxxxxxx@qq.com

[root@text ~]# cat /etc/passwd | mail -s "测试" xxxxxxx@qq.com

 

4.经常使用命令

把打印的内容做为标准输入,送给mail命令
[root@toughhou www]# echo "Hello, Tough" | mail -s "Tough's Greeting" toughhou@126.com

-s表示主题,"< mail.txt"表示把mail.txt里的内容做为邮件正文
[root@toughhou www]# mail -s "Tough's Greeting" toughhou@126.com < mail.txt 

也能够用cat mail.txt的输出做为mail命令的标准输入,做为邮件正文
[root@toughhou www]#cat mail.txt | mail -s "Tough's Greeting" toughhou@126.com

-c表示抄送的地址(houxiaolongr@126.com,houxiaolongr@163.com),toughhou@126.com是直接发送的地址
[root@toughhou www]# mail -s "Tough's Greeting" -c "houxiaolongr@126.com,houxiaolongr@163.com" "toughhou@126.com" < mail.txt 

测试发现,用uuencode发地附件,在邮箱里是不能正常显示的,是一些“乱码”,须要额外的解码命令,总之不太好用
[root@toughhou www]# uuencode /home/tough/pic/a.png "Tough's Photo" | mail -s "Pic Test" toughhou@126.com

在网上看到的伪造发件人地址方法(-- -f后跟发发件人地址,-F发件人名称),测试以后效果也不太理想 [root@toughhou www]# mail -s Tough toughhou@126.com < mail.txt -- -f toughhou@qq.com -F TOUGH

相关文章
相关标签/搜索