Swatchdog - ຕົວເກັບຂໍ້ມູນບັນທຶກງ່າຍໆໃນເວລາຈິງໃນ Linux


Swatchdog (the“ WATCH DOG”) ແມ່ນຕົວອັກສອນ Perl ທີ່ງ່າຍດາຍ ສຳ ລັບການກວດສອບເອກະສານບັນທຶກທີ່ເຄື່ອນໄຫວໃນລະບົບຄ້າຍຄື Unix ເຊັ່ນ Linux. ມັນເບິ່ງບັນທຶກຂອງທ່ານໂດຍອີງໃສ່ ສຳ ນວນປົກກະຕິທີ່ທ່ານສາມາດ ກຳ ນົດໃນແຟ້ມການຕັ້ງຄ່າ. ທ່ານສາມາດແລ່ນມັນຈາກເສັ້ນຄໍາສັ່ງຫຼືໃນພື້ນຫລັງ, ແຍກອອກຈາກທ່າໃດກໍ່ຕາມໂດຍໃຊ້ຕົວເລືອກໂຫມດ daemon.

ໃຫ້ສັງເກດວ່າໂປແກຼມດັ່ງກ່າວເດີມຖືກເອີ້ນວ່າ swatch (“ Simple Watcher”) ແຕ່ ຄຳ ຮ້ອງຂໍຂອງບໍລິສັດໂມງຊາວສະວິດເຊີແລນ ສຳ ລັບການປ່ຽນຊື່ໄດ້ເຫັນວ່ານັກພັດທະນາປ່ຽນຊື່ເປັນ swatchdog.

ສິ່ງທີ່ ສຳ ຄັນ, swatchdog ໄດ້ເຕີບໃຫຍ່ມາຈາກບົດຂຽນ ສຳ ລັບການເບິ່ງບັນທຶກທີ່ຜະລິດໂດຍສະຖານທີ່ syslog ຂອງ Unix, ແລະມັນສາມາດຕິດຕາມກວດກາບັນທຶກໄມ້ຊະນິດໃດກໍ່ໄດ້.

ວິທີການຕິດຕັ້ງ Swatch ໃນ Linux

ຊຸດ swatchdog ສາມາດຕິດຕັ້ງໄດ້ຈາກຫໍສະ ໝຸດ ຢ່າງເປັນທາງການຂອງການແຈກແຈງ Linux ແບບເປັນຊຸດ "swatch" ຜ່ານຜູ້ຈັດການແພັກເກດດັ່ງທີ່ສະແດງໄວ້.

$ 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 ລຸ້ນລ້າສຸດ, ທ່ານ ຈຳ ເປັນຕ້ອງລວບລວມມັນຈາກແຫຼ່ງໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້ໃນການແຈກຈ່າຍ Linux ໃດໆ.

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

ເມື່ອທ່ານໄດ້ຕິດຕັ້ງ swatch ແລ້ວ, ທ່ານ ຈຳ ເປັນຕ້ອງສ້າງແຟ້ມການຕັ້ງຄ່າຂອງມັນ (ສະຖານທີ່ເລີ່ມຕົ້ນແມ່ນ /home/$USER/.swatchdogrc ຫຼື .swatchrc), ເພື່ອ ກຳ ນົດວ່າຮູບແບບການສະແດງອອກປະເພດໃດທີ່ຄວນຊອກຫາແລະປະເພດການກະ ທຳ ໃດທີ່ຄວນ ຖືກປະຕິບັດເມື່ອຮູບແບບຖືກຈັບຄູ່.

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

ຕື່ມການສະແດງອອກແບບປົກກະຕິຂອງທ່ານໃສ່ໃນເອກະສານນີ້ແລະແຕ່ລະເສັ້ນຄວນມີ ຄຳ ສຳ ຄັນແລະມູນຄ່າ (ບາງຄັ້ງເປັນທາງເລືອກ), ແຍກດ້ວຍຊ່ອງຫວ່າງຫຼືເຄື່ອງ ໝາຍ (=) ເທົ່າທຽມກັນ. ທ່ານ ຈຳ ເປັນຕ້ອງລະບຸຮູບແບບແລະການກະ ທຳ ທີ່ຕ້ອງເຮັດເມື່ອຮູບແບບຖືກຕ້ອງ.

ພວກເຮົາຈະໃຊ້ເອກະສານການຕັ້ງຄ່າແບບງ່າຍດາຍ, ທ່ານສາມາດຊອກຫາຕົວເລືອກເພີ່ມເຕີມໃນ ໜ້າ swatchdog man, ຍົກຕົວຢ່າງ.

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

ໃນທີ່ນີ້, ສຳ ນວນປົກກະຕິຂອງພວກເຮົາແມ່ນສາຍອັກສອນທີ່ເປັນຕົວ ໜັງ ສື -“ sudo”, ໝາຍ ຄວາມວ່າເວລາໃດທີ່ສາຍ sudo ປາກົດຢູ່ໃນແຟ້ມທ່ອນ, ຈະຖືກພິມໃສ່ປາຍທາງໃນຂໍ້ຄວາມສີແດງແລະຈົດ ໝາຍ ລະບຸການປະຕິບັດທີ່ຈະຕ້ອງປະຕິບັດ, ເຊິ່ງແມ່ນການເວົ້າກັບການຈັບຄູ່ ຮູບແບບຢູ່ປາຍຍອດແລະສົ່ງອີເມວຫາທີ່ຢູ່ທີ່ລະບຸໄວ້, ພ້ອມ.

ຫຼັງຈາກທີ່ທ່ານໄດ້ຕັ້ງຄ່າມັນແລ້ວ, swatchdog ອ່ານໄຟລ໌ log/log/log/syslog ໂດຍຄ່າເລີ່ມຕົ້ນ, ຖ້າເອກະສານນີ້ບໍ່ມີຢູ່, ມັນອ່ານ/var/log/ຂໍ້ຄວາມ.

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

ທ່ານສາມາດ ກຳ ນົດເອກະສານການຕັ້ງຄ່າທີ່ແຕກຕ່າງກັນໂດຍໃຊ້ -c ທຸງດັ່ງທີ່ສະແດງຢູ່ໃນຕົວຢ່າງຕໍ່ໄປນີ້.

ທຳ ອິດສ້າງໄດເລກະທໍລີການຕັ້ງຄ່າ swatch ແລະເອກະສານ.

$ mkdir swatch
$ touch swatch/secure.conf

ຕໍ່ໄປ, ຕື່ມການຕັ້ງຄ່າຕໍ່ໄປນີ້ໃນແຟ້ມເພື່ອຕິດຕາມກວດກາການເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວ, ຄວາມພະຍາຍາມເຂົ້າສູ່ລະບົບ SSH ທີ່ລົ້ມເຫລວ, ການເຂົ້າສູ່ລະບົບ SSH ທີ່ປະສົບຜົນ ສຳ ເລັດຈາກແຟ້ມ log/var/log/ປອດໄພ.

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"

ດຽວນີ້ໃຊ້ Swatch ໂດຍ ກຳ ນົດເອກະສານການຕັ້ງຄ່າໂດຍໃຊ້ -c ແລະບັນທຶກແຟ້ມໂດຍໃຊ້ -t ທຸງດັ່ງທີ່ສະແດງ.

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

ເພື່ອເຮັດວຽກໃນພື້ນຫລັງ, ໃຊ້ທຸງ --daemon ; ໃນຮູບແບບນີ້, ມັນຖືກແຍກອອກຈາກທ່າໃດກໍ່ຕາມ.

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

ຕອນນີ້ເພື່ອທົດສອບການຕັ້ງຄ່າ swatch, ພະຍາຍາມເຂົ້າສູ່ລະບົບ server ຈາກທີ່ແຕກຕ່າງກັນ, ທ່ານຈະເຫັນຜົນຜະລິດຕໍ່ໄປນີ້ຖືກພິມໄປຍັງ terminal ທີ່ Swatchdog ກຳ ລັງແລ່ນຢູ່.

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

ນອກນັ້ນທ່ານຍັງສາມາດດໍາເນີນການຫຼາຍຂະບວນການ swatch ເພື່ອຕິດຕາມກວດກາເອກະສານບັນທຶກຕ່າງໆ.

$ 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

ສຳ ລັບຂໍ້ມູນເພີ່ມເຕີມ, ໃຫ້ເຂົ້າເບິ່ງ ໜ້າ swatchdog man.

$ man swatchdog

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

ຕໍ່ໄປນີ້ແມ່ນຄູ່ມືແນະ ນຳ ກ່ຽວກັບການກວດກາບັນທຶກໄມ້ເພີ່ມເຕີມທີ່ທ່ານຈະເຫັນວ່າມີປະໂຫຍດ:

<

  • 4 ວິທີໃນການເບິ່ງຫລືກວດເບິ່ງເອກະສານ Log Log ໃນເວລາຈິງ
  • ວິທີການສ້າງ Server Central Log ກັບ Rsyslog
  • ຕິດຕາມກວດກາບັນທຶກເຊີບເວີຂອງ Server ໃນເວລາຈິງດ້ວຍ“ Log.io” Tool
  • lnav - ເບິ່ງແລະວິເຄາະບັນທຶກ Apache ຈາກ Linux Terminal
  • ngxtop - ຕິດຕາມກວດກາໄຟລ໌ບັນທຶກ Nginx ໃນເວລາຈິງໃນ Linux
  • Swatchdog ແມ່ນເຄື່ອງມືກວດສອບບັນທຶກການເຄື່ອນໄຫວແບບງ່າຍດາຍ ສຳ ລັບລະບົບທີ່ຄ້າຍຄືກັບ Unix ເຊັ່ນ Linux. ທົດລອງໃຊ້ແລະແບ່ງປັນຄວາມຄິດຂອງທ່ານຫຼືຖາມ ຄຳ ຖາມໃດໆໃນສ່ວນ ຄຳ ເຫັນ.