Fórum Root.cz
Hlavní témata => Sítě => Téma založeno: fife 11. 11. 2010, 09:29:13
-
Prosim vas o radu.
mam linux firewall. nedavno sem menil IPcky cele site a zacal sa chovat aspon podle meho nazoru divne.
pro webovy servr mam povolene toto:
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 80 -j ACCEPT #http
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 8080 -j ACCEPT #http
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 443 -j ACCEPT #https
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 21 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 20 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 3306 -j ACCEPT #mysql
normalne mi to fungovavalo, ale ted mi absolutne nejde z toho stroju zaden url include, v podstate zadne nacteni z externych zdroju.
kdyz ten firewall vypnu, vsetko funguje jak ma, no ale to samozrejme neni reseni.
Dekuju moc za vase rady a zkusenosti.
-
Pokud to dobre chapu, tyhle pravidla povolují spojení zvenku do serveru. Kde mas pravidla, ktery povoluji spojeni ze serveru ven? Pokud je tam nemas a implicitni politika je DROP, tak cemu se divis?
-
komplet je to takto:
TAKTO TO JE:
#Vymazani FRONT
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
#DEFAULT POLICY
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
#ROUTER
iptables -A INPUT -p all -s localhost -j ACCEPT
iptables -A INPUT -p icmp -d X.X.X.X -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED --j ACCEPT
#smer ven
iptables -A FORWARD -p all -s X.X.X.X/aa -j ACCEPT #primar
#ICMP to X.X.X.X/aa
iptables -A FORWARD -p icmp -d X.X.X.X/aa -j ACCEPT
iptables -A FORWARD -p icmp -s X.X.X.X/aa -j ACCEPT
#webstroj
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 80 -j ACCEPT #http
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 8080 -j ACCEPT #http
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 443 -j ACCEPT #https
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 21 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 20 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d 1.2.3.4 --dport 3306 -j ACCEPT #mysql
-
Asi bude potreba spis popsat celou situaci - tj. napr:
* mam lokalni sit 192.168.2.0/24, v ni je webserver 192.168.2.12, spojeni se svetem obstarava router s IP 192.168.2.1
* telnet zvenku na webserver (ne)funguje
* telnet zvenku na router (ne)funguje
* telnet z webserveru kamkoli ven (ne)funguje
* telnet z jineho stroje v siti ven (ne)funguje
atd.
Prvne je potreba proverit asi tohle:
* nikde tam nevidim natovani - stroje ve vnitrni siti maji verejnou IP?!
* je na routeru vubec zapnuty forward? (cat /proc/sys/net/ipv4/ip_forward)
-
Chybí ti tam zásadní věc, něco takového:
iptables -A FORWARD -m state --state ESTABLISHED,RELATED --j ACCEPT
-
jedna se o sit A.B.2.0/26
- router, ktrery spaja se svetem A.B.2.2, dns nastavena lokalni + poskytovatele
- za nim jsou 2 web servry: A.B.2.21 a A.B.2.22 a DNS A.B.2.10
- dns server mydns
- kazdy stroj ma verejnou IP z na rozsahu C.
- cat /proc/sys/net/ipv4/ip_forward je na 1
firewall:
#Vymazani FRONT
iptables -F INPUT
iptables -F FORWARD
iptables -F OUTPUT
#DEFAULT POLICY
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
#ROUTER
iptables -A INPUT -p all -s localhost -j ACCEPT
iptables -A INPUT -p icmp -d A.B.2.0 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED --j ACCEPT
#smer ven
iptables -A FORWARD -p all -s A.B.2.0/26 -j ACCEPT #primar
#ICMP to X.X.X.X/aa
iptables -A FORWARD -p icmp -d A.B.2.0/26 -j ACCEPT
iptables -A FORWARD -p icmp -s A.B.2.0/26 -j ACCEPT
#dns
iptables -A FORWARD -p tcp -d A.B.2.10 --dport 53 -j ACCEPT
iptables -A FORWARD -p udp -d A.B.2.10 --dport 53 -j ACCEPT
#webstroj1
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 80 -j ACCEPT #http
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 8080 -j ACCEPT #http
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 443 -j ACCEPT #https
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 21 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 20 -j ACCEPT #ftp
iptables -A FORWARD -p tcp -d A.B.2.21 --dport 3306 -j ACCEPT #mysql
dtto pro webserver2 samozrejme s jinyma IP.
Bohuzel na me vysel spravit router, a priznam se, fakt nejsu doma v tychto vecech, takze varim z vody.
ping z venku, tak ze site jede korektne
-
Chybí ti tam zásadní věc, něco takového:
iptables -A FORWARD -m state --state ESTABLISHED,RELATED --j ACCEPT
Jo, to bude ono. Nebo taky iptables -P FORWARD ACCEPT
-
no tak pridal sem tam:
iptables -A FORWARD -m state --state ESTABLISHED,RELATED --j ACCEPT
a uz to jede.
ted mi vznika zasadni otazka, jaktoze to jelo asi rok i bez toho nez sem kompletne preipeckovaval sit.. hmm.
DEKUJU PREVELICE!!!