1.安裝郵件發送工具mailx
由于我們這裡使用的mailx作為郵件發送工具,是以先關閉其他自帶的郵件服務,在zabbix伺服器上執行以下指令:
service sendmail stop #關閉sendmail
systemctl disable sendmail.service #禁止開機啟動sendmail
service postfix stop #關閉postfix
systemctl disable postfix.service #禁止開機啟動postfix
安裝mailx工具 yum -y install mailx
2.配置zabbix伺服器外部郵箱
vim /etc/mail.rc 打開檔案,加入如下内容:
set [email protected] #這裡寫發送郵件的郵箱
set smtp=smtps://smtp.exmail.qq.com:465 #這裡寫發送郵箱中查到的smtp位址,一般在郵箱的設定中可以看到
set [email protected] #這裡也是寫發送郵件的郵箱
set smtp-auth-password=123456 #這裡寫登陸郵箱的密碼
set smtp-auth=login #登陸
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/
set sendcharsets=iso-8859-1,utf-8 #這條一般檔案中自帶了。
echo “zabbix test mail” | mail -s “zabbix123” [email protected] 測試郵件
3.編輯發送郵件腳本
安裝dos2unix轉換工具(解決發出的郵件是附件格式的問題)
yum -y install dos2unix
修改郵件腳本
vim /usr/lib/zabbix/alertscripts/sendmail.sh
#!/bin/bash
#export.UTF-8 #解決發送的中文變成了亂碼的問題
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE #解決了發送的郵件内容變成附件的問題。
mailx -v -s "$2" $1 < $FILE
#$1是收件人郵箱位址,$2是郵件标題,$3是郵件内容
然後授予權限 chmod -R 755 /usr/lib/zabbix/alertscripts
建立臨時檔案并授權:
touch /tmp/mailtmp.txt
chown zabbix.zabbix /tmp/mailtmp.txt
chmod 755 /tmp/mailtmp.txt
4. zabbix建立報警流程
4.1 建立媒介類型
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczX0xiRGZkRGZ0Xy9GbvNGLx8VZ6l2cs0TP35UeVpnT0kleNBDOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL3ATNwQDNwcTM4ETOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
4.2 按照如下填寫
4.3 給使用者添加報警媒介
4.4 建立動作
這個動作界面,一般隻需要設定操作一欄,恢複和更新不需要做操作。
做完之後,我們的郵件報警就完成了。