Dennis Wronka
Soulcollector
So, auf die schnelle erstmal einen Link zu meinem kleinen IPTables Tutorial.
Wenn ich meine Pizza auf hab gibt's hier dann auch noch eine kurze Erklaerung zu den von Dir geposteten Zeilen.
So, los gehts:
Erstmal allgemeines zum Format.
Die Zeilen die mit : beginnen beziehen sich auf die Ketten die IPTables bietet, hier INPUT, FORWARD und OUTPUT, welche die Standard-Ketten fuer den Paketfilter sind.
Andere Ketten findest Du z.B. ueber die Tabellen NAT und Mangle, dort gibt es dann auch noch z.B. PREROUTING und POSTROUTING.
Details dazu findest Du auch im bereits zuvor verlinkten Tutorial.
In diesen Zeilen wird die Default-Policy (hier ACCEPT) und der Paketzaehler ([0:0]) gesetzt.
Der Name der Ketten steht fuer die Richtung der Pakete. INPUT behandelt Pakete die reinkommen, OUTPUT Pakete die rausgehen. Pakete die durch den Rechner hindurchgeroutet werden laufen durch FORWARD.
Zu den abgebildeten Regeln. Das Format entspricht dem Aufruf von IPTables.
Auf der Kommandozeile aufgerufen wuerde die erste Zeile also so aussehen:
Meiner Meinung nach ist es aber besser mit dem Loopback-Device zu arbeiten da eine IP ja auch gefaelscht werden kann.
Ich faende hier also -A INPUT -i lo -j ACCEPT besser.
Die Frage ist nun ob auf dem Rechner irgendein Dienst auf diesem Port lauscht oder ob dieser Port freigegeben ist damit Du ICQ nutzen kannst. Falls letzteres der Fall sein sollte ist diese Regel unnoetig.
Letzteres ist z.B. bei FTP der Fall, dort werden 2 Verbindungen genutzt.
Meiner Meinung nach sollte diese Regel weiter oben genutzt werden, wichtig ist dies aber nicht.
Der grosse Nutzen dieser Regel ist dass alles was Du haben willst auch rein darf.
Ohne diese Regel muesstest Du im Grunde Traffic auf allen Ports > 1024 erlauben, da dies die Ports sind die zur Kommunikation nach draussen genutzt werden.
Wenn beides nicht der Fall ist dann kannst Du nichtmal surfen da die Antwort-Pakete auf Deinen Anfragen nicht reingelassen werden.
Besser waere es hier meiner Meinung nach RFC-konform zu arbeiten und z.B. TCP-Pakete mit einem TCP-Reset zu beantworten, etc. Dazu gibt es, wenn ich mich recht erinnere, mehr in meinem Tutorial.
Wenn ich meine Pizza auf hab gibt's hier dann auch noch eine kurze Erklaerung zu den von Dir geposteten Zeilen.
So, los gehts:
Erstmal allgemeines zum Format.
Die Zeilen die mit : beginnen beziehen sich auf die Ketten die IPTables bietet, hier INPUT, FORWARD und OUTPUT, welche die Standard-Ketten fuer den Paketfilter sind.
Andere Ketten findest Du z.B. ueber die Tabellen NAT und Mangle, dort gibt es dann auch noch z.B. PREROUTING und POSTROUTING.
Details dazu findest Du auch im bereits zuvor verlinkten Tutorial.
In diesen Zeilen wird die Default-Policy (hier ACCEPT) und der Paketzaehler ([0:0]) gesetzt.
Der Name der Ketten steht fuer die Richtung der Pakete. INPUT behandelt Pakete die reinkommen, OUTPUT Pakete die rausgehen. Pakete die durch den Rechner hindurchgeroutet werden laufen durch FORWARD.
Zu den abgebildeten Regeln. Das Format entspricht dem Aufruf von IPTables.
Auf der Kommandozeile aufgerufen wuerde die erste Zeile also so aussehen:
Code:
iptables -A INPUT -d 127.0.0.1 -j ACCEPT
Hier werden alle Pakete akzeptiert die als Zieladdresse 127.0.0.1 haben.-A INPUT -d 127.0.0.1 -j ACCEPT
Meiner Meinung nach ist es aber besser mit dem Loopback-Device zu arbeiten da eine IP ja auch gefaelscht werden kann.
Ich faende hier also -A INPUT -i lo -j ACCEPT besser.
Diese Regel erlaubt eingehende Pakete auf TCP-Port 5190. Laut /etc/services ist dies AOL. Meine Erinnerung sagt mir dass ICQ ueber diesen Port laeuft.-A INPUT -p tcp -m tcp --dport 5190 -j ACCEPT
Die Frage ist nun ob auf dem Rechner irgendein Dienst auf diesem Port lauscht oder ob dieser Port freigegeben ist damit Du ICQ nutzen kannst. Falls letzteres der Fall sein sollte ist diese Regel unnoetig.
Dies ist die Regel die Du suchst, denn hier wird Zugriff auf TCP-Port 22, den SSH-Server, erlaubt.-A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
Hier wird Zugriff auf TCP-Port 5900 erlaubt. Ich wuesste jetzt spontan nicht was dort laeuft. /etc/services ist hier auch keine Hilfe. Im Zweifelsfall gilt was ich beim ICQ-Port gesagt hab, falls der Port offen ist damit Du irgendein Chat-Programm oder aehnliches nutzen kannst koennte die Regel ueberfluessig sein.-A INPUT -p tcp -m tcp --dport 5900 -j ACCEPT
Diese Regel erlaubt Zugriff auf TCP-Port 80, den Web-Server.-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
Dies erlaubt eingehende Verbindungen auf TCP-Port 3000, laut /etc/services als HBCI ausgezeichnet, was meiner Meinung nach was mit Home-Banking zu tun hat.-A INPUT -p tcp -m tcp --dport 3000 -j ACCEPT
Diese Regel erlaubt es alle Pakete reinzulassen die zu einer bestehenden Verbindung gehoeren oder einen Bezug zu einer bestehenden Verbindung haben.-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
Letzteres ist z.B. bei FTP der Fall, dort werden 2 Verbindungen genutzt.
Meiner Meinung nach sollte diese Regel weiter oben genutzt werden, wichtig ist dies aber nicht.
Der grosse Nutzen dieser Regel ist dass alles was Du haben willst auch rein darf.
Ohne diese Regel muesstest Du im Grunde Traffic auf allen Ports > 1024 erlauben, da dies die Ports sind die zur Kommunikation nach draussen genutzt werden.
Wenn beides nicht der Fall ist dann kannst Du nichtmal surfen da die Antwort-Pakete auf Deinen Anfragen nicht reingelassen werden.
Diese Regel verwirft alle Pakete die von keiner vorigen behandelt, also akzeptiert, wurden.-A INPUT -j DROP
Besser waere es hier meiner Meinung nach RFC-konform zu arbeiten und z.B. TCP-Pakete mit einem TCP-Reset zu beantworten, etc. Dazu gibt es, wenn ich mich recht erinnere, mehr in meinem Tutorial.
Diese Regel ist zum einen doppelt, zum anderen hier vollkommen sinnfrei da in der vorigen Regel alles was bislang nicht behandelt wurde behandelt wird indem es zur Hoelle gejagt wird.-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT