Swatchdog - Linux'ta Gerçek Zamanlı Basit Günlük Dosyası İzleyici


Swatchdog ("Basit WATCH DOG"), Linux gibi Unix benzeri sistemlerdeki aktif günlük dosyalarını izlemeye yönelik basit bir Perl betiğidir. Günlüklerinizi, bir yapılandırma dosyasında tanımlayabileceğiniz normal ifadelere göre izler. Daemon modu seçeneğini kullanarak herhangi bir terminalden bağımsız olarak komut satırından veya arka planda çalıştırabilirsiniz.

Programın başlangıçta swatch ("Basit İzleyici") olarak adlandırıldığını, ancak eski İsviçre saat şirketinin ad değişikliği talebi üzerine geliştiricinin adını < olarak değiştirdiğini unutmayın. Strong>swatchdog.

Ayrıca Okuyun: Linux için 4 İyi Açık Kaynak Günlük İzleme ve Yönetim Aracı

Daha da önemlisi, swatchdog, Unix'in sistem günlüğü özelliği tarafından üretilen günlükleri izlemeye yönelik bir komut dosyasından büyümüştür ve hemen hemen her türlü günlüğü izleyebilir.

Linux'ta Swatch Nasıl Kurulur

swatchdog paketi, gösterildiği gibi bir paket yöneticisi aracılığıyla ana akım Linux dağıtımlarının resmi depolarından "swatch" paketi olarak kurulabilir.


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+]

swatchdog'un en son sürümünü yüklemek için herhangi bir Linux dağıtımında aşağıdaki komutları kullanarak onu kaynaktan derlemeniz gerekir.


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

Renk örneğini yükledikten sonra, yapılandırma dosyasını oluşturmanız gerekir (varsayılan konum /home/$USER/.swatchdogrc veya .swatchrc'dur) ), ne tür ifade kalıplarının aranacağını ve bir kalıp eşleştirildiğinde ne tür eylem(ler) yapılması gerektiğini belirlemek için.


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

Normal ifadenizi bu dosyaya eklediğinizde, her satır bir boşluk veya eşittir (=) işaretiyle ayrılmış bir anahtar kelime ve değer (bazen isteğe bağlı olabilir) içermelidir. Bir kalıp eşleştirildiğinde bir kalıp ve yapılacak eylemi/eylemleri belirtmeniz gerekir.

Basit bir yapılandırma dosyası kullanacağız; örneğin swatchdog kılavuz sayfasında daha fazla seçenek bulabilirsiniz.

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

Burada, normal ifademiz gerçek bir dizedir – “sudo”, günlük dosyasında sudo dizisi göründüğünde terminale kırmızı metinle yazdırılacağı ve posta gerçekleştirilecek eylemi belirtir; bu, eşleşen modeli terminalde yankılamak ve belirtilen adrese alıcı olarak bir e-posta göndermektir.

Yapılandırdıktan sonra swatchdog varsayılan olarak /var/log/syslog günlük dosyasını okur, bu dosya yoksa /var/log/messages okur.


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

Aşağıdaki örnekte gösterildiği gibi -c işaretini kullanarak farklı bir yapılandırma dosyası belirtebilirsiniz.

Öncelikle bir renk örneği yapılandırma dizini ve bir dosya oluşturun.

mkdir swatch
touch swatch/secure.conf

Daha sonra, /var/log/secure günlük dosyasından başarısız oturum açma denemelerini, başarısız SSH oturum açma denemelerini ve başarılı SSH oturum açma işlemlerini izlemek için dosyaya aşağıdaki yapılandırmayı ekleyin.

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"

Şimdi gösterildiği gibi -c kullanarak yapılandırma dosyasını ve -t bayrağını kullanarak günlük dosyasını belirterek Swatch'ı çalıştırın.

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

Arka planda çalıştırmak için --daemon bayrağını kullanın; bu modda herhangi bir terminalden ayrılır.

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

Şimdi renk örneği yapılandırmasını test etmek için farklı bir terminalden sunucuya giriş yapmayı deneyin; Swatchdog'un çalıştığı terminalde aşağıdaki çıktının yazdırıldığını göreceksiniz.

*** 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)

Çeşitli günlük dosyalarını izlemek için birden fazla renk örneği işlemi de çalıştırabilirsiniz.

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

Daha fazla bilgi için swatchdog kılavuz sayfasına bakın.

man swatchdog

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

Yararlı bulacağınız bazı ek günlük izleme kılavuzları aşağıda verilmiştir:

  1. Günlük Dosyalarını Gerçek Zamanlı Olarak İzlemenin veya İzlemenin 4 Yolu
  2. RSyslog ile Merkezi Günlük Sunucusu Nasıl Oluşturulur
  3. “Log.io” Aracı ile Sunucu Günlüklerini Gerçek Zamanlı Olarak İzleyin
  4. lnav – Bir Linux Terminalinden Apache Günlüklerini İzleyin ve Analiz Edin
  5. ngxtop - Linux'ta Nginx Günlük Dosyalarını Gerçek Zamanlı Olarak İzleyin

Swatchdog, Linux gibi Unix benzeri sistemler için basit bir aktif günlük dosyası izleme aracıdır. Deneyin ve düşüncelerinizi paylaşın veya yorum bölümünde sorularınızı sorun.