Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
 Użytkownik
	
Mam problem ze skryptem firewall, generalnie działa jak się go uruchomi na działającym serwerze przez /etc/init.d/ firewall ale po restarcie serwera dostaje głupawki, bo nie podaje adresów do dhcp. Proszę zajrzyjcie do kodu, czekam na wszelkie sugestie.
#!/bin/bash #komunikacja miedzy interfejsami #echo "1" >/proc/sys/net/ipv4/ip_forward #/sbin/modprobe ip_conntrack_ftp # modul FTP echo 1 > /proc/sys/net/ipv4/tcp_syncookies echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter echo 0 > /proc/sys/net/ipv4/conf/all/proxy_arp echo 1 > /proc/sys/net/ipv4/ip_forward echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo 1 > /proc/sys/net/ipv4/conf/all/log_martians echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses echo 1 > /proc/sys/net/ipv4/conf/all/send_redirects echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects #CZYSZCZENIE regół iptables -F -t filter iptables -X -t nat iptables -F -t filter iptables -X -t nat #POLITYKA DROP iptables -P INPUT DROP #blokowanie wejscia do serwera iptables -P FORWARD DROP #blokowanie komunikacji sieć<--->Internet iptables -P OUTPUT DROP #blokowanie ruchu wychodzącego z serwera #wpuszczamy wszystko na interfejsie lokalnym iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT iptables -A FORWARD -o lo -j ACCEPT #POLACZENIA NAWIAZANE iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT #iptables -A INPUT -m state --state INVALID -j ACCEPT #######DLA SERWERA######### #Petla zwrotna #iptables -A OUTPUT -d 127.0.0.1/8 -j ACCEPT #komunikacja petla-->system #iptables -A INPUT -s 127.0.0.1/8 -j ACCEPT #komunikacja system-->petla #DHCP IPTABLES -I INPUT -i eth1 -p tcp --dport 67:68 --sport 67:68 -j ACCEPT IPTABLES -I INPUT -i eth1 -p udp --dport 67:68 --sport 67:68 -j ACCEPT IPTABLES -I OUTPUT -i eth1 -p tcp --dport 67:68 --sport 67:68 -j ACCEPT IPTABLES -I OUTPUT -i eth1 -p udp --dport 67:68 --sport 67:68 -j ACCEPT #NETBIOS #iptables -A INPUT -p UDP -s 192.168.0.0/24 --dport 137 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A INPUT -p UDP -s 192.168.0.0/24 --dport 138 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A INPUT -p TCP -s 192.168.0.0/24 --dport 139 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A INPUT -p TCP -s 192.168.0.0/24 --dport 445 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -p TCP -d 192.168.0.0/24 --sport 137 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -p TCP -d 192.168.0.0/24 --sport 138 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -p TCP -d 192.168.0.0/24 --sport 139 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -p TCP -d 192.168.0.0/24 --sport 445 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #DNS iptables -A INPUT -p TCP --sport 53 -j ACCEPT iptables -A INPUT -p UDP --sport 53 -j ACCEPT iptables -A OUTPUT -p TCP --dport 53 -j ACCEPT iptables -A OUTPUT -p UDP --dport 53 -j ACCEPT #HTTP #iptables -A INPUT -p TCP --sport 80 -j ACCEPT #iptables -A INPUT -p UDP --sport 80 -j ACCEPT #iptables -A OUTPUT -p TCP --dport 80 -j ACCEPT #iptables -A OUTPUT -p UDP --dport 80 -j ACCEPT #PROXY #iptables -A INPUT -m multiport -p TCP --dport 3128 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A INPUT -m multiport -p UDP --dport 3128 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -m multiport -p TCP --sport 3128 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -A OUTPUT -m multiport -p UDP --sport 3128 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT #iptables -t nat -A PREROUTING -i ath0 -p TCP -m tcp --dport 80 -j REDIRECT --to-ports 3128 #FTP #/sbin/iptables -A INPUT -p TCP -m state --state ESTABLISHED --sport 21 -j ACCEPT #/sbin/iptables -A INPUT -p TCP -m state --state ESTABLISHED,RELATED --sport 20 -j ACCEPT #/sbin/iptables -A OUTPUT -p TCP -m state --state NEW,ESTABLISHED --dport 21 -j ACCEPT #/sbin/iptables -A OUTPUT -p TCP -m state --state ESTABLISHED --dport 20 -j ACCEPT #SSH iptables -A INPUT -p TCP --dport 22 -j ACCEPT iptables -A OUTPUT -p TCP --sport 22 -j ACCEPT #PINGI iptables -A INPUT -p ICMP -j ACCEPT iptables -A OUTPUT -p ICMP -j ACCEPT #######DLA SIECI####### # logowanie połączeń tylko na tcp iptables -I FORWARD -p tcp --syn -j ULOG --ulog-nlgroup 1 # logowanie połączeńtcp i udp #iptables -t nat -A PREROUTING -i eth1 -m state --state NEW -j ULOG #DNS iptables -A FORWARD -p TCP -s 192.168.0.0/24 -d 0/0 --dport 53 -j ACCEPT iptables -A FORWARD -p TCP -d 192.168.0.0/24 -s 0/0 --sport 53 -j ACCEPT iptables -A FORWARD -p UDP -s 192.168.0.0/24 -d 0/0 --dport 53 -j ACCEPT iptables -A FORWARD -p UDP -d 192.168.0.0/24 -s 0/0 --sport 53 -j ACCEPT iptables -A INPUT -p tcp --dport 53 -j ACCEPT iptables -A INPUT -p udp --dport 53 -m state --state NEW -j ACCEPT #HTTP iptables -A FORWARD -p TCP -s 192.168.0.0/24 -d 0/0 --dport 80 -j ACCEPT iptables -A FORWARD -p TCP -d 192.168.0.0/24 -s 0/0 --sport 80 -j ACCEPT iptables -A FORWARD -p UDP -s 192.168.0.0/24 -d 0/0 --dport 80 -j ACCEPT iptables -A FORWARD -p UDP -d 192.168.0.0/24 -s 0/0 --sport 80 -j ACCEPT #SSL iptables -A FORWARD -p TCP -s 192.168.0.0/24 -d 0/0 --dport 443 -j ACCEPT iptables -A FORWARD -p TCP -d 192.168.0.0/24 -s 0/0 --sport 443 -j ACCEPT iptables -A FORWARD -p UDP -s 192.168.0.0/24 -d 0/0 --dport 443 -j ACCEPT iptables -A FORWARD -p UDP -d 192.168.0.0/24 -s 0/0 --sport 443 -j ACCEPT #POP3 and SMTP iptables -A FORWARD -p TCP -s 192.168.0.0/24 -d 0/0 --dport 110 -j ACCEPT iptables -A FORWARD -p UDP -d 192.168.0.0/24 -s 0/0 --dport 110 -j ACCEPT iptables -A FORWARD -p TCP -s 192.168.0.0/24 -d 0/0 --dport 25 -j ACCEPT #FTP iptables -A FORWARD -m multiport -p TCP -m state --state NEW,ESTABLISHED --dport 21 -j ACCEPT iptables -A FORWARD -m multiport -p TCP -m state --state NEW,ESTABLISHED --dport 20 -j ACCEPT iptables -A FORWARD -m multiport -p TCP -m state --state NEW,ESTABLISHED,RELATED --sport 20 -j ACCEPT iptables -A FORWARD -m multiport -p TCP -m state --state NEW,ESTABLISHED,RELATED --sport 21 -j ACCEPT #PINGI iptables -A FORWARD -p ICMP -j ACCEPT -m state --state NEW,ESTABLISHED,RELATED #BLOK LAN<--->LAN #iptables -A FORWARD -i eth0 -d 192.168.0.0/24 -j DROP # przekierowanie portu 3389 iptables -t nat -I PREROUTING -p tcp -s 0/0 -d 0/0 --dport 3389 -j DNAT --to 192.168.0.39
Ostatnio edytowany przez jtyson (2011-06-18 10:35:44)
Offline
 Użytkownik
	
Może trochę zaspany jestem, ale co dokładnie oznacza "nie podaje adresów do dhcp" ?
1. W sieci działa serwer dhcp i chcesz pakiety dhcp przekazać przez serwer do innej sieci (coś a`la relay agent)
2. Twój serwer pełni rolę dhcp-a i nie przydziela adresów po restarcie ?
A skoro już napisałem, to może co nieco dopiszę
Chyba przerabiałeś jakiegoś gotowca:
echo 0 > /proc/sys/net/ipv4/conf/all/proxy_arp echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
zdaje mi się, że te wartości już mają domyślnie takie wartości.
wykonujesz dwa razy te same czynności:
iptables -F -t filter iptables -X -t nat iptables -F -t filter iptables -X -t nat
raz piszesz "iptables", innym razem "/sbin/iptables". Na początku możesz wstawić:
iptables=/sbin/iptables
#iptables -A INPUT -m state --state INVALID -j ACCEPT
powyższa linijkę zamień na:
iptables -A INPUT -m state --state INVALID -j DROP iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A INPUT -p TCP --sport 53 -j ACCEPT
Serwer pełni rolę serwer DNS ? Wymieniasz strefy z innymi serwerami DNS ? Po iptablesie można pomyśleć, że serwer "działa i nie działa" jako DNS (input, output i forward puszczony ;/)
dyrektywa "multiport" oznacza, że można  podać kilka portów - nie ma sensu kopiować kolejnych wierszy
iptables -A FORWARD -p ICMP -j ACCEPT -m state --state NEW,ESTABLISHED,RELATED
analogicznie jak wcześniej 
iptables -A FORWARD -p icmp -j ACCEPT
jtyson napisał(-a):
#CZYSZCZENIE regół
"reguł" lub "rules" ;/
Ostatnio edytowany przez haczyk (2011-06-18 21:36:16)
Offline
 Użytkownik
	
Wczorajszy post pisałem trochę po łebkach, więc opisze o co mi chodzi. W temacie iptables dosłownie raczkuję. 
Jeśli chodzi o serwer to:
1. udostępnia internet dla sieci lokalnej.
2. przydziela adresy z dhcp po MAC koputera klienta
3. jest serwerem DNS (utrzymuje domenę tylko wewnętrznie na potrzeby biura, np. biuro.pl i do niej jest podpięte kilka poddomen poczta.biuro.pl, tools.biuro.pl itd. ) i jednocześnie przekazuje zapytania dns dla sieci z Internetu.
4. Loguje połączenia z sieci LAN ze światem - ulog.
A w kwestii działania po restarcie:
- adresy z dhcp nie idą, ip wpisane statycznie działa z siecią ale nie ma neta
I to prawda że przerabiałem go z gotowca. A firewall ma blokować wszystko oprócz tego co jest niezbędne do podstawowej pracy w internecie.
Dziękuję i czekam na dalsze wskazówki.
Ostatnio edytowany przez jtyson (2011-06-19 11:41:57)
Offline


 Członek DUG
	


#DNS iptables -A INPUT -p TCP --sport 53 -j ACCEPT iptables -A INPUT -p UDP --sport 53 -j ACCEPT iptables -A OUTPUT -p TCP --dport 53 -j ACCEPT iptables -A OUTPUT -p UDP --dport 53 -j ACCEPT
A po co TCP przy DNSie
Offline
 Użytkownik
	
hello_world napisał(-a):
A po co TCP przy DNSie
FYI: jeśli serwer DNS wymienia się strefami z innymi serwerami to korzysta z protokołu TCP
#!/bin/bash
modprobe ip_conntrack_ftp # modul FTP
#tego nie sprawdzałem już ;/
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
echo 1 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/all/proxy_arp
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo 1 > /proc/sys/net/ipv4/conf/all/log_martians
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses
echo 1 > /proc/sys/net/ipv4/conf/all/send_redirects
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects
not_free () {
#czyszczenie wszystkich łańcuchów i ustawienie domyslnej polityki na DROP
      iptables -F
      iptables -X
      iptables -Z
      iptables -F -t nat
      iptables -X -t nat
      iptables -F -t mangle
      iptables -X -t mangle
      iptables -P INPUT DROP
      iptables -P OUTPUT DROP
      iptables -P FORWARD DROP
} 
all (){
#loopback
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
#pingi
iptables -A INPUT -p icmp -j ACCEPT
iptables -A FORWARD -p icmp -j ACCEPT
iptables -A OUTPUT -p icmp -j ACCEPT
#można by od razu puścić znany ruch - ssh,www,ssl
iptables -A INPUT -j ACCEPT -m state --state NEW -p tcp -m multiport --destination-ports 22,80,443
#blokowanie pakietow uszkodzonych - ewentualnie można dodać bogon
iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A INPUT -f -j DROP
iptables -A FORWARD -f -j DROP
#DNSy
iptables -A INPUT -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -p UDP -s 192.168.0.0/24 -d 0/0 --dport 53 -j ACCEPT
#chyba netbios jest niepotrzebny, proxy miałeś skomentowane, więc nie patrzyłem na to
#logowanie - widziałem, że puszczasz tam ruch na porcie 25. Na Twoim miejscu byłbym wrednym adminem logował ten ruch i 
blokował go...
iptables -A FORWARD -p tcp --dport 25 -m state --state NEW -j LOG --log-prefix "SPAM"
iptables -A FORWARD -p tcp --dport 25 -m limit --limit 1/second --limit-burst 5 -j LOG --log-level info --log-prefix 
"SPAM"
#W zasadzie nie wiem czy masz stałe czy zmienne IP zewnątrzne. Ale przyjmijmy, że stałe
#NAT
C1="2 3 4 5 6 7 8 9 10"
   for i in $C1
        do
        IP="192.168.0.$i"
        iptables -t nat -A POSTROUTING -o $INTERNET_ETH -p all -s $IP -j SNAT --to [ip_zewnatrzne]
        done
        
#skoro ma FTP działać to możnaby tu wrzucić regułkę
iptables -A FORWARD -o eth0 -p TCP --dport 20 -j ACCEPT #ftp-data
iptables -A FORWARD -o eth0 -p UDP --dport 20 -j ACCEPT #ftp-data
iptables -A FORWARD -o eth0 -p TCP --dport 21 -j ACCEPT #ftp
iptables -A FORWARD -o eth0 -p UDP --dport 21 -j ACCEPT #ftp
iptables -A FORWARD -o eth0 -p TCP --dport 110 -j ACCEPT #POP
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
#blokowanie innego ruchu
iptables -A INPUT -p tcp -i eth0 -j REJECT --reject-with tcp-reset
iptables -A INPUT -p udp -i eth0 -j REJECT --reject-with icmp-port-unreachable
#puszczanie ruchu wychodzącego z serwera (nie mylić z "przechodzącym przez serwer")
    iptables -A OUTPUT -o eth0 -j ACCEPT  
    iptables -A OUTPUT -o eth1 -j ACCEPT 
#tylko jedna rzecz mnie zastanawia - cały ruch puszczasz przez host w sieci lokalnej (192.168.0.39) ?
}
free() {
      iptables -F
      iptables -X
      iptables -Z
      iptables -F -t nat
      iptables -X -t nat
      iptables -F -t mangle
      iptables -X -t mangle
      iptables -P FORWARD ACCEPT
      iptables -P INPUT ACCEPT
      iptables -P OUTPUT ACCEPT
} 
# ------------- { start | stop } ---------------
case "$1" in
    start)
    echo -n "Czyszcze tablice firewalla: "
        not_free
        echo "[OK]"
        echo -n "Startuje firewalla: "
        all    
        echo "[OK]" 
    ;;
    stop)
        echo -n "Zatrzymuje firewalla: "
        free
        echo "[OK]" 
    ;;
    *)
    echo "Sposob uzycia: /etc/init.d/iptables { start | stop }"
    exit 1
    ;;
esacjtyson napisał(-a):
- adresy z dhcp nie idą, ip wpisane statycznie działa z siecią ale nie ma neta
może NAT nie działał
edit: mile widziane poprawki bardziej doświadczonych użytkowników, bo wydaje mi się, że o czymś zapomniałem w tym kodzie ;/
Ostatnio edytowany przez haczyk (2011-06-19 21:32:23)
Offline


 Członek DUG
	


3. jest serwerem DNS (utrzymuje domenę tylko wewnętrznie na potrzeby biura, np. biuro.pl i do niej jest podpięte kilka poddomen poczta.biuro.pl, tools.biuro.pl itd. ) i jednocześnie przekazuje zapytania dns dla sieci z Internetu.
Wydaje mi się że twoich lokalnych stref to on nie wymienia
Offline
 Użytkownik
	
@hello_world
dlatego napisałem w kodzie (bez TCP):
iptables -A INPUT -p udp --dport 53 -j ACCEPT iptables -A FORWARD -p UDP -s 192.168.0.0/24 -d 0/0 --dport 53 -j ACCEPT
w pierwszym poście w tym temacie też pytałem o tą kwestię ;]
Offline
 Użytkownik
	
Dziękuję za poświęcony mi czas i zdrowie, zaraz zabieram się za sprawdzanie czy działa. Dziękuje pięknie za pomoc. Odezwę się jak będe wiedział co i jak.
Offline
 Użytkownik
	
#tylko jedna rzecz mnie zastanawia - cały ruch puszczasz przez host w sieci lokalnej (192.168.0.39) ?
Nie puszczam całego ruchu, chodziło mi o przekierowanie zdalnego pulpitu do kompa wewnątrz sieci ;-) ale coś powaliłem.
#logowanie - widziałem, że puszczasz tam ruch na porcie 25. Na Twoim miejscu byłbym wrednym adminem logował ten ruch i blokował go... iptables -A FORWARD -p tcp --dport 25 -m state --state NEW -j LOG --log-prefix "SPAM" iptables -A FORWARD -p tcp --dport 25 -m limit --limit 1/second --limit-burst 5 -j LOG --log-level info --log-prefix "SPAM"
W tym fragmencie blokujemy rozsyłanie spamu np. przez wirusy??
#W zasadzie nie wiem czy masz stałe czy zmienne IP zewnętrzne. Ale przyjmijmy, że stałe
#NAT
C1="2 3 4 5 6 7 8 9 10"
   for i in $C1
        do
        IP="192.168.0.$i"
        iptables -t nat -A POSTROUTING -o $INTERNET_ETH -p all -s $IP -j SNAT --to [ip_zewnatrzne]
        doneNie spotkałem się z takim kodem w czasie mojej krótkiej edukacji z iptables. IP mam z puli publicznej , stałe.
Do czego służy ta pętla for?
A jeśli chodzi o ftp to będzie przekierowany do hosta w sieci LAN.
Ostatnio edytowany przez jtyson (2011-06-20 08:06:06)
Offline
 Użytkownik
	
jeśli chodzi o przekierowanie zdalnego pulpitu - chcesz z zewnątrz móc wejść na maszynę 192.168.0.39 przez zdalny pulpit ?
 
Co do spamu: ten kod logowałby cały ruch na porcie 25. Jako, że w iptables nie definiowałem co z ruchem na porcie 25, więc pakiety wpadną w politykę domyślną (iptables -P FORWARD DROP). Ale oczywiście nic nie stoi na przeszkodzie aby dodać (dla pewności) po tym logowaniu 
iptables -A FORWARD -p tcp -s 192.168.0.0/24 --dport 25 -j DROP
, co zdropuje wszystkie pakiety na porcie 25/tcp. Czasem może się zdarzyć, że jakiś user złapie robaczka/wiruska i wtedy szkoda by było puścić taki ruch ;/
W zasadzie ta pętla for pochodzi  z basha. Najważniejsze w tej pętli jest
iptables -t nat -A POSTROUTING -o $INTERNET_ETH -p all -s $IP -j SNAT --to [ip_zewnatrzne]
co oznacza, że adresy z puli 192.168.0.2-10 będą wypuszczane ("snatowane"- nie wiem czy jest takie słowo w ogóle) na zewnątrz przez adres zewnętrzny [ip_zewnetrzne].
FTP - jeśli będzie przekierowany na adres lokalny to chyba lepiej nie wypuszczać tego na zewnątrz.
Ostatnio edytowany przez haczyk (2011-06-20 09:33:49)
Offline
 Użytkownik
	
Tak z zewnątrz chce mieć dostęp do hosta 192.168.0.39.
A jeśli chodzi o snat to nie bawiłem się jeszcze takim rozwiązaniem. Zawsze robiłem maskaradę. A zrobienie snat w ten sposób udostępni mi neta dla całej sieci lan?? W sieci mam około 90 klientów.
Offline







 Podobno człowiek...;)
	







Dostęp z netu do hosta 192.168.0.39 - to tylko DNAT, zamiast SNAT powinna wystarczyć maskarada.
Ewentualnie można użyć tez SNAT, poszukaj na necie instrukcji na hasło Postfix za NAT, znajdziesz najlepsze przykłady, jak to zrobić.
Sznurki:
http://pl.wikibooks.org/wiki/Sieci:Linux/Netfilter/iptables/akcje#DNAT
http://pl.wikibooks.org/wiki/Sieci:Linux/Netfilter/iptables/akcje#SNAT
Offline
 Użytkownik
	
"puszczenie ssh" przez serwer mogło by być realizowane mniej więcej tak:
iptables -A FORWARD -p tcp -d [ip_zew] --dport 22 -j ACCEPT iptables -t nat -A PREROUTING -p tcp -i eth0 -d 0/0 --dport 22 -j DNAT --to [ip_host]
Najpierw w łańcuchu forward trzeba otworzyć port, później w preroutingu to co wchodzi na "jakiś" port ma być przerzucane na host.
Ciekawy temat na dug-u
Dlatego pytałem wcześniej czy masz stałe IP.
NAT może być realizowany na dwa sposoby (oczywiście jest więcej metod, ale nie rozdrabniajmy się). SNAT wykorzystuje się przy stałym IP zewnętrznym, Masq przy zmiennym IP.
man iptables:
MASQUERADE This target is only valid in the nat table, in the POSTROUTING chain. It should only be used with dynamically assigned IP (dialup) connections: if you have a static IP address, you should use the SNAT target. Masquerading is equivalent to specifying a mapping to the IP address of the interface the packet is going out, but also has the effect that connections are forgotten when the interface goes down. This is the correct behavior when the next dialup is unlikely to have the same interface address (and hence any established connections are lost anyway).
Ostatnio edytowany przez haczyk (2011-06-20 12:27:07)
Offline
 Użytkownik
	
Dobra właśnie zakończyłem sprawdzanie działania nowego skryptu firewall. Trochę go zmieniłem przy pętli z SNAT ale poza tym śmiga aż miło, Haczyk dzięki wielkie za pomoc.
Offline