Webserver monitoring
ΠΡΠΈΠ²Π΅Ρ,
Π ΡΠΎΠ·ΠΈ ΠΏΠΎΡΡ ΡΠ΅ ΡΠΏΠΎΠ΄Π΅Π»Ρ Π·Π° Π½Π°ΠΉ-ΡΠ΅ΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΈ ΠΎΡ ΠΌΠ΅Π½ Π·Π° ΡΠ°ΠΊΠ° Π½Π°ΡΠ΅ΡΠ΅Π½ΠΈΡ webserver monitoring.
ΠΠ΄Π΅ΡΡΠ° Π΅ ΡΡΠ½Π° – ΠΊΠ°ΡΠΎ ΡΠ΅Π± Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΎΡ, Π·Π° ΠΌΠ΅Π½ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Π·Π½Π°ΠΌ Π²ΠΈΠ½Π°Π³ΠΈ ΠΊΠ°ΠΊΠ²ΠΎ ΡΠ΅ ΡΠ»ΡΡΠ²Π° Π·Π°Π΄ ΠΊΠΎΠ»ΠΈΡΠΈΡΠ΅ Π½Π° ΡΠ΅Π± ΡΡΡΠ²ΡΡΠ°.
Π’ΠΈΠΏΠΈΡΠ΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ Π·Π° Π½ΡΠΆΠ΄Π° ΠΎΡ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π΅ ΠΊΠΎΠ³Π°ΡΠΎ ΡΡΡΠ²ΡΡΡΡ Π½ΠΈ Π΅ Π²Π΄ΠΈΠ³Π½Π°Π» Π²ΠΈΡΠΎΠΊ load, ΠΈ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΒ Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΎΡ ΠΊΡΠ΄Π΅ ΠΈΠ΄Π²Π° ΡΠΎΠΉ.
netstat
netstat Π΅ ΠΌΠΎΡΡ Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΡ ΠΏΡΠΈΡΡΠ΅Π» Π² ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ. Π‘ Π³ΠΎΠ΄ΠΈΠ½ΠΈΡΠ΅ ΡΡΠΌ ΡΠ΅ ΠΎΡΡΠ²ΡΡΡΠ΅Π½ΡΡΠ²Π°Π» Π² ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ ΠΌΡ ΠΈ ΡΡΠΌ ΠΎΡΠΊΡΠΈΠ» Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠ°ΡΠ° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈ Ρ ΠΊΠΎΠΈΡΠΎ Π»Π΅ΡΠ½ΠΎ Π΄Π° ΠΎΡΠΊΡΠΈΠ²Π°ΠΌ ΠΎΡ ΠΊΠΎΠΉ ΡΡΡΠ²ΡΡΡΡ ΠΌΠΈ Π΅ „flood“-Π½Π°Ρ.
netstat -tn 2>/dev/null | grep ':80 ' | awk '{print $5}' | cut -f1 -d: | sort | uniq -c | sort -rn | head
Π ΡΠ΅Π·ΡΠ»ΡΠ°ΡΠ° Π΅ ΡΠ»Π΅Π΄Π½ΠΈΡΡ :
[root@web ~]# netstat -tn 2>/dev/null | grep ':80 ' | awk '{print $5}' | cut -f1 -d: | sort | uniq -c | sort -rn | head 47 104.31.11.* 25 86.229.74.* 12 109.133.39.* 12 104.20.209.* 10 94.225.141.* 10 213.219.168.* 7 84.198.179.* 7 81.82.83.* 7 68.180.228.* 7 213.119.25.*
Π‘ΡΡΠ°ΡΠ° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΈ Π·Π° ΠΏΠΎΡΡ 443!!
ΠΠ»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Π½Π° netstat ΠΌΠΎΠΆΠ΅ Π΄Π° Π±ΡΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° : ss
ΠΠΎΠ³Π°ΡΠΎ ΠΈΠΌΠ°ΠΌΠ΅ IP Π°Π΄ΡΠ΅ΡΠΈΡΠ΅, ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΠ·ΠΎ ΠΈ Π»Π΅ΡΠ½ΠΎ ΡΡΠ΅Π· whois Π΄Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌ ΠΊΠΎΠΉ ΠΎΡ ΠΊΡΠ΄Π΅ ΠΈΠ΄Π²Π°, ΠΈ Π΄Π° ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ΅ΠΌΠ΅ΠΌ ΡΡΠΎΡΠ²Π΅ΡΠ½ΠΈΡΠ΅ ΠΌΠ΅ΡΠΊΠΈ.
ΠΡΠΈΠ΅ΡΠΌΠ½ΠΎ Π΄Π° Π³ΠΈ Π±Π»ΠΎΠΊΠΈΡΠ°ΠΌΠ΅ :
iptables -I INPUT -s $IP -j DROP
Access Logs
ΠΠ½ΠΎΠ³ΠΎ Π΅ Π²Π°ΠΆΠ½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»Π½ΠΎΡΠΎ ΡΠ°Π·ΡΠΈΡΠ°Π½Π° Π½Π° Π»ΠΎΠ³ΠΎΠ²Π΅ΡΠ΅ Π½Π° ΡΠ΅Π± ΡΡΡΠ²ΡΡΠ°. ΠΠ½ΠΎΠ³ΠΎ ΡΠ΅ΡΡΠΎ Π½ΠΈ Π½Π°ΠΏΠ°Π΄Π°Ρ ΡΠ°ΠΊΠ° Π½Π°ΡΠ΅ΡΠ΅Π½ΠΈΡΠ΅ „Π±ΠΎΡΠΎΠ²Π΅„, ΠΊΠΎΠΈΡΠΎ ΠΎΡΠ²Π°ΡΡΡ wp-login.php ΠΈ ΠΏΡΠΎΠ±Π²Π°Ρ Π΄Π° Π²Π»ΡΠ·Π°Ρ Π² Π½Π°ΡΠΈΡΡ wordpress. ΠΡΠ΅ΠΊΠΈ ΡΠ°ΠΊΡΠ² ΠΎΠΏΠΈΡ ΠΎΠ±Π°ΡΠ΅ ΠΎΡΠ²Π°ΡΡ Π½ΠΎΠ²Π° Π·Π°ΡΠ²ΠΊΠ° ΠΊΡΠΌ php ΠΈ mysql ΡΡΡΠ²ΡΡΠΈΡΠ΅ Π½ΠΈ, ΠΈ „ΡΠ΄Π΅“ ΠΏΡΠΎΡΠ΅ΡΠΎΡΠ½ΠΎ Π²ΡΠ΅ΠΌΠ΅ ΠΈ ΠΏΠ°ΠΌΠ΅Ρ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΡΠΎΡΠ΅ΡΠ΅ΡΠ΅ Π² ΠΌΠΎΡΡ ΠΏΡΠ΅Π΄ΠΈΡΠ΅Π½ ΠΏΠΎΡΡ wordpress wp-login.php attack
top, mytop
top Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΡΠ° ΠΊΠΎΡΡΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ Π½Π°ΠΉ-ΡΠ΅ΡΡΠΎ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ – ΡΡ ΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π²Π° ΠΊΠΎΠΉ ΠΏΡΠΎΡΠ΅Ρ ΡΠΎΠ²Π°ΡΠΈ Π½Π°ΠΉ-ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠ²ΡΡΠ° Π½ΠΈ ΠΈ ΡΠ°ΠΊΠ° ΠΌΠΎΠ³Π° Π»Π΅ΡΠ½ΠΎ Π΄Π° ΡΠ΅ ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠ°ΠΌ ΠΊΡΠ΄Π΅ Π΄Π° ΡΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
mytop Π΅ Π°Π»ΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π° Π½Π° top ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° mysql ΡΡΡΠ²ΡΡΠΈ. Π§ΡΠ΅Π· Π½Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ Π·Π°ΡΠ²ΠΊΠΈΡΠ΅ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΌΠ°ΡΠΈΠ½Π°ΡΠ°, ΠΊΠ°ΡΠΎ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° kill-Π²Π°ΠΌΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠ½ΠΎ ΠΏΠΎ ID-ΡΠ°, Π΄Π° Π½Π°Π±Π»ΡΠ΄Π°Π²Π°ΠΌΠ΅ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΡΡΠ° (Π°ΠΊΠΎ ΠΈΠΌΠ° ΡΠ°ΠΊΠ°Π²Π°) ΠΈ ΠΎΡΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ!
graphics
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅ Π·Π° ΠΊΡΠ΄Π΅ ΡΠΌΠ΅ Π±Π΅Π· Π³ΡΠ°ΡΠΈΠΊΠΈΡΠ΅.
ΠΠ· Π»ΠΈΡΠ½ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ LibreNMS ΠΈ Netdata Π·Π° Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠ΅ Π½Π° ΡΡΡΠ²ΡΡΠΈΡΠ΅ ΠΌΠΈ ΠΈ ΡΠΈΡΡΠ²Π°Π½Π΅ Π½Π° Π³ΡΠ°ΡΠΈΠΊΠΈΡΠ΅ ΠΈΠΌ.


ΠΠ½ΠΎΠ³ΠΎ Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ cacti , Π½ΠΎ ΠΏΠΎΡΠ°Π΄ΠΈ ΡΠ΅Π΄ ΠΏΡΠΈΡΠΈΠ½ΠΈ ΠΌΠΈΠ³ΡΠΈΡΠ°Ρ ΠΊΡΠΌ LibreNMS (ΠΏΡΠ΅Π΄ΠΈ ΡΠΎΠ²Π° Observium)
Π Π°Π·Π±ΠΈΡΠ° ΡΠ΅ ΠΈΠΌΠ° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ Π½Π°ΡΠΈΠ½ΠΈ Π·Π° ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³ Π½Π° Π½Π°ΡΠΈΡΡ ΡΠ΅Π± ΡΡΡΠ²ΡΡ, Π½ΠΎ Π·Π° ΠΌΠ΅Π½ ΠΈΠ·Π±ΡΠΎΠ΅Π½ΠΈΡΠ΅ ΠΏΠΎ-Π³ΠΎΡΠ΅ ΡΠ° Π½Π°ΠΉ-Π΄ΠΎΠ±ΡΠΈΡΠ΅.