PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SuSEfirewall2 iptables ...



Los_Andros
27.06.02, 09:57
Hi Leute,
Ich hab meinen Server von SuSE 7.2 auf 8.0 rundumerneuert.

Jetzt habe ich leid2er einige Probleme mit meiner Firewall.
Also ich habe ein 192.168.1.0/24 privates Netz, von denen ich aus über meinen Router (ISDN Dialup, dynamische IP des ISP's) ins Internet gehen will. (ping usw. ins Internet vom Server aus funktioniert tadellos)

Also

einfachster Weg dachte ich mir SuSEfirewall2

FW_DEV_EXT="ippp0"
FW_DEV_INT="eth0"
FW_SERVICES_TCP_INT="http https ftp ssh pop3"
FW_SERVICES_TCP_EXT="http https ftp pop3"
FW_SERVICES_UDP_INT="domain"
FW_SERVICES_UDP_EXT="domain"
FW_ROUTE="yes"
FW_MASQUERADE="yes"
FW_MASQ_NETS="192.168.1.0/24"
FW_LOG_ACCEPT_CRIT="yes"
FW_LOG_DROP_CRIT="yes"
FW_PROTECT_FROM_INTERNAL="yes"
FW_AUTOPROTECT_SERVICES="yes"

tja, geht aber leider nicht, aber ich hab mal nen tail -f /var/log/messages gemacht und musste leider feststellen, dass die Packete (...DEFAULT_DROP) zwar ankommen, aber verworfen werden (von dem Client 192.168.1.3). Ich habe danach einfach mal alle Ports aufgemacht, aber sie werden immer noch verworfen, komisch irgendwie.


Jetzt dachte ich mir, also baue ich mir meine Firewall selbst (mit iptables).
Hier mal meine Idee, vielleicht könnte jemand mir behilflich sein, da ich mit Sicherheitsaspekten noch nicht ganz so gut vertraut bin:

Meine Netzwerkumgebung:
Client1 (192.168.1.2)
| Client2 (192.168.1.3)
| |
Router (192.168.1.1)
|
www


#!/bin/sh

#default policy
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

#erstmal alles löschen
iptables -F
iptables -t nat -F
iptables -X

#lokale Prozesse freigeben
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT

#ssh von eth0 erlauben (internes Netz)
iptables -A INPUT -i eth0 -p TCP --dport ssh -j ACCEPT
iptables -A OUTPUT -o eth0 -p TCP --sport ssh -j ACCEPT

#masquerading
echo "1" > /proc/sys/net/ipv4/ip_forward
echo "1" > /proc/sys/net/ipv4/ip_dynaddr
iptables -t nat -A POSTROUTING -o ippp0 -j MASQUERADE

#bestehende Verbindungen erlauben
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o ippp0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth0 -o ippp0 -m state --state ESTABLISHED,RELATED -j ACCEPT

#ICMP
iptables -A OUTPUT -p ICMP --icmp-type echo-request -j ACCEPT
iptables -A INPUT -i eth0 -p ICMP --icmp-type echo-request -j ACCEPT

#DNS
iptables -A FORWARD -o ippp0 -p UDP --dport domain -j ACCEPT
iptables -A FORWARD -o ippp0 -p TCP --dport domain -j ACCEPT

#HTTP, HTTPS
iptables -A FORWARD -o ippp0 -p TCP --dport http -j ACCEPT
iptables -A FORWARD -o ippp0 -p TCP --dport https -j ACCEPT

#FTP
iptables -A FORWARD -o ippp0 -m state NEW -p TCP --dport ftp -j ACCEPT
iptables -A FORWARD -o ippp0 -m state NEW --sport 1024: --dport 1024: -j ACCEPT



So, ich würde mich auf Hilfen freuen, bzw. ob das so überhaupt funktioniert (eigenes Firewallscript wäre mir nämlich um einiges lieber als die SuSEfirewall2, falls aber auch jemand dort den Fehler findet, Danke, Danke, Danke)

Viele Grüße