( Husi | 2006. 07. 27., cs – 11:19 )

átfaragtam a konfigom az itt említett alapján, de csaknem akar rendesen menni. A levelezés a klienseknél nem működik ( külső mail szervert nem érnek el), és egyes, főleg külföldi oldalak amik eddig bejöttek nem jönnek be. pölö microsoft.com, scan.sygate.com de az origo, meg az index simán jön....

Mit böktem el?

eth0 belső háló eth1 ppp0 külső háló, a gép közvetlenül csatlakozik a nethez. Ping terén a linuxos gép is ugyanúgy viselkedik, mint a kliensek. ping origo.hu jön válasz, ping microsoft.com névfeloldás ok, válasz nincs. (route tábla rendben.)

IP: 192.168.0.1 a belső háló felé
futó szervizek: ssh, apache, mysql, ftp néha

#!/bin/sh

echo "Starting firewall"
external_ip="`ifconfig ppp0 |grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"
echo " External IP: $external_ip"

echo 1 > /proc/sys/net/ipv4/ip_forward
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp

iptables -Z
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -P INPUT DROP
iptables -P FORWARD DROP

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
#iptables -t nat -A PREROUTING -i ppp0 -s eth0 -p tcp --dport 80 -j REDIRECT --to-ports 3128

iptables -A INPUT -i ppp0 -p icmp --icmp-type echo-request -m limit --limit 16/s -j ACCEPT
iptables -A INPUT -p tcp --syn -m limit --limit 8/s -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP
iptables -A INPUT -m state --state ! INVALID -j ACCEPT
#iptables -A INPUT -j LOG --log-level warning

for i in 21 22 25 53 80 110 123 139 443 1863
do
iptables -A INPUT -i ppp0 -p tcp --dport $i -m state --state ! INVALID -j ACCEPT
done

for i in 21 22 25 53 80 110 123 443 1863
do
iptables -A INPUT -i ppp0 -p udp --dport $i -m state --state ! INVALID -j ACCEPT
done

for i in 21 22 25 53 80 110 123 139 443 1863
do
iptables -A INPUT -i eth0 -p tcp --dport $i -m state --state ! INVALID -j ACCEPT
done

for i in 21 22 25 53 80 110 123 443 1863
do
iptables -A INPUT -i eth0 -p udp --dport $i -m state --state ! INVALID -j ACCEPT
done

iptables -I FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
iptables -A FORWARD -i ppp0 -m state --state ! INVALID -j ACCEPT
iptables -A FORWARD -p tcp ! --syn -m state --state NEW -j DROP
iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 16/s -j ACCEPT
iptables -A FORWARD -p icmp --icmp-type echo-request -j DROP
iptables -A FORWARD -p icmp -j ACCEPT

iptables -A OUTPUT -j ACCEPT
echo 'Done'

1863-as port elvileg a messengernek kell m$ oldal alapján...