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

相關文章
相關標籤/搜索