Weboldal keresés

Swatchdog – Egyszerű naplófájl-figyelő valós időben Linux alatt


A Swatchdog (az „Egyszerű WATCH DOG”) egy egyszerű Perl-szkript az aktív naplófájlok figyelésére Unix-szerű rendszereken, például Linuxon. Figyeli a naplókat a konfigurációs fájlban megadható reguláris kifejezések alapján. Futtathatja parancssorból vagy a háttérben, bármely terminálról leválasztva a démon mode opció segítségével.

Ne feledje, hogy a program eredeti neve swatch („Simple Watcher”), de a régi svájci óragyártó cég névváltoztatási kérelmére a fejlesztő a következőre változtatta a nevét: Swatchdogot.

Olvassa el még: 4 jó nyílt forráskódú naplófigyelő és -kezelő eszköz Linuxhoz

Fontos, hogy a swatchdog egy olyan szkriptből nőtt ki, amely a Unix rendszernaplója által készített naplókat figyeli, és szinte bármilyen naplót képes figyelni.

A Swatch telepítése Linux alatt

A swatchdog csomag telepíthető a főbb Linux disztribúciók hivatalos tárolóiból „swatch” csomagként a csomagkezelőn keresztül, az ábra szerint.


sudo apt install swatch	[On Ubuntu/Debian]
sudo yum install epel-release && sudo yum install swatch	[On RHEL/CentOS]
sudo dnf install swatch	[On Fedora 22+]

A swatchdog legfrissebb verziójának telepítéséhez a forrásból kell lefordítania azt a következő parancsok használatával bármely Linux disztribúcióban.


git clone https://github.com/ToddAtkins/swatchdog.git
cd swatchdog/
perl Makefile.PL
make
sudo make install
sudo make realclean

Miután telepítette a mintát, létre kell hoznia a konfigurációs fájlt (az alapértelmezett hely: /home/$USER/.swatchdogrc vagy .swatchrc ).


touch /home/tecmint/.swatchdogrc
OR
touch /home/tecmint/.swatchrc

Adja hozzá reguláris kifejezését ebbe a fájlba, és minden sornak tartalmaznia kell egy kulcsszót és értéket (néha nem kötelező), elválasztva szóközzel vagy egyenlőségjellel (=). Meg kell adnia a mintát és a végrehajtandó művelet(eke)t, ha egy minta illeszkedik.

Egy egyszerű konfigurációs fájlt fogunk használni, további lehetőségeket találhat például a swatchdog man oldalán.

watchfor  /sudo/
	echo red
	[email , subject="Sudo Command"

Itt a reguláris kifejezésünk egy szó szerinti karakterlánc – a "sudo" azt jelenti, hogy amikor a sudo karakterlánc megjelenik a naplófájlban, akkor a rendszer piros szöveggel nyomtatja ki a terminálra, és A mail adja meg a végrehajtandó műveletet, azaz a terminálon az egyező mintát visszhangozza, és fogadóképes e-mailt küld a megadott címre.

A konfigurálást követően a swatchdog alapértelmezés szerint beolvassa a /var/log/syslog naplófájlt, ha pedig ez a fájl nincs jelen, akkor a /var/log/messages fájlt olvassa be.


swatch     [On RHEL/CentOS & Fedora]
swatchdog  [On Ubuntu/Debian]

Megadhat egy másik konfigurációs fájlt a -c jelzővel, ahogy az a következő példában látható.

Először hozzon létre egy színminta konfigurációs könyvtárat és egy fájlt.

mkdir swatch
touch swatch/secure.conf

Ezután adja hozzá a következő konfigurációt a fájlhoz a sikertelen bejelentkezési kísérletek, a sikertelen SSH-bejelentkezési kísérletek és a sikeres SSH-bejelentkezések figyeléséhez a /var/log/secure naplófájlból.

watchfor /FAILED/
echo red
[email , subject="Failed Login Attempt"

watchfor /ROOT LOGIN/
echo red
[email , subject="Successful Root Login"

watchfor /ssh.*: Failed password/
echo red
[email , subject="Failed SSH Login Attempt"

watchfor /ssh.*: session opened for user root/ 
echo red
[email , subject="Successful SSH Root Login"

Most futtassa a Swatch-ot úgy, hogy megadja a konfigurációs fájlt a -c és a naplófájlt a -t kapcsolóval, ahogy az ábrán látható.

swatchdog -c ~/swatch/secure.conf -t /var/log/secure

A háttérben való futtatásához használja a --daemon jelzőt; ebben az üzemmódban bármely terminálról le van választva.

swatchdog ~/swatch/secure.conf -t /var/log/secure --daemon  

Most a színtár konfigurációjának teszteléséhez próbáljon meg bejelentkezni a kiszolgálóra a másik terminálról. A következő kimenetet látja arra a terminálra nyomtatva, ahol a Swatchdog fut.

*** swatch version 3.2.3 (pid:16531) started at Thu Jul 12 12:45:10 BST 2018

Jul 12 12:51:19 tecmint sshd[16739]: Failed password for root from 192.168.0.103 port 33324 ssh2
Jul 12 12:51:19 tecmint sshd[16739]: Failed password for root from 192.168.0.103 port 33324 ssh2
Jul 12 12:52:07 tecmint sshd[16739]: pam_unix(sshd:session): session opened for user root by (uid=0)
Jul 12 12:52:07 tecmint sshd[16739]: pam_unix(sshd:session): session opened for user root by (uid=0)

Több színminta-folyamatot is futtathat a különböző naplófájlok figyeléséhez.

swatchdog -c ~/site1_watch_config -t /var/log/nginx/site1/access_log --daemon  
swatchdog -c ~/messages_watch_config -t /var/log/messages --daemon
swatchdog -c ~/auth_watch_config -t /var/log/auth.log --daemon

További információkért tekintse meg a swatchdog kézikönyvoldalát.

man swatchdog

Swatchdog SourceForge Repository: https://sourceforge.net/projects/swatch/

Az alábbiakban néhány további naplófigyelési útmutató található, amelyeket hasznosnak talál:

  1. 4 módszer a naplófájlok valós idejű megtekintésére vagy figyelésére
  2. Központi naplókiszolgáló létrehozása az Rsyslog segítségével
  3. A kiszolgálónaplók valós idejű megfigyelése a „Log.io” eszközzel
  4. lnav – Apache naplók megtekintése és elemzése Linux terminálról
  5. ngxtop – Az Nginx naplófájlok valós időben történő figyelése Linux alatt

A Swatchdog egy egyszerű aktív naplófájl-figyelő eszköz Unix-szerű rendszerekhez, például Linuxhoz. Próbálja ki, és ossza meg gondolatait, vagy tegyen fel kérdéseket a megjegyzések részben.