Merhaba, Nagios şu anda nagios@server.domain.com adresinden bildirim gönderiyor, Bunu nasıl yapılandırabilirim? Teşekkürler
Merhaba, Nagios şu anda nagios@server.domain.com adresinden bildirim gönderiyor, Bunu nasıl yapılandırabilirim? Teşekkürler
Yanıtlar:
Varsayılan bir Nagios yüklemesinde, içinde bulacağınız host-notify-by-mail
veya service-notify-by-mail
komutlarında da tanımlanır commands.cfg
. Varsayılan değer şuna benzer:
/bin/echo -e "$NOTIFICATIONTYPE$ - Service notification for $SERVICEDESC$ from host $HOSTNAME$ - $HOSTALIAS$\n$SERVICEDESC$: $SERVICEOUTPUT$\n" | /bin/mail -s '$NOTIFICATIONTYPE$/$SERVICESTATE$ - $HOSTNAME$/$SERVICEDESC$' $CONTACTEMAIL$
Bu yüzden -r sender@address
, posta komutuna bir seçenek ekleyin ve bu işe yarayacaktır.
/bin/mail
ve arasına bunu ekledim-s
"- -r nagios@domain.com" çözümünün çalışması sağlanamadı. "-" işaretinden sonra seçenekler gönderilir. Sendmail seçeneklerine baktığımızda, "-fnagios @ domain" olmalıdır -F ve nagios@domain.com arasında NOT NO SPACE.
Şimdi aşağıdakiler çalışıyor: -
command_line /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTNAME$\Address: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$LONGSERVICEOUTPUT$" | /bin/mail -s "$SERVICESTATE$ - Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ -- -fnagios@domain.com
Ne benim için çalıştı eklemeden oldu -r $ADMINEMAIL$
önce -s
(hemen sonra /bin/mail
), ve tabii ki $ADMINEMAIL$
de ayarlanmış olması gerekir nagios.cfg
kullanarak admin_email
ayarı.
Komutu yalancı bir şeye değiştirerek bunu başardım:
command_line /usr/bin/printf "%b" "Notification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTNAME$\Address: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$LONGSERVICEOUTPUT$" | /bin/mail -s "$SERVICESTATE$ - Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$ -- -r $ADMINEMAIL$
Sihir '- -r' kısmıdır.
ADMINEMAIL nagios.cfg dosyasında ayarlanır, ancak 'Kimden' adresi için herhangi bir e-posta adresi olabilir.
Yukarıdakilerin hiçbiri Nagios ve / veya Postfix'in güncel sürümleriyle çalışmaz. "Commands.cfg" dosyasındaki Nagios "host-notify-by-mail" veya "service-notify by mail" komutlarına eklenmesi gereken bayrak şu şekildedir:
-a "From: john.doe@uzh.ch"
Tırnak işaretlerinin gerekli olduğunu unutmayın!
Bu, etc/nagios3/conf.d/contacts_nagios2.cfg
E-postaları ve grupları olan kullanıcıları tanımlayabilirsiniz. Ayrıca, farklı amaçlar için farklı gruplar da yapılandırabilirsiniz - ör. Http uyarıları için web_admin, ana bilgisayar uyarıları için yönetici vb.
İçin bsd-mailx
benim /usr/bin/mail
kullandığım bu yüzden komut bağlantıları, hiçbir şey işe gibiydi /usr/sbin/sendmail
böyle (postfix tarafından sağlanır):
command_line /usr/bin/printf "%b" "Subject:** $NOTIFICATIONTYPE$ Host Alert: $HOSTNAME$ is $HOSTSTATE$ **\n\n**** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | /usr/sbin/sendmail -r "nagios@example.com" $CONTACTEMAIL$
İçin sendmail
iki şey dikkate almak:
-r
Dönüş yolunu (ve adresinden) belirtmek için-s
Konu için bir şey yok . Bunun yerine, Subject:
posta başlığını ve printf
ardından iki yeni satır ekleyin\n\n