Emil 0 Zgłoś post Napisano Sierpień 4, 2008 Witam, chciałem firewalla pod serwer www do tego uzylem iptables. Tworze plik iptables_start a w nim: #!/bin/sh ############################################################################## # Nazwa i lokalizacja programu IPTABLES=iptables # Sciezka do pliku wykonywlanego PATH="/usr/sbin" # Adres serwera - naszego kompa SERWER="78.00.0.0" # Adres komputera z ktorego logujemy sie jako admin :) KOMP="82.00.0.0" # Przestrzen adresowa naszej sieci wewnetrzenej i karta ja obslugujace WEW_NET="0/0" WEW_DEV="eth0" # Adres wyjsciowy - zewnetrzny i karta obslugujaca ZEW_NET="0/0" # 0/0 wskazuje jakikolwiek adres IP ZEW_DEV="eth1" # Uslugi TCP,ktore chcemy przepuszczac - "" puste oznacza wszystkie porty # kolejne oddzielamy przecinkami TCP_IN="www,ssh,ftp-data,ftp" # 80,22,20,21 TCP_OUT="www,ftp,ftp-data,irc,ssh" # 80,21,20, ,22 # Uslugi UDP,ktore przepuszczamy - "" puste oznacza wszytskie porty # kolejne oddzielone przecinkami UDP_IN="443,465,995" UDP_OUT="" # Uslugi ICMP, ktore chcemy przepuszczac - "" puste oznacza wszystkie typy # kolejne oddzielone przecinkami ICMP_IN="" ICMP_OUT="" # Usuwamy poprzednie regoly $IPTABLES -F INPUT $IPTABLES -F FORWARD $IPTABLES -F OUTPUT # Ustawienie domyslnej polityki $IPTABLES -P INPUT DROP $IPTABLES -P OUTPUT ACCEPT $IPTABLES -P FORWARD DROP # Zapisujemy caly nasz ruch w logach $IPTABLES -A INPUT -j LOG -m limit --limit 15/hour # 15 logow na godzine $IPTABLES -A OUTPUT -j LOG -m limit --limit 15/hour $IPTABLES -A FORWARD -j LOG -m limit --limit 15/hour # Ladujemy mozliwosc sledzenia polaczen modprobe ip_conntarck modprobe ip_conntarck_ftp # Ochrona przed atakami typu Smurf echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts # Wlaczamy ochrone przed komunikacja ICMP error echo "1" > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses # Wlacza logowanie dziwnych pakietow (spoofed. source routed. redirects) echo "1" > /proc/sys/net/ipv4/conf/all/log_martians $IPTABLES -A INPUT -i lo -j ACCEPT $IPTABLES -A OUTPUT -o lo -j ACCEPT # Pozwalamy na korzstanie z protokolow w trybie passive on $IPTABLES -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT #echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all #$IPTABLES -A INPUT -p tcp -s $KOMP -m multiport --dport $TCP_IN -j ACCEPT # protokol tcp #$IPTABLES -A INPUT -p udp -s $KOMP -m multiport --dport $UDP_IN -j ACCEPT # protokol udp #$IPTABLES -A INPUT -p udp -s $KOMP --dport 137:139 -j ACCEPT # protokol udp $IPTABLES -A INPUT -i $WEW_DEV -s $SERWER -j DROP # atak Land $IPTABLES -A INPUT -s $KOMP -j ACCEPT Następnie włączamy porty DNS i WWW: iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p tcp --dport 80 -j ACCEPT iptables -A INPUT -p tcp --dport 53 -j ACCEPT iptables -A INPUT -p udp --dport 53 -j ACCEPT iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -j LOG iptables -A INPUT -j DROP Serwer SSH iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -j LOG iptables -A INPUT -j DROP FTP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p tcp --dport 21 -j ACCEPT iptables -A INPUT -p udp --dport 21 -j ACCEPT iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -j LOG iptables -A INPUT -j DROP Direct Admin iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p tcp --dport 2222 -j ACCEPT iptables -A INPUT -p tcp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p udp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -p icmp -j ACCEPT -m state --state ESTABLISHED iptables -A INPUT -j LOG iptables -A INPUT -j DROP Czy to dobra konfiguracja? Może ktoś ma swoją i się podzieli? Udostępnij ten post Link to postu Udostępnij na innych stronach