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:
- 4 módszer a naplófájlok valós idejű megtekintésére vagy figyelésére
- Központi naplókiszolgáló létrehozása az Rsyslog segítségével
- A kiszolgálónaplók valós idejű megfigyelése a „Log.io” eszközzel
- lnav – Apache naplók megtekintése és elemzése Linux terminálról
- 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.