1 (edytowany przez maciejb84 2014-04-21 15:28:32)

Temat: zabezpieczenie ssh przez WAN

Witam,


ostatnio przegladając logi systemowe na routerze pracujacym na openwrt 12.09 natknąłem się na mase wpisów tej treści:

authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.warn dropbear[608]: Bad password attempt for 'root' from xx.xx.xx.xx:xxxx
authpriv.info dropbear[580]: Exit before auth (user 'root', 10 fails): Max auth tries reached - user 'root' from xx.xx.xx.xx:xxx

są tam rózne adresy ip:porty, jak można zablokować takich uzytkowników po jakiejś liczbie prob zalogowan?

Mam takie dodatkowe wpisy w iptables ktore znalazlem gdzies na jakiejs stronie:

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys

iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP

ale to widze ze nic nie dalo hmm nadal są te same logi i proby zalogowania...



Z gory dziekuje za pomoc!


ps. nie chce zmieniac portu 22 na inny tylko dowiedziec sie jak ustawic blokowanie takich prob smile

2

Odp: zabezpieczenie ssh przez WAN

Po prostu cała masa automatów jest w sieci. O ile możesz w/w metodą zablokować, to i tak jednak byś zmienił port na jakiś niestandardowy.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: zabezpieczenie ssh przez WAN

mozliwe ze jest ich sporo ale ta metoda iptables:

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP

nie dziala i nie wiem czemu, nie blokuje i nie dodaje do badguys hmm wan mam po eth0.2, chyba ze moze zmienic --dport ssh na --dport 22 ??

4

Odp: zabezpieczenie ssh przez WAN

Możesz zmienić. Jak wykonujesz te reguły to nie wywala Ci błędów? Zobacz łańcuch BADGUY czy coś się łapie. I chyba -I INPUT chciałeś zrobić...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: zabezpieczenie ssh przez WAN

# This file is interpreted as shell script.
# Put your custom iptables rules here, they will
# be executed with each firewall (re-)start.

iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -m recent --name badguys --update --seconds 3600 -j DROP
iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys

iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -A INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP



tak wyglada caly mój wpis we wlasnych regułach firewall, po zrestartowaniu firewall nie ma żadnych błedów

OpenWrt_WR1043ND ~ sad # /etc/init.d/firewall restart
Loading defaults
Loading synflood protection
Adding custom chains
Loading zones
Loading forwardings
Loading rules
Loading redirects
Loading includes
Optimizing conntrack
Loading interfaces
OpenWrt_WR1043ND ~ #

6

Odp: zabezpieczenie ssh przez WAN

-I INPUT zrób, pisałem. A dwa -   w zależności od wersji openwrt którą masz - czy masz reload 1 przy opcji firewall którą /etc/firewall.user wczytuje?

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: zabezpieczenie ssh przez WAN

" czy masz reload 1 przy opcji firewall którą /etc/firewall.user wczytuje?" - nie rozumiem tego, niestety nie jestem w tym zbyt dobry... więc przepraszam za głupie pytania hmm

8

Odp: zabezpieczenie ssh przez WAN

uci show firewall pokaż

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: zabezpieczenie ssh przez WAN

firewall.@defaults[0]=defaults
firewall.@defaults[0].syn_flood=1
firewall.@defaults[0].input=ACCEPT
firewall.@defaults[0].output=ACCEPT
firewall.@defaults[0].forward=REJECT
firewall.@zone[0]=zone
firewall.@zone[0].name=lan
firewall.@zone[0].network=lan
firewall.@zone[0].input=ACCEPT
firewall.@zone[0].output=ACCEPT
firewall.@zone[0].forward=REJECT
firewall.@zone[1]=zone
firewall.@zone[1].name=wan
firewall.@zone[1].network=wan
firewall.@zone[1].input=REJECT
firewall.@zone[1].output=ACCEPT
firewall.@zone[1].forward=REJECT
firewall.@zone[1].masq=1
firewall.@zone[1].mtu_fix=1
firewall.@forwarding[0]=forwarding
firewall.@forwarding[0].src=lan
firewall.@forwarding[0].dest=wan
firewall.@rule[0]=rule
firewall.@rule[0].name=Allow-DHCP-Renew
firewall.@rule[0].src=wan
firewall.@rule[0].proto=udp
firewall.@rule[0].dest_port=68
firewall.@rule[0].target=ACCEPT
firewall.@rule[0].family=ipv4
firewall.@rule[1]=rule
firewall.@rule[1].name=Allow-Ping
firewall.@rule[1].src=wan
firewall.@rule[1].proto=icmp
firewall.@rule[1].icmp_type=echo-request
firewall.@rule[1].family=ipv4
firewall.@rule[1].target=ACCEPT
firewall.@rule[2]=rule
firewall.@rule[2].name=Allow-DHCPv6
firewall.@rule[2].src=wan
firewall.@rule[2].proto=udp
firewall.@rule[2].src_ip=fe80::/10
firewall.@rule[2].src_port=547
firewall.@rule[2].dest_ip=fe80::/10
firewall.@rule[2].dest_port=546
firewall.@rule[2].family=ipv6
firewall.@rule[2].target=ACCEPT
firewall.@rule[3]=rule
firewall.@rule[3].name=Allow-ICMPv6-Input
firewall.@rule[3].src=wan
firewall.@rule[3].proto=icmp
firewall.@rule[3].icmp_type=echo-request echo-reply destination-unreachable packet-too-big time-exceeded bad-header unknown-header-type router-solicitation neighbour-solicitation router-advertisement neighbour-advertisement
firewall.@rule[3].limit=1000/sec
firewall.@rule[3].family=ipv6
firewall.@rule[3].target=ACCEPT
firewall.@rule[4]=rule
firewall.@rule[4].name=Allow-ICMPv6-Forward
firewall.@rule[4].src=wan
firewall.@rule[4].dest=*
firewall.@rule[4].proto=icmp
firewall.@rule[4].icmp_type=echo-request echo-reply destination-unreachable packet-too-big time-exceeded bad-header unknown-header-type
firewall.@rule[4].limit=1000/sec
firewall.@rule[4].family=ipv6
firewall.@rule[4].target=ACCEPT
firewall.@include[0]=include
firewall.@include[0].path=/etc/firewall.user
firewall.@redirect[0]=redirect
firewall.@redirect[0].target=DNAT
firewall.@redirect[0].src=wan
firewall.@redirect[0].dest=lan
firewall.@redirect[0].proto=tcp
firewall.@redirect[0].src_dport=2345
firewall.@redirect[0].dest_ip=192.168.1.1
firewall.@redirect[0].dest_port=80
firewall.@redirect[0].name=remote access
firewall.@rule[5]=rule
firewall.@rule[5].target=ACCEPT
firewall.@rule[5].src=wan
firewall.@rule[5].proto=tcp
firewall.@rule[5].name=scp
firewall.@rule[5].dest_port=22

10

Odp: zabezpieczenie ssh przez WAN

Nie , nie masz. W sekcji include gdzie masz /etc/firewall.user dodaj sobie option reload 1

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: zabezpieczenie ssh przez WAN

uci firewall.@include[0].reload=1 ? hmm

12

Odp: zabezpieczenie ssh przez WAN

uci set firewall.@include[0].reload=1
uci commit

jak już.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: zabezpieczenie ssh przez WAN

dziekuje za pomoc smile mam nadzieje ze to juz zadziala

14 (edytowany przez maciejb84 2014-04-22 07:57:20)

Odp: zabezpieczenie ssh przez WAN

hmm cos to nie dziala, doinstalowalem jeszcze pakiet iptables-mod-conntrack-extra w ktorym jest modul recent i tylko robi access denied po 3 probach zlego hasla zamiast 10 ale nie dodaje do listy zablokowanych hmm



aktualizacja:


po zmianie na -I INPUT zaczeło "coś działać" po 3 probach blokuje na 30 sekund kolejne proby logowania sie ale nie dodaje do banlisty na 300 sekund hmm


iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -m recent --name badguys --update --seconds 3600 -j DROP
iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys

iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP

15

Odp: zabezpieczenie ssh przez WAN

Ale stosuj wszędzie -I a nie -A bo firewall openwrt przechwytuje Ci pakiety. Albo odwołuj się do innych łańcuchów zdefiniowanych przez firewall openwrt.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

16

Odp: zabezpieczenie ssh przez WAN

a czy kolejnosc moich wpisow ma znaczenie?

1.

iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -m recent --name badguys --update --seconds 3600 -j DROP
iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys

iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP




2.

iptables -N BADGUY
iptables -t filter -I BADGUY -m recent --set --name badguys

iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --set
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds 300 --hitcount 3 -j BADGUY
iptables -I INPUT -i eth0.2 -p tcp --syn --dport ssh -m recent --name ssh --rcheck --seconds  30 --hitcount 2 -j DROP

iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -m recent --name badguys --update --seconds 3600 -j DROP
iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys

17

Odp: zabezpieczenie ssh przez WAN

Zmiana portu na inny to pdstawa bezpieczenstwa i po zabawie. Blokowanie w iptables  proxy to marnowanie czasu. Ktoś kto swiadomie i z premedytacją chciał by wejść do Ciebie Użył by list proxy i robił by to tasmowo z taką prędkościa, że router odmówił by współpracy.  Więc na roboty nie ma lepszej metody niż zmiana portu, roboty bardzo żadko skanują porty.

18 (edytowany przez maciejb84 2014-04-22 08:33:47)

Odp: zabezpieczenie ssh przez WAN

Cezary napisał/a:

Ale stosuj wszędzie -I a nie -A bo firewall openwrt przechwytuje Ci pakiety. Albo odwołuj się do innych łańcuchów zdefiniowanych przez firewall openwrt.



zmiana kolejnosci nic nie dała a kiedy przy tych wpisach:

iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys
iptables -A INPUT -i eth0.2 -m recent --name badguys --update --seconds 3600 -j DROP
iptables -A INPUT  -t filter -i eth0.2 -j DROP -m recent --set --name badguys


jest -I INPUT to blokuje mi dostep zewsząd hmm