Basit ve etkili bir genel çözüm logcheck kullanmaktır .
sudo apt-get install logcheck
[edit /etc/logcheck/logcheck.conf to your liking]
logcheck düzenli aralıklarla tüm günlükleri verimli bir şekilde tarar (son kez bıraktığı yerden başlayarak), normal kabul edilen herhangi bir şeyi ortadan kaldırmak için gördüklerini filtreler ve isteğe bağlı olarak normal / rutin desenlerle eşleşmeyen herhangi bir şey ile uyarıları e-postayla gönderir.
Böylece ana fikri, izlemek aşımı için günlük dosyalarında herhangi bir ciddi girişlerin görünüm için, hepsi, her zaman olduğu sen gerekmez.
logcheck yapılandırılabilir (man logcheck
). Aşağıdakiler dahil her şeyi yapılandırabilirsiniz:
- çeklerin sıklığı
- hangi günlük dosyaları kontrol edilir
- normal değil, vs değil
- Uyarıları nereye (anormal olaylarla) e-postayla
ve dahası. İgnore (normal / rutin) şablonlarınız /etc/logcheck/ignore.d.* altındaki birden fazla dosyada bulunur ve bunları ihtiyaçlarınıza göre özelleştirebilirsiniz; temelde yoksaymak için kendi desenlerinizi eklemek isteyebilirsiniz. Varsayılan Ubuntu paketi, zaten birçok hizmet için yoksayıcı modellere sahip geniş bir dosya grubuyla birlikte gelir; bu nedenle, sisteminizin çalıştığı sistemde olağandışı olmadığı sürece eklenecek bir şey yoktur. Önceden yapılandırılmış 3 tane yoksayılmış dosya profili vardır: ignore.d.workstation , ignore.d.server ve seçebileceğiniz ignore.d.paranoid .
Logcheck'in arkasındaki ana fikir , bir sistem üzerinde çalışan çeşitli servislerin zaten anormal olaylar kaydettiğidir. Örneğin, sshd veya pam zaten kimlik doğrulama hatalarını kaydeder. Yani ana eksik bileşenler:
- normal olanı filtrelemek
- uyarı hizmeti
Her ikisi de uygun bir pakette logcheck tarafından sağlanmaktadır . Logcheck'i diğer günlüklerle birleştirebilirsiniz . Örneğin iptables , kuralları ekleyerek açıkça izin verilmeyen tüm ağ bağlantı girişimlerini syslog olarak yapılandırmak için yapılandırılabilir :
iptables -A input -j LOG
iptables -A input -j DROP
tüm izin kurallarından hemen sonra.
Ben bulmak logcheck çok daha yararlı olmaya logwatch normal aktivite olarak kabul ne görmezden kurallar çok sayıda paketlenmiş önceden gelir çünkü (diğer yanıtlar önerilen). Sonuç, e-postayla uyardığı alarmlarda çok daha yüksek bir sinyal / gürültü oranıdır. YMMV.
Bir diğer avantajı logcheck o olmasıdır dik günlükleri, yani fonksiyonun hiçbir çoğaltılması var ki herhangi bir servise. syslog
Olayları günlüğe kaydetmek için kullanılan, anormal olan veya olmayan yeni bir hizmet eklediğinizde , altındaki herhangi bir dosyaya /var/log
otomatik olarak uyarılar almaya başlar.
NASIL:
Yana logcheck
zaten önceden geliyor, bu cevabın üstündeki iki satır aslında tüm Başlamak için gerek kapsamaktadır. Sadece kurun ve üst yapılandırma dosyasına göz
/etc/logcheck/logcheck.conf
atın: e-posta adresinizi değiştirmek için e logcheck
-postalarınızı size bildirir.
İşte ikinci adımda daha detaylı bir şekilde giden dostça bir referans . Ubuntu, Debian'ı temel aldığından, bu talimatların Ubuntu'da da çalışması gerekir.
İşte bir başka iyi referans .
Kurduktan sonra sürekli iyileştirme işlemi başlar. Zamanla, zaten bildiğiniz ve endişelenmemesi gereken şeyleri görmezden gelmek için kurallarınızı geliştirirsiniz. Bu ayrıntılandırma işlemi, favori metin düzenleyicinizdeki bir dosyaya metin satırları eklemek kadar basittir.
Bir yoksayma dosyasındaki her satır genişletilmiş bir düzenli ifadedir (bkz. man 7 regex
), Ancak yoksaymak istediğiniz günlük satırına uyduğu sürece basit dizeler kullanabilirsiniz. Sadece karakterler gibi hatırlıyorum *
, ?
'+', []
, ()
aslında günlük hatları görünür eğer öyleyse, ters eğik çizgi onları kaçmak zorunda kalacak, normal ifadede özel olan \
dosyaları görmezden içinde.
Başka bir deyişle: almak istemediğiniz bir uyarı alırsanız, size e-postayla gönderilen günlük satırına bakın ve seçtiğiniz herhangi bir yoksayma dosyasına tek bir satır olarak eşleşen bir desen ekleyin. /etc/logcheck/ignore.d.<yourloglevel>/my-ignores
Kişisel görmezden dosya olarak kullanmanızı öneririm
. Nerede <yourloglevel>
biridir paranoid
, server
ya da
workstation
(zaten ana yapılandırma dosyasında seçtiğiniz olarak: /etc/logcheck/logcheck.conf
). İşlem kimlikleri veya zaman damgaları gibi her zaman değişen metnin nasıl hesaplanacağını görmek için diğer yoksayma dosyalarındaki örneklere bakın. Öğrenilecek çok sayıda örnek var.
Son bir ipucu: Yeni kuralları test etmek için çok kullanışlı olan ve logcheck
adı verilen küçük faydalı bir yardımcı programla birlikte gelir logcheck-test
. man logcheck-test
detaylar için.