Linux monitör günlükleri ve e-posta uyarıları?


13

Kendini yeniden başlatmayı seven arızalı güç düğmesine sahip bir sunucum var. Genellikle / var / log'daki acpid günlük dosyası yaklaşık 10 saat çöp atmaya başlar gibi uyarı işaretleri vardır.

Bir şeyin acpid günlüğünü izlemesinin ve yeni bir etkinliği olduğunda bana e-posta göndermemin kolay bir yolu var mı?

Böyle bir şey başarmak için sahip olabileceğiniz herhangi bir "rehber" çok yararlı ve çok takdir olurdu kendimi son derece gelişmiş düşünün olmaz. Teşekkür ederim!


Güç düğmesini ve / veya sunucuyu değiştirmek mantıklı bir çözüm müdür?
Meetai.com

Yanıtlar:


19

LogWatch gibi bir şey kullanabilirsiniz . Ya da bunun gibi basit bir komut dosyası bile (çevreniz için değiştirmeniz gereken sahte koddur):

 #!/bin/bash
 GREP_STRING=`grep -c <error string> <acpid log location>`
 if [ $GREP_STRING -ne 0 ] 
 then
    <send email notification>
 fi

Bunu saatte bir çalıştırmak için cron'a koyun ve ne zaman garipleştiğini bildiren bir e-posta almalısınız.


1
logwatch benim için harika çalışıyor.
J.Zimmerman

3
Bu komut dosyası ile ilgili sorun, dosya döndürülene kadar aynı hatayı tekrar tekrar göndermesidir
chmeee

Ubuntu / Debian logwatch ile şu adresten kurulabilir: aptitude install -y logwatch
Meetai.com 09

8

Günlük dosyalarında kurallar ayarlamak ve aynı zamanda ana bilgisayarınızdan güvenlik bilgileri almak için OSSEC HIDS'i kullanabilirsiniz .

Kurulumu çok kolaydır:

  • Kaynağı indir
  • Sıkıştırın ve ./install.sh dosyasını çalıştırın
  • Yerel kurulumu seçin
  • Soruları cevaplayın (e-posta, çekler vb.)
  • Düzen /var/ossec/rules/local_rules.xmlaşağıda belirtildiği gibi
  • OSSEC'yi şununla başlat: /var/ossec/bin/ossec-control start

local_rules.xml

<group name="local,syslog,">
  <rule id="100001" level="13">
    <regex>^.*Your string.*$</regex>
    <description>I've just picked up a fault in the AE35 unit. It's going to go 100% failure in 72 hours</description>
  </rule>
</group>

Kurallar çok esnek ve karmaşık olabilir. Bir kurala dahil olan parametreler hakkında fikir edinmek için bu tabloya bakın .

Diğer güvenlik özelliklerini istemiyorsanız veya bunlara ihtiyacınız varsa include, rulesetiketin altındaki satırları kaldırarak bunları devre dışı bırakabilirsiniz .



3

Ve bunun gibi bir şeyle gönderebilirsiniz:

EMAILMSG="/tmp/logreport.$$"
echo "Something to put in the email" >> $EMAILMSG

cat $EMAILMSG | mail -s "Whatever Subject You Like" user@domain.com
rm -f $EMAILMGS

3

İstek üzerine hatalı sunucuları yeniden başlatmak için IPMI araçlarıyla Zabbix kullanıyorum . Ayrıca, OSSEC'in de iyi bir seçim olduğunu düşünüyorum, ama gerçekten eşyaya koymadan önce denemeniz ve hata ayıklamanız gerekiyor ...


3

Splunk'ı sunucuya indirip yükleyin . Günlük izlemeye benzer, ancak günlükleriniz için bir arama motoru sağlar.

Günlükleri dizine eklemek için yapılandırabilir, daha sonra günlükleri arayabilir ve kalıpları bulabilir, hataları bulabilir ve daha sonra bu belirli hata noktasında diğer günlüklerin ne yaptığını görebilirsiniz.

Ayrıca belirli eşiklerde uyarı göndermek veya komut dosyaları yürütmek için de ayarlanabilir. Dolayısıyla, belirli bir hata günlüğünüze spam gönderilmeye başlarsa, rahatsız edici hizmeti otomatik olarak yeniden başlatmak için komut dosyasını yazabilirsiniz.

Sunucu kümemizde splunk kullanıyoruz ve bu bir cankurtaran oldu!


Splunk için +1 oldukça iyi görünüyor bu gece daha sonra deniyorum.
Mark Davidson

1

Önceki bir işverente , günlükleri gerçek zamanlı olarak izlemek ve e-posta uyarıları göndermek için logsurfer + kullandık . Yanlış pozitifleri ayarlamak çok zaman ve yapılandırma gerektiriyor, ancak Nagios'un benzer amaçlar için olduğundan çok daha değerli olan çeşitli bulgular ve uyarılar için oldukça iyi çalışan bir kural setimiz vardı.

Neyse ki, filtrelediğimiz örnekleri sunmak için artık yapılandırma dosyasına erişemiyorum, ancak site daha fazla bilgi ve örnek sağlamalıdır.


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.