首页 > 代码库 > zabbix 实战邮箱告警之msmtp
zabbix 实战邮箱告警之msmtp
Last modified: Nov. 17, 2012 Contents 1 - Summary 2 - Dependencies 3 - Install msmtp 4 - Msmtp configuration 5 - Shell script 6 - Zabbix configuration 1 - Summary This guide will show you how to use msmtp with TLS/SSL capabilities for email notifications in Zabbix Server in FreeBSD. Msmtp is an SMTP client used to send email. Zabbix Server is the server software that installs on a server and receives information from network devices. Zabbix is an open source monitoring solution. This has been tested in FreeBSD 9.0 i386/amd64. 2 - Dependencies Install following packages. # cd ~ # sudo pkg_add -r ca_root_nss Password: # sudo pkg_add -r p5-LWPx-ParanoidAgent Password: # sudo pkg_add -r wget Password: # rehash # wget --no-check-certificate https://github.com/bagder/curl/raw/master/lib/mk-ca-bundle.pl # perl mk-ca-bundle.pl # sudo chown root:wheel ca-bundle.crt Password: # sudo chmod 555 ca-bundle.crt Password: # sudo mv ca-bundle.crt /usr/local/etc/ Password: # rm -f certdata.txt mk-ca-bundle.pl # sudo pkg_add -r libidn Password: # sudo pkg_add -r portupgrade Password: # sudo portsnap fetch extract Password: There is an entry in /usr/ports/UPDATING regarding pkg-config. # vi /usr/ports/UPDATING # sudo portupgrade -fo devel/pkgconf pkg-config-\* Password: 3 - Install msmtp Install the msmtp port. # cd /usr/ports/mail/msmtp/ Select only the following options. [*] OPENSSL Adds support for SSL (Secure Socket Layer) [*] IDN Enable Internationalized Domain Names # sudo make config Password: # sudo make Password: # sudo make install Password: # sudo make clean Password: 4 - Msmtp configuration Create your own configuration file. Here is an example that uses a Gmail account which utilizes TLS. account default host smtp.googlemail.com port 587 from testuser@gmail.com tls on tls_starttls on tls_trust_file /usr/local/etc/ca-bundle.crt auth on user testuser@gmail.com password ********** syslog LOG_MAIL # pkg_info -L zabbix2-server-* | grep rc.d /usr/local/etc/rc.d/zabbix_server # grep required_files /usr/local/etc/rc.d/zabbix_server required_files="/usr/local/etc/zabbix2/${name}.conf" # sudo vi /usr/local/etc/zabbix2/msmtprc Password: # id zabbix uid=122(zabbix) gid=122(zabbix) groups=122(zabbix) # sudo chown zabbix:zabbix /usr/local/etc/zabbix2/msmtprc Password: # sudo chmod 600 /usr/local/etc/zabbix2/msmtprc Password: 5 - Shell script Modify the Zabbix server configuration to have include the alert script path. AlertScriptsPath=/usr/local/etc/zabbix2/zabbix/alertscripts # sudo vi /usr/local/etc/zabbix2/zabbix_server.conf Password: # sudo /usr/local/etc/rc.d/zabbix_server restart Password: # sudo /usr/local/etc/rc.d/zabbix_server status Password: zabbix_server is running as pid 28283 28284 28285 28286 28287 28288 28289 28290 28291 28292 28293 28294 28295 28296 28297 28298 28299 28300 28301 28302 28303 28304 28305 28306 28307 28308 28309. Here is shell script that can be used in Zabbix to send email notifications. #!/bin/sh printf=/usr/bin/printf from="testuser@gmail.com" recipient="$1" subject="$2" body="$3" msmtp=/usr/local/bin/msmtp msmtp_config=/usr/local/etc/zabbix2/msmtprc $printf "From: $from\nTo: $recipient\nSubject: $subject\n\n$body" | $msmtp --file=$msmtp_config -t exit 0 # sudo vi /usr/local/etc/zabbix2/zabbix/alertscripts/zabbix_notifications.sh Password: # sudo chown root:wheel /usr/local/etc/zabbix2/zabbix/alertscripts/zabbix_notifications.sh Password: # sudo chmod 555 /usr/local/etc/zabbix2/zabbix/alertscripts/zabbix_notifications.sh Password: 6 - Zabbix configuration Log into the Zabbix website as a user with Administrator privileges. Hover over Administration and click on Media types. Click on Create media type on the right-hand side of the screen. Type in the following and click on Save. Hover over Administration and click on Users. Select Users from the drop-down menu on the right-hand side of the screen. Select the user. Click on the Media tab and click on Add. Type in the following. Hover over Configuration and click on Actions. Select one of the Actions listed and go to the Operations tab and click on Edit. In the drop-down box next to Send only to, select Script. Make sure to save the Action.
本文出自 “hanyun.fang” 博客,请务必保留此出处http://hanyun.blog.51cto.com/1060170/1596271
zabbix 实战邮箱告警之msmtp
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。