# 源碼安裝mailx
tar jxvf mailx-12.3.tar.bz2
make && make install UCBINSTALL=/usr/bin/install
#yum安裝
yum -y install mailx #一般鏡像文件都會有mailx
配置mailx #登陸163申請帳號和設置授權碼(很簡單的)
[root@zbx zabbix]# vim /etc/mail.rc
set smtp=smtp.163.com #中轉站(由於qq需要做ssl認證,不推薦)
set from=郵箱賬戶@163.com #偽裝發送人
set smtp-auth-user=郵箱賬戶@163.com #發送人
set smtp-auth-password=郵箱賬戶的授權碼 #發送箱密碼
set smtp-auth=login #認證方式(登陸)
# 發送測試郵件
[root@zbx zabbix]# echo "Hello" | mail -v -s "test" x.x.x.x@qq.com
Resolving host smtp.guohualife.com . . . done.
Connecting to x.x.x.x:smtp . . . connected.
220 smtp.aliyun-inc.com MX AliMail Server(x.x.x.x)
>>> EHLO zabbix_master
250-smtp.aliyun-inc.com
250-STARTTLS
250-8BITMIME
250-AUTH=PLAIN LOGIN XALIOAUTH
250-AUTH PLAIN LOGIN XALIOAUTH
250-PIPELINING
250 DSN
>>> AUTH LOGIN
334 dXNlcm5hbWU6
>>> emFiYml4QGd1b2h1YWxpZmUuY29t
334 UGFzc3dvcmQ6
>>> MTIzYWJjZCE=
235 Authentication successful
>>> MAIL FROM:<zabbix@xxxx.com>
250 Mail Ok
>>> RCPT TO:<x.x.x.x@qq.com>
250 Rcpt Ok
>>> DATA
354 End data with <CR><LF>.<CR><LF>
>>> .
250 Data Ok: queued as freedom
>>> QUIT
221 Bye
vim /usr/lib/zabbix/alertscripts/maillog.sh #編寫郵件發送腳本(這里的3個變量需要在web頁面設置內置的宏值)
注意#如果需要發郵件帶附件在mail加上-a+文件名的參數(文件名最好用txt)
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | /usr/bin/mailx -s "${subject}" -a /etc/zabbix/scripts/deal_time/log/deal.txt $1 >>/usr/lib/zabbix/alertscripts/ybt.log 2>&1
-s 主題
-a (文件名) 發附件(最好用.txt結尾)
-c 抄送人(有多人之間用空格隔開)
****/tmp/sendmail.log該文件zabbix用戶一定要有讀寫權限

#增加可執行權限
chown zabbix.zabbix /usr/lib/zabbix/alertscripts/maillog.sh
chmod a+x /usr/lib/zabbix/alertscripts/maillog.sh
zabbix web設置
根據環境使用的mailx,及在/usr/lib/zabbix/alertscripts/maillog.sh創建了一個腳本,每次觸發都會調用maillog.sh,腳本maillog.sh中有3個變量對應下面的3個zabbix自帶宏值。
媒介這塊應該選用腳本類型
參數填寫zabbix自帶的宏值:
{ALERT.SENDTO}:發送人
{ALERT.SUBJECT}:主題
{ALERT.MESSAGE}:內容

指定新建或默認用戶並對用戶添加腳本及收件人郵箱

