1. 程式人生 > >Zabbix用Email介質SMTP發送報警

Zabbix用Email介質SMTP發送報警

zabbix郵件報警 sendmail

Zabbix報警大部分使用的是腳本報警,這次我們用SMTP方式發送報警。

在zabbix上設置好了EMail賬號還不行,還要在系統裏裝發送郵件的服務,我們這裏用SendMail.

環境:

CentOS Linux release 7.1.1503 (Core)


1.檢查系統是否安裝SendMail。

#rpm -qa | grep Sendmail

返回值為空,說明沒有安裝過。


2.用yum list sedmail看看都需要安裝哪些包

#yum list sedmail

3.安裝Sendmail及相關軟件。

# yum install sendmail dovecot sendmail-cf sendmail-devel sendmail-doc mailx

4.修改Sendmail配置文件說明。

[[email protected] ~]# cat /etc/mail/sendmail.mc 
....... 
include(`/usr/share/sendmail-cf/m4/cf.m4‘)dnl   (將sendmail-cf/m4/cf.m4包含進來) 
VERSIONID(`setup for Red Hat Linux‘)dnl (定義版本信息) 
OSTYPE(`linux‘)dnl (選擇包含操作系統指定屬性的文件) 
........ 
define(`confDEF_USER_ID‘,``8:12‘‘)dnl (指定使用的用戶ID為8,組ID為12) 
dnl define(`confAUTO_REBUILD‘)dnl 
define(`confTO_CONNECT‘, `1m‘)dnl   (設置等待連接的最大時間為1分鐘) 
define(`confTRY_NULL_MX_LIST‘,true)dnl (若MX記錄指向本機,則sendmail直接連接到遠程主機) 
define(`confDONT_PROBE_INTERFACES‘,true)dnl (sendmial不會自動將服務器的網絡接口視為有效地址) 
define(`PROCMAIL_MAILER_PATH‘,`/usr/bin/procmail‘)dnl(設置procmail的存放路徑) 
define(`ALIAS_FILE‘, `/etc/aliases‘)dnl (設置郵件別名存放路徑) 
define(`STATUS_FILE‘, `/var/log/mail/statistics‘)dnl 
define(`UUCP_MAILER_MAX‘, `2000000‘)dnl (設置處理信息的最大限制為2M) 
define(`confUSERDB_SPEC‘, `/etc/mail/userdb.db‘)dnl (設置用戶數據庫文件路徑) 
define(`confPRIVACY_FLAGS‘, `authwarnings,novrfy,noexpn,restrictqrun‘)dnl (設置限制某些郵件命令的標誌) 
define(`confAUTH_OPTIONS‘, `A‘)dnl 僅在授權成功時。將AUTH參數加到郵件的消息頭中 
....... 
FEATURE(`no_default_msa‘,`dnl‘)dnl (允許MSA被DAMEMON_OPTION覆蓋的默認設置) 
FEATURE(`smrsh‘,`/usr/sbin/smrsh‘)dnl (設置郵件發送器smrsh的存放路徑) 
FEATURE(`mailertable‘,`hash -o /etc/mail/mailertable.db‘)dnl (設置郵件發送器數據庫的存放路徑) 
FEATURE(`virtusertable‘,`hash -o /etc/mail/virtusertable.db‘)dnl (設置虛擬郵件域數據庫的存放路徑) 
FEATURE(redirect)dnl (支持.redirect虛擬域) 
FEATURE(always_add_domain)dnl (增加主機名到所有本地發送的郵件) 
FEATURE(use_cw_file)dnl (裝載/etc/mail/local-host-names文件中定義的主機名) 
FEATURE(use_ct_file)dnl  (裝載可信任用戶名單) 
........ 
FEATURE(local_procmail,`‘,`procmail -t -Y -a $h -d $u‘)dnl (使用procmail作為本地郵件發送者) 
FEATURE(`access_db‘,`hash -T -o /etc/mail/access.db‘)dnl (從/etc/mail/access.db裝載可以中繼的域) 
FEATURE(`blacklist_recipients‘)dnl (根據訪問數據庫的值過濾外來郵件) 
EXPOSED_USER(`root‘)dnl (禁止偽裝發送者地址中出現root用戶) 
........ 
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA‘)dnl (指定sendmail作為MTA運行時的參數) 
........ 
FEATURE(`accept_unresolvable_domains‘)dnl 設置可以接受不能由NDS主機所發送的郵件 
........ 
LOCAL_DOMAIN(`localhost.localdomain‘)dnl 設置本地域 
........ 
MAILER(smtp)dnl (指定sendmail所有SMTP發送者,包括smtp,esmtp,smtp8,和replay) 
MAILER(procmail)dnl (指定使用procmail作為本地郵件的發送者)


5.sendmail.cf不容易看懂的,所以要用m4(宏配置)生成配置文件/etc/mail/sendmail.cf

# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf



參考鏈接:

http://www.ttlsa.com/zabbix/zabbix-action-media/

http://blog.sina.com.cn/s/blog_89b8586f0101a9xn.html

本文出自 “悟透的雜貨鋪” 博客,請務必保留此出處http://wutou.blog.51cto.com/615096/1939118

Zabbix用Email介質SMTP發送報警