E-Mail Benachrichtigung via Postfix über SMTP
Transcription
E-Mail Benachrichtigung via Postfix über SMTP
NAGIOS 3 EINRICHTUNG UNTER DEBIAN 5 (LENN Y): E-MAIL BENACHRICHTIGUNG MIT POSTFIX VIA SM TP Nagios Vorbereitungen - Anpassen der „commands.cfg“ vim /etc/nagios3/commands.cfg # 'notify-host-by-email' command definition define command{ command_name notify-host-by-email command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **" $CONTACTEMAIL$ } # 'notify-service-by-email' command definition define command{ command_name notify-service-by-email command_line /usr/bin/printf "%b" "***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ } - Ändern in: # 'notify-host-by-email' command definition define command{ command_name notify-host-by-email command_line /usr/bin/printf "%b" "Subject:** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **\n***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/sbin/sendmail $CONTACTEMAIL$ } # 'notify-service-by-email' command definition define command{ command_name notify-service-by-email command_line /usr/bin/printf "%b" "Subject:** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **\n***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /usr/sbin/sendmail $CONTACTEMAIL$ } NAGIOS 3 EINRICHTUNG UNTER DEBIAN 5 (LENN Y): E-MAIL BENACHRICHTIGUNG MIT POSTFIX VIA SM TP Nagios Vorbereitungen – Kontakt anlegen - Anpassen der „contacts_nagios2.cfg“ vim /etc/nagios3/conf.d/contacts_nagios2.cfg Folgendes hinzufügen (pro Kontakt): define contact{ contact_name alias service_notification_period host_notification_period service_notification_options host_notification_options service_notification_commands host_notification_commands email } name Anzeige Name 24x7 24x7 w,u,c,r d,r notify-service-by-email notify-host-by-email name@domain.com ; Benutzername ; Ziel E-Mail Adresse Am Ende noch folgendes anpassen: define contactgroup{ contactgroup_name alias members } admins Nagios Administrators name, name2, usw. Unter „members“ muss jeder Kontakt eingetragen werden. Dort werden die Kontakte (contact_name) siehe oben, mit Komma getrennt, fortlaufend eingetragen. NAGIOS 3 EINRICHTUNG UNTER DEBIAN 5 (LENN Y): E-MAIL BENACHRICHTIGUNG MIT POSTFIX VIA SM TP Postfix – Installation - - „apt-get install postfix“ Allgemeine Art der Konfiguration: Internet mit Smarthost Während der Installation vorausgefüllte Felder beibehalten und ggf. anpassen. Anpassen der „main.cf“ vim /etc/postfix/main.cf SMTP (Zielserver) unter „relayhost“ eintragen (Bsp.): „relayhost = 192.168.1.1“ Falls ein anderer Port als Port 25 verwendet wird, folgende Schreibweise beachten: „relayhost = 192.168.1.1:PORT“ Zusätzliche Zeile am Ende einfügen: „defer_transports = smtp“ Die Konfiguration von Postfix neu laden /etc/init.d/postfix reload Postfix – Shell Script zur Automatisierung - Als „root“ anmelden In den Ordner „sbin“ wechseln: „cd /usr/local/sbin“ Datei „postfix_auto_flush“ erstellen: „touch postfix_auto_flush“ Im Editor öffnen: „vim postfix_auto_flush“ Folgendes eintragen: #! /bin/sh /usr/sbin/postfix flush - Rechte setzen: „chmod 755 postfix_auto_flush“ Cronjob erstellen: „vim /etc/crontab“ Folgendes hinzufügen: */3 * * * * - root /usr/local/sbin/postfix_auto_flush Hiermit werden alle 3 min Mails versendet (Intervall änderbar)