Firewall RedHat 8.0

Post Reply
Message
Author
ROLUX

Firewall RedHat 8.0

#1 Post by ROLUX »

Hallo zusammen,
bei mir läuft ein Rechner (delta.home.lan)als TDSL-Router/-Gateway mit einer Firewall:

----- schnipp -----
# Generated by iptables-save v1.2.6a on Fri Nov 15 18:13:32 2002
*nat
:PREROUTING ACCEPT [26:1503]
:POSTROUTING ACCEPT [3:252]
:OUTPUT ACCEPT [3:252]
[0:0] -A POSTROUTING -s 172.16.200.0/255.255.255.0 -o ppp+ -j MASQUERADE
COMMIT
# Completed on Fri Nov 15 18:13:32 2002
# Generated by iptables-save v1.2.6a on Fri Nov 15 18:13:32 2002
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
[10:700] -A INPUT -i lo -j ACCEPT
[0:0] -A INPUT -p tcp -m tcp --dport 113 -j REJECT --reject-with tcp-reset
[0:0] -A INPUT -i eth0 -s 172.16.200.13 -p tcp --sport 602: --dport 111 -j
ACCEPT
[0:0] -A INPUT -i eth0 -s 172.16.200.13 -p udp --sport 602: --dport 900: -j
ACCEPT
[0:0] -A INPUT -i eth0 -s 172.16.200.13 -p udp --sport 646: --dport 111 -j
ACCEPT
[0:0] -A FORWARD -o ppp0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
[0:0] -A FORWARD -i ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT
[0:0] -A OUTPUT -o eth0 -d 172.16.200.13 -p udp --sport 1024: --dport 634:
-j ACCEPT
[0:0] -A OUTPUT -o eth0 -d 172.16.200.13 -p udp --sport 111 --dport 600: -j
ACCEPT
[0:0] -A OUTPUT -o eth0 -d 172.16.200.13 -p tcp --sport 1011 --dport 900: -j
ACCEPT
[0:0] -A OUTPUT -o eth0 -d 172.16.200.13 -p tcp --sport 111 --dport 600: -j
ACCEPT
[10:700] -A OUTPUT -o lo -j ACCEPT
COMMIT
# Completed on Fri Nov 15 18:13:32 2002
------------- schnapp -----------------------

Mir kommen jetzt aber Zweifel an der Richtigkeit; Der Rechner soll ja nicht selbst ins Internet.
Da müsste doch alles mit der FORWARD Chain geregelt werden, oder?
Zwischen den clients und der FW arbeitet noch ein Proxy/Mailserver, der stellt ja eigentlich die Anfragen an die FW und erhält auch die Antworten. Da müssten doch die Protokolle http/https, ftp, pop3 und smtp durch die Forward-Chain, also die entsprechenden Ports (80, 21, 110, 25) freigegeben werden. Ist das richtig oder falsch?
Über eine Antwort würde ich mich freuen.
rolux

Slartibartfas

Re: Firewall RedHat 8.0

#2 Post by Slartibartfas »

Die Einstellungen sind so schon korrekt. Die FORWARD-Chain ist allerdings nicht auf die genannten Ports beschränkt, sondern Filtert anhand des Paketstatusses.

ROLUX

Re: Firewall RedHat 8.0

#3 Post by ROLUX »

Hallo Slartibartfas und Danke für den Hinweis.
Ich hab da mal ne Frage: MUSS die FW über ein script, daß jedesmal beim Hochfahren geladen wird, gestartet werden? Ich habe mir die für mich relevanten Regeln mal zusammengefaßt:

------------- schnipp ----------------

Muster - Firewall für Router/Gateway
Prinzip: Alles ablehnen, was nicht ausdrücklich erlaubt ist.
------------------------------------------------------------
Als "root" einloggen, mit [init 1] auf Runlevel 1 wechseln und auf der Konsole (bash) folgende Kommandos eingeben und jeweils mit [Enter] bestätigen.

# Schritt 1: Module laden
/sbin/modprobe iptables
/sbin/modprobe ip_conntrack
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_forward

# Schritt 2: Alte Einstellungen löschen
iptables -F

# Schritt 3: Grundeinstellung (Policies)
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP

# Schritt 4: IP-Chains erstellen

# Input-Chain
iptables -A INPUT -i lo -j ACCEPT # localhost
iptables -A INPUT -p tcp -s 194.25.2.129 --sport 53 --dport 1024: ! --syn -j ACCEPT #DNS T-Online
iptables -A INPUT -p udp -s 194.25.2.129 --sport 53 --dport 1024: -j ACCEPT
iptables -A INPUT -i eth0 -s 172.16.200.13 -p tcp --sport 602: --dport 111 -j ACCEPT # NFS-Import
iptables -A INPUT -i eth0 -s 172.16.200.13 -p udp --sport 602: --dport 900: -j ACCEPT
iptables -A INPUT -i eth0 -s 172.16.200.13 -p udp --sport 646: --dport 111 -j ACCEPT
iptables -A INPUT -p tcp --dport auth -j REJECT --reject-with --tcp-reset # FTP-Identifiktn.


# Forward-Chain
iptables -A FORWARD -o ppp0 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i ppp0 -p tcp --dport auth -j REJECT --rejectwith --tcp-reset
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

# Output-Chain
iptables -A OUTPUT -o lo -j ACCEPT # localhost
iptables -A OUTPUT -p udp --sport 1024: --dport 53 -j ACCEPT # DNS T-Online
iptables -A OUTPUT -p tcp --sport 1024: --dport 53 -j ACCEPT
iptables -A OUTPUT -o eth0 -d 172.16.200.13 -p udp --sport 1024: --dport 634: -j ACCEPT # NFS-Import
iptables -A OUTPUT -o eth0 -d 172.16.200.13 -p udp --sport 111 --dport 600: -j ACCEPT
iptables -A OUTPUT -o eth0 -d 172.16.200.13 -p tcp --sport 1011 --dport 900: -j ACCEPT
iptables -A OUTPUT -o eth0 -d 172.16.200.13 -p tcp --sport 111 --dport 600: -j ACCEPT

# Einträge sichern
service iptables save

------------- schnapp --------------------

Kann ich das so lassen? Wie gesagt, die Firewall-Maschine selbst soll nicht ins Internet und da laufen auch keine Server; sie soll mein kleines homenet nur einigermaßen schützen.

Gruß,
rolux

Post Reply