[Olug-list] hjelp: iptables oppsett

Espen Bø esse@world-online.no
Tue, 26 Aug 2003 22:52:59 +0200


Hei.
Kan noen hjelpe meg litt med iptables scriptet mitt. Jeg har prøvd og gi
tilgang til ftp, ssh og webserver inn til maskinen min fra internett. Men
jeg får det ikke til. Hvis jeg prøve og eks. ssh fra lokal win maskin til
internett ip på linux maskinen kommer jeg inn. Men hvis jeg prøver ssh fra
jobben til linux maskinen kommer jeg ikke inn...

Espen Bø
esse@world-online.no

root@bluebox:~# cat /etc/rc.d/rc.firewall
#!/bin/sh

#tømmer reglene
iptables --flush
iptables -t nat --flush

#dropper alt vi ikke har tillatt, frem til alle regler er på plass
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP


# aksepterer ikke noen "local ip" adresser inn fra Internett
iptables -A INPUT -s  192.168.0.0/16 -i ppp0 -j DROP
iptables -A INPUT -s  172.16.0.0/16  -i ppp0 -j DROP
iptables -A INPUT -s  10.0.0.0/8     -i ppp0 -j DROP
# godtar heller ikke localhost annet enn fra loopback
iptables -A INPUT -s  127.0.0.0/8    -i ! lo  -j DROP

# skal heller ikke sende "local ip" eller localhost ut på Internett
iptables -A OUTPUT -d  192.168.0.0/16 -o ppp0 -j DROP
iptables -A OUTPUT -d  172.16.0.0/16  -o ppp0 -j DROP
iptables -A OUTPUT -d  10.0.0.0/8     -o ppp0 -j DROP
iptables -A OUTPUT -d  127.0.0.0/8    -o ! lo  -j DROP

# Lar lokal nette få tilgang til serveren
iptables -A INPUT -i eth0 -s 192.168.0.0/24 -j ACCEPT
iptables -A OUTPUT -s 192.168.0.0/24 -j ACCEPT

# dropper inn på alle porter under 1024 som ikke er spesifikt åpnet
iptables -A INPUT -p tcp --dport   15:19   -i ppp0 -j DROP
iptables -A INPUT -p udp --dport   15:19   -i ppp0 -j DROP

# åpner for ftp-data, så jeg slipper å kjøre passiv ftp
iptables -A INPUT -p tcp --dport   21:42   -i ppp0 -j DROP
iptables -A INPUT -p udp --dport   21:42   -i ppp0 -j DROP

# åpner for whois
iptables -A INPUT -p tcp --dport   44:112   -i ppp0 -j DROP
iptables -A INPUT -p udp --dport   44:112   -i ppp0 -j DROP

# åpner for auth
iptables -A INPUT -p tcp --dport  114:1023  -i ppp0 -j DROP
iptables -A INPUT -p udp --dport  114:1023  -i ppp0 -j DROP

# slik at jeg slipper inn på noen ircservere som tror jeg kan ha noe
# windowshull(?) på denne porten
iptables -A INPUT -p tcp --dport 1080      -i ppp0 -j DROP
iptables -A INPUT -p udp --dport 1080      -i ppp0 -j DROP

# NAT ut på nettet
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# Deretter tillater vi ftp og ssh inn fra internett til linux-
# boksen din
iptables -v -A INPUT -i ppp0 -p tcp --tcp-flags SYN,ACK,RST SYN --dport
21 -j ACCEPT
iptables -v -A INPUT -i ppp0 -p tcp --tcp-flags SYN,ACK,RST SYN --dport
22 -j ACCEPT
#http port 80. webserver
iptables -v -A INPUT -i ppp0 -p tcp --tcp-flags SYN,ACK,RST SYN --dport
80 -j ACCEPT

# da er reglene på plass, så da åpner jeg opp igjen.
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

root@bluebox:~#