Freesco, NND, CDN, EOS http://forum.freesco.pl/ |
|
Blokowanie po restarcie firewalla http://forum.freesco.pl/viewtopic.php?f=34&t=18479 |
Strona 1 z 1 |
Autor: | Dayson [ niedziela, 23 stycznia 2011, 17:32 ] |
Tytuł: | Blokowanie po restarcie firewalla |
Witam, Chciałem dorobić jedną funkcjonalność do firewalla ale niestety po wykonaiu pliku mam Bad argument `192.168.32.13' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.57.6' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.36.5' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.34.5' Try `iptables -h' or 'iptables --help' for more information. pomimo że dobrze wyciąga adres IP z pliku. Co źle robię. Poniżej pliki Wpis w firewallu if [ $BLOKOWANIE = 1 ]; then stat_busy "Wlaczanie blokady adresow IP..." grep "^" /etc/iptables/65535.list | grep -v "^#"|grep [0123456789] |while read T TCP IP ; do $i -D PREROUTING -t nat -s $IP -p tcp --dport 1:65535 -j DNAT --to- 192.168.5.1:81 done fi Plik z danymi DNAT tcp -- 192.168.32.13 0.0.0.0/0 tcp dpts:1:65535 to:192.168.5.1:81 DNAT tcp -- 192.168.57.6 0.0.0.0/0 tcp dpts:1:65535 to:192.168.5.1:81 DNAT tcp -- 192.168.36.5 0.0.0.0/0 tcp dpts:1:65535 to:192.168.5.1:81 DNAT tcp -- 192.168.34.5 0.0.0.0/0 tcp dpts:1:65535 to:192.168.5.1:81 |
Autor: | Maciek [ niedziela, 23 stycznia 2011, 18:01 ] |
Tytuł: | |
Według mnie ta regułka nie jest dobrze napisana. Rozumiem, że chcesz podane w jakimś pliku IP zablokować i spowodować przekierowanie na serwer na port 81. Chyba powinno wyglądać to tak: iptables -t nat -I PREROUTING -s 192.168.0.20 -p tcp --dport 1:65535 -j DNAT --to 182.168.0.1:81 Taka regułę dodaje się podczas pracy firewalla, a więc -I, gdy będziesz chciał ja usunąć wtedy -D. |
Autor: | Dayson [ niedziela, 23 stycznia 2011, 18:32 ] |
Tytuł: | |
ten plik jest efektem polecenia więc te reguły już działają teraz testuję ich usuwanie poprze z -D a poźniej zmiana -D na -A i automatyczne dodawanie ich po restarcie firewalla |
Autor: | Maciek [ niedziela, 23 stycznia 2011, 19:27 ] |
Tytuł: | |
Nie bardzo rozumiem, co chcesz osiągnąć. Twoje polecenie wyświetli wszystkie reguły w których pojawia się port 65535, czyli wcześniej zablokowane IP, teraz chcesz je hurtem odblokować. OK to użyj -D. |
Autor: | Dayson [ niedziela, 23 stycznia 2011, 20:39 ] |
Tytuł: | |
Dobra opiszę zasadę bo może zacząłem od d... strony Korzystam z tablicy ogłoszeń i blokowania niepłacących użytkowników, ale niestety po każdym restarcie firewalla blokady są wymazywane (brak możliwości zrobienia tego w rc.local jak było do tej pory - bez rozstrzygania dlaczego). W związku z tym chciałem przerobić firewalla tak żeby w czasie wykonywania restartu zrzucał wszystkich zablokowanych do pliku 65535.list najpierw stop stop() { rm /etc/iptables/65535.list $i -L PREROUTING -t nat -n |grep 65535 >> /etc/iptables/65535.list $i -F INPUT $i -F FORWARD $i -F OUTPUT $i -P INPUT DROP $i -P FORWARD DROP $i -P OUTPUT DROP echo 0 > /proc/sys/net/ipv4/ip_forward stat_done pożniej start Wycinek z pliku /etc/rc.d/firewall if [ $BLOKOWANIE = 1 ]; then stat_busy "WĹ�Ä�czanie blokady adresĂłw IP..." grep "^" /etc/iptables/65535.list | grep -v "^#"|grep [0123456789] |while read TABLICA TCPUDP IP ; do $i -A PREROUTING -t nat -s $IP -p tcp --dport 1:65535 -j DNAT --to- 192.168.5.1:81 done fi Czyli ponowne wyciągnięcie adresów IP do blokowania z przed restartu firewalla. Ale przy wykonywaniu tego polecenia otrzymuję komunikat Bad argument `192.168.32.13' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.57.6' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.36.5' Try `iptables -h' or 'iptables --help' for more information. Bad argument `192.168.34.5' Try `iptables -h' or 'iptables --help' for more information. Mam nadzieję że teraz nie zagmatwałem jeszcze bardziej. |
Autor: | Maciek [ niedziela, 23 stycznia 2011, 21:14 ] |
Tytuł: | |
W firewallu dla CDN został dodany pewien element, który viater zrobił wcześniej w NND, gdy pakiet fail2ban się pojawił. Wcześniej kiedyś tak samo można było zrobić gdy MRTG pracowało na łańcuchu mrtg-trafic. Tak samo sobie można dopisać niceshapera. Generalnie chodzi o uruchomienie czegoś podczas restartu firewalla: restart() { stop start # sprawdzanie czy dziala fail2ban PIDFAIL2BAN=`ls /var/run/fail2ban |grep pid|wc -l` if [ "$PIDFAIL2BAN" = "1" ]; then service fail2ban restart fi } Zrób zestaw reguł blokujących poszczególne IP i uruchamiaj je osobnym poleceniem po firewallu. A podczas restartu, będziesz miał możliwość uruchomienia tego ponownie w sposób automatyczny. Na pewno będzie to prostsze i bardziej niezawodne niż to, co usiłujesz wymyślić. |
Autor: | Dayson [ niedziela, 23 stycznia 2011, 21:52 ] |
Tytuł: | |
Wydaje mi się że mnie nie rozumiesz, a sprawa z fail2ban niceshaper mrtg znam bo tak mam zrobione z mrtg i niceshaper że restarują się automatycznie z firewallem i tu sprawa jest jasna. Mój powyższy przykład też działa w 90% i już niech tak zostanie problem leży w tym że, grep "^" /etc/iptables/65535.list | grep -v "^#"|grep [0123456789] |[b]while read TABLICA TCPUDP IP[/b] ; do $i -A PREROUTING -t nat -s $IP -p tcp --dport 1:65535 -j DNAT --to- 192.168.5.1:81 while read TABLICA TCPUDP IP mimo że wyciąga z pliku adres IP wg formatu DNAT tcp -- 192.168.57.6 0.0.0.0/0 tcp dpts:1:65535 to:192.168.5.1:81 Bad argument `192.168.57.6' Try `iptables -h' or 'iptables --help' for more information. więc dlaczego jast Bad argument mimo że składnia adresu IP (zmienna $IP) jest w formacie 192.168.57.6 czyli adres do zmiennej $IP jest taki jak był go wpisał do polecenia ręcznie $i -A PREROUTING -t nat -s 192.168.57.6 -p tcp --dport 1:65535 -j DNAT --to- 192.168.5.1:81 |
Autor: | Maciek [ niedziela, 23 stycznia 2011, 22:26 ] |
Tytuł: | |
Masz zapewne jakąś literówkę lub błąd w skrypcie powodujący, że IP wstawia się ze spacją, albo jakimś innym znaczkiem. Jeśli wpisze taką regułkę z normalnym IP do działa (pod warunkiem, że -D ma co likwidować. |
Strona 1 z 1 | Strefa czasowa UTC+2godz. |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |