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



Witam. Mam taki problem odnośnie firewalla. Mam na jednym serwerze serwer squida oraz dansguardian'a
i firewalla. Skonfigurowałem sobie firewalla z przekierowaniem na porty dansguardiana ale jest problem z wyświetlaniem stron.
Konfig wygląda tak:
#!/bin/bash
function aktyw_polit_domyslna() {
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -P INPUT DROP
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
iptables -F -t nat
iptables -A INPUT -s 192.168.15.0/24 -p tcp --dport 22 -j ACCEPT
}
function zerowanie() {
echo "1" > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -F -t nat
####### POLITYKA DOMYSLNA
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
}
function nat() {
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.15.0/24 -j SNAT --to 192.168.115.13
}
function reguly() {
iptables -A FORWARD -s 192.168.15.0/24 -p udp --dport 53 -j ACCEPT
iptables -A FORWARD -s 192.168.15.0/24 -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3129
}Jak widać ostatnia linijka przekierowuje ruch z 80 na 3129 ( port dansguardian, port squida to 3128 )
I nie działa. Pingi przechodzą ale strony się nie otwierają.
Dopiero kiedy zmienię linijkę z polityki domyślnęj:
iptables -P INPUT DROP na iptables -P INPUT ACCEPT to wszystko śmiga. Ale wtedy odblokowuje cały INPUT.
Ma ktoś może jakiś pomysł??
Offline



Członek DUG
Może spróbuj dodać utrzymanie połączeń, które zostały nawiązane :
iptables -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED iptables -A OUTPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
Ostatnio edytowany przez ba10 (2013-11-14 16:23:05)
Offline




Imperator





Absolutnie nie dawał bym tego na wszystkie cele.
Offline


Użytkownik



Nawet jeśli to i tak nie pomogło. Nie bardzo wiem co może być nie tak.
Offline

Użytkownik


Odpal firefox i na sztywno wpisz w ustawieniach żeby używał proxy 3128 i sprawdź czy strony się wyświetlają będziesz wiedział ze squid jest ok
Potem na sztywno proxy 3129 i będziesz wiedział że dans + squid ok
Ja przekierowuje na dansa trochę inaczej, sprawdź może pomoże.
U ciebie powinno to mniej więcej wyglądać tak:
for iiii in `seq 2 254` do iptables -t nat -I PREROUTING -i eth1 -p tcp -s 192.168.15.$iiiii --dport 80 ! -d 192.168.15.0/24 -j DNAT --to-destination 192.168.15.1:3128 done
Offline







Podobno człowiek...;)








qlemik napisał(-a):
.....................
Ja przekierowuje na dansa trochę inaczej, sprawdź może pomoże.
U ciebie powinno to mniej więcej wyglądać tak:Kod:
for iiii in `seq 2 254` do iptables -t nat -I PREROUTING -i eth1 -p tcp -s 192.168.15.$iiiii --dport 80 ! -d 192.168.15.0/24 -j DNAT --to-destination 192.168.15.1:3128 done
@qlemik
Zabiłeś kotka. :D
Co to za gimnastyka z tą pętlą for?
Do pakowania 200 albo 200 000 adresów do jednej regułki służy w Netfilterze ipset.
Sznurki:
http://ipset.netfilter.org/
http://www.varlog.pl/2010/03/ipset-znany-i-nieznany/
Pomijając fakt, że do powyższego przypadku nawet Ipseta nie trzeba, wystarczy przestrzegać kolejności reguł, i najpierw przepuścić co trzeba,
a potem całą klasę adresową po masce np /24 wysłać na proxy przez DNAT.
Sznurki:
http://jacekalex.sh.dug.net.pl/Iptables-packet-flow.png
http://pl.wikibooks.org/wiki/Sieci_w_Linuksie/Netfilter/iptables
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2013-11-29 18:45:46)
Offline

Użytkownik


@Jacekalex
Zabiłeś kotka. :D
Co to za gimnastyka z tą pętlą for?
Dobre to ipset :)
Dzięki i Pozdrawiam
Offline







Podobno człowiek...;)








@qlemik
Co Ci przypomina, co Ci przypomina:
#!/bin/bash
ipset create peerblock hash:net maxelem 262144 2>/dev/null
curl -L "http://list.iblocklist.com/?list=bt_level1&fileformat=p2p&archiveformat=gz" |
gunzip |
cut -d: -f2 |
grep -E "^[-0-9.]+$" |
gawk '{print "add peerblock "$1}' |
ipset restore -exist
iptables -t raw -I OUTPUT -p tcp --match multiport ! --dports 80,443 -m set --match-set peerblock dst -j DROP
iptables -t raw -I PREROUTING -p tcp --match multiport ! --sports 80,443 -m set --match-set peerblock src -j DROPWidok straszliwy ten....
Odpal tego skrypta z roota, a potem policz adresy w tablicy, wyświetlone poleceniem:
ipset list peerblock
Przyjemnego liczenia. :DDD
Pozdro
;-)
Ostatnio edytowany przez Jacekalex (2013-11-15 12:22:03)
Offline