Toto je starší verze dokumentu!


SSH autoban

Tento soubor scriptů slouží k blokování spamu na ssh portu.

Cron řádky

crontab
*/5 *   * * *   root    /usr/local/bin/vycuc.sh &> /dev/null
*/5 *   * * *   root    /usr/local/bin/banovator.sh &> /dev/null

Soubory

rc.local

rc.local
##########################################
#  Blokování SSH po 3 hitech na 5 minut  #
##########################################
 
dev_inet="eth0"
 
# Výjimky které neblokovat
iptables -A INPUT -p tcp --destination-port 22 -i $dev_inet -s 12.34.56.75 -j ACCEPT # AP
 
# Hlavní blokátor
iptables -N SshLogBlock
iptables -A INPUT -p tcp --destination-port 22 -i $dev_inet -m state --state NEW -m recent --update --seconds 300 --hitcount 3 -j SshLogBlock
iptables -A INPUT -p tcp --destination-port 22 -i $dev_inet -m state --state NEW -m recent --set
iptables -A INPUT -p tcp --destination-port 22 -i $dev_inet -j ACCEPT
iptables -A SshLogBlock -j LOG --log-prefix "BLOCKED-SSH: " --log-ip-options
iptables -A SshLogBlock -j DROP
 
### END blokování SSH ###

Banovátor

banovator.sh
#!/bin/bash
iptables -D INPUT -j bany 2> /dev/null
iptables -F bany
iptables -X bany 2> /dev/null
iptables -N bany
iptables -I INPUT 1 -j bany
 
cat /etc/banned-ip | while read ipka comment; do
	iptables -A bany -s $ipka -j DROP
done

Nastavení rsyslogu

/etc/rsyslog.d/blocked-ssh.conf

blocked-ssh.conf
:msg, contains, "BLOCKED-SSH" -/var/log/blocked-ssh.log
& ~

Pozor: rsyslog v debianu má pravděpodobně výchozí práva u vytvořených souborů 640, což znemožňuje čtení logu uživatelem www-data. Proto je nutné upravit direktivu

$FileCreateMode 0640

v souboru /etc/rsyslog.conf na

$FileCreateMode 0644

nebo tuto direktivu přidat na začátek souboru /etc/rsyslog.d/blocked-ssh.conf.

vycuc.sh

vycuc.sh
#!/bin/bash
grep -v pam_unix /var/log/auth.log | grep -v sudo | grep -E [[:digit:]]\.[[:digit:]]\.[[:digit:]]\.[[:digit:]] > /tmp/short-auth.log
grep -v pam_unix /var/log/auth.log.1 | grep -v sudo | grep -E [[:digit:]]\.[[:digit:]]\.[[:digit:]]\.[[:digit:]] > /tmp/short-auth-old.log
chmod 644 /tmp/short-auth*

PHP scripty zobrazující počet zablokovaných

Navigace

Obecné

Vývoj

Naše minetest games

Jiné minetest games

Minecraft

Wurm Unlimited

Ostatní

O této wiki

Tisk/export
Jazyky