Brauche Hilfe bei iptables
Brauche Hilfe bei iptables
Moin.
Ich bräuchte Hilfe mit iptables.
Die Gegebenheiten sehen bei mir so aus:
Router #1 hängt am DSL und leitet einige Ports zum Server weiter (80,22,usw)
Der Server (192.168.2.20724) hängt mit eth0 am Router #1 (192.168.2.1/24)
Der Server macht auch einen pppoe-server an eth1 (unkonfiguriert)
Verbindet sich ein Router zum Server gibt es am Server ein ppp0-100 (175.45.176.0)
Daran hängt nun Router #2 mit der "externen Ip" 175.45.176.100
Dieser leitet Port 554 weiter zu einem DVBC Server (192.168.1.24)
Die Ganze Sache soll nun so funktionieren:
Die Router #2 sollen die erlaubten ports vom Server erreichen können.
Die Router #2 sollen untereinander erreichbar sein.
Die Router #2 sollen ins Internet kommen.
Aus dem Internet sollen die erlaubten Ports vom Server erreichbar sein.
Der DVBC Server soll von überall erreichbar sein.
Wer könnte mir dabei Helfen? Ich versuch es auch gerne nochmal besser zu erklären.
Ich bräuchte Hilfe mit iptables.
Die Gegebenheiten sehen bei mir so aus:
Router #1 hängt am DSL und leitet einige Ports zum Server weiter (80,22,usw)
Der Server (192.168.2.20724) hängt mit eth0 am Router #1 (192.168.2.1/24)
Der Server macht auch einen pppoe-server an eth1 (unkonfiguriert)
Verbindet sich ein Router zum Server gibt es am Server ein ppp0-100 (175.45.176.0)
Daran hängt nun Router #2 mit der "externen Ip" 175.45.176.100
Dieser leitet Port 554 weiter zu einem DVBC Server (192.168.1.24)
Die Ganze Sache soll nun so funktionieren:
Die Router #2 sollen die erlaubten ports vom Server erreichen können.
Die Router #2 sollen untereinander erreichbar sein.
Die Router #2 sollen ins Internet kommen.
Aus dem Internet sollen die erlaubten Ports vom Server erreichbar sein.
Der DVBC Server soll von überall erreichbar sein.
Wer könnte mir dabei Helfen? Ich versuch es auch gerne nochmal besser zu erklären.
Re: Brauche Hilfe bei iptables
Hallo und "Willkommen im Forum",
Möchtest Du, dass Dir jemand Iptables erklärt? Dann: Wieviel Vorwissen ist bereits da?
Oder hast Du einen Ansatz bei dem Du Hilfe bei der Fehlersuche braucht? Dann das Regelwerk auf pastebin.php ablegen
Möchtest Du, dass Dir jemand Iptables erklärt? Dann: Wieviel Vorwissen ist bereits da?
Oder hast Du einen Ansatz bei dem Du Hilfe bei der Fehlersuche braucht? Dann das Regelwerk auf pastebin.php ablegen
Re: Brauche Hilfe bei iptables
Ohha, jetzt wirds peinlich.
Erklären wäre nett.
Ich hab natürlich auch einen Ansatz, bei dem ich befürchtend weiß das es grausam zusammengesucht ist.
39745
Vllt wird dadurch mein Vorhaben ja noch deutlicher.
Vorwissen? Ich weiß das es iptables gibt und schon fast Ende.
Ich hab da keine Ahnung von.
Erklären wäre nett.
Ich hab natürlich auch einen Ansatz, bei dem ich befürchtend weiß das es grausam zusammengesucht ist.
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
Vllt wird dadurch mein Vorhaben ja noch deutlicher.
Vorwissen? Ich weiß das es iptables gibt und schon fast Ende.
Ich hab da keine Ahnung von.
Re: Brauche Hilfe bei iptables
Da ich Dir nicht die ganze Arbeit vorweg nehmen möchte, hier mal ein paar Links die dich weiter bringen....
Iptables Tutorial
Port Weiterleitung
NAT Anleitung
Firewall-Regeln dauerhaft speichern
Du kannst auch gern meine Skripts als Grundlage verwenden...
Musst aber die Standard-Regeln (Nr.2) noch entsprechend deinen Bedürfnissen anpassen.
1. purge-iptables-rules
39746
2. create-iptables-default-rules
39747
3. create-iptables-reject-rules
39748
4. save-iptables-rules
39750
Dann gibts noch ...
create-iptables-logs
39751
...welches hinter und vor den Standard-Regeln stehen kann.
Die Reihenfolge aller Skripts ist sehr wichtig!
In der Datei macaddress.list habe ich in jeder Zeile eine 6 stellige Mac-Adresse von vertrauenswürdigen Schnittstellen.
Was auch noch wichtig ist...
Mit netstat -tulpen siehst du welche Ports von welchen Diensten genutzt werden.
Dies muß du dann in die Standard-Regeln einfügen.
Dies alles sollte Dir einen gutes Stück Arbeit abnehmen.
Trotzdem wirst Du nicht herum kommen dich mit der Materie zu befassen., sorry.
Folgenden Code wirst du warscheinlich auch brauchen ....
GL & HF
Iptables Tutorial
Port Weiterleitung
NAT Anleitung
Firewall-Regeln dauerhaft speichern
Du kannst auch gern meine Skripts als Grundlage verwenden...
Musst aber die Standard-Regeln (Nr.2) noch entsprechend deinen Bedürfnissen anpassen.
1. purge-iptables-rules
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
2. create-iptables-default-rules
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
3. create-iptables-reject-rules
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
4. save-iptables-rules
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
Dann gibts noch ...
create-iptables-logs
![NoPaste-Eintrag](./ext/phpbbde/pastebin/styles/debianforumde/theme/images/icon_pastebin.gif)
...welches hinter und vor den Standard-Regeln stehen kann.
Die Reihenfolge aller Skripts ist sehr wichtig!
In der Datei macaddress.list habe ich in jeder Zeile eine 6 stellige Mac-Adresse von vertrauenswürdigen Schnittstellen.
Code: Alles auswählen
root@suse:~# cat /etc/macaddress.list
XX:XX:XX:XX:XX:XX
xx:xx:xx:xx:xx:xx
...
Code: Alles auswählen
chmod 700 /etc/macaddress.list
Dies muß du dann in die Standard-Regeln einfügen.
Dies alles sollte Dir einen gutes Stück Arbeit abnehmen.
Trotzdem wirst Du nicht herum kommen dich mit der Materie zu befassen., sorry.
Folgenden Code wirst du warscheinlich auch brauchen ....
Code: Alles auswählen
# MTU bei Weiterleitung anpassen (masq.)
iptables -A FORWARD -m tcp -p tcp --tcp-flag SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
# Weiterleitung von bestimmten Mac-Adressen im Heimnetzwerk maskieren
iptables -A POSTROUTING -o eth0 -t nat -j MASQUERADE
Re: Brauche Hilfe bei iptables
Ich probier mal wie weit ich komme. Danke.
Re: Brauche Hilfe bei iptables
Aus meiner Sicht (und ohne Anspruch auf Vollständigkeit): "das ganze Rumgespringe bzgl. TCP/UPD".
Je Länger Dein Regelwerk, desto länger ist die Kiste mit dem Paket beschäftigt. Also warum die eigentlich unnötigen Jumps?
"man iptables-extensions", siehe multiport
Je Länger Dein Regelwerk, desto länger ist die Kiste mit dem Paket beschäftigt. Also warum die eigentlich unnötigen Jumps?
"man iptables-extensions", siehe multiport
Re: Brauche Hilfe bei iptables
Das natürlich nen Argument was ich so noch nicht bedacht hab.Je Länger Dein Regelwerk, desto länger ist die Kiste mit dem Paket beschäftigt.
Danke.
Re: Brauche Hilfe bei iptables
Die Regeln in meinen Skripts sind recht gut angeordnet, da hättest du nur die TCP-Ports anpassen müssen in einer Datei.
UDP würde ich sowieso nicht zum Verbindung-Aufbau zulassen.
Dann nur noch für den Server mit NAT ein paar weitere Zeilen aufnehmen und ie Regeln an Schnittstellen binden. Das war schon alles.
Konkret: Ich habe im Prinzip schon alles gepostet, nur die TCP-Ports mußt du selber einstellen und NAT Konfigurieren.
Nachtrag:
Portweiterleitung habe ich übersehen, aber das ist pro Computer nur eine Zeile mehr mit --multiports
Nachtrag2 :
Wenn du Regeln erstelllst dann stell dir auch vor was wann eintrifft....
z.B. dein Skript:
Erst erlaubst du alle schon bestehenden Verbindungen, was auch gut so ist.
Dann werden Anfragen von Ping und LocalHost zugelassen und nach dem Verbindungsaufbau gilt die erste Klausel.
Ok ok, soweit kommt mir das bekannt vor xD
Weil UDP nicht den gleichen Header hat wie TCP wird dein nächstes Kommando nicht funktionieren (Zeile 36)
Also erstellst du als nächstes Kanäle für alle neuen TCP-Verbindungen und weist sie dann zurück (Zeile 39-40)
Egal was nach Zeile 42 für Kommandos kommen, die werden nicht mehr Ausgeführt,
weil alle nicht bis jetz abgefangenen Verbindungen werden spätestens jetzt zurück gewiesen
Mehr blocken als mit dem Kommando -A INPUT -j REJECT ist nicht möglich.
Du hast da was missverstanden,,,
Wenn du die Standard-Regel auf DROP setzt dann kommen eh keine Daten mehr durch die Firewall.
REJECT ist nur die feine englische Art zu sagen: Hier geht es nicht weiter.
Das gegenüber weiß dann woran es ist, anstatt sein System in Wartezustand zu versetzen und vergeblich auf eine Antwort zu warten.
Du mußt nur den gewollten Verbindungsaufbau zulassen und der Rest erledigt sich von selbst.
Verbindungsaufbau über UDP ist auch sehr sehr veraltet und sollte höhstens für DHCP genutzt werden.
Es sei denn du willst das Gegenteil und deine Firewall offen lassen, bzw nur bestimmte Ports blocken.
Masquerade für zwei Schnittstellen ist mir auch neu (Zeile 45 und 48), hast du zwei verschiedene Provider die ins Internet gehen ?
UDP würde ich sowieso nicht zum Verbindung-Aufbau zulassen.
Dann nur noch für den Server mit NAT ein paar weitere Zeilen aufnehmen und ie Regeln an Schnittstellen binden. Das war schon alles.
Konkret: Ich habe im Prinzip schon alles gepostet, nur die TCP-Ports mußt du selber einstellen und NAT Konfigurieren.
Nachtrag:
Portweiterleitung habe ich übersehen, aber das ist pro Computer nur eine Zeile mehr mit --multiports
Nachtrag2 :
Wenn du Regeln erstelllst dann stell dir auch vor was wann eintrifft....
z.B. dein Skript:
Erst erlaubst du alle schon bestehenden Verbindungen, was auch gut so ist.
Dann werden Anfragen von Ping und LocalHost zugelassen und nach dem Verbindungsaufbau gilt die erste Klausel.
Ok ok, soweit kommt mir das bekannt vor xD
Weil UDP nicht den gleichen Header hat wie TCP wird dein nächstes Kommando nicht funktionieren (Zeile 36)
Also erstellst du als nächstes Kanäle für alle neuen TCP-Verbindungen und weist sie dann zurück (Zeile 39-40)
Egal was nach Zeile 42 für Kommandos kommen, die werden nicht mehr Ausgeführt,
weil alle nicht bis jetz abgefangenen Verbindungen werden spätestens jetzt zurück gewiesen
Mehr blocken als mit dem Kommando -A INPUT -j REJECT ist nicht möglich.
Du hast da was missverstanden,,,
Wenn du die Standard-Regel auf DROP setzt dann kommen eh keine Daten mehr durch die Firewall.
REJECT ist nur die feine englische Art zu sagen: Hier geht es nicht weiter.
Das gegenüber weiß dann woran es ist, anstatt sein System in Wartezustand zu versetzen und vergeblich auf eine Antwort zu warten.
Du mußt nur den gewollten Verbindungsaufbau zulassen und der Rest erledigt sich von selbst.
Verbindungsaufbau über UDP ist auch sehr sehr veraltet und sollte höhstens für DHCP genutzt werden.
Es sei denn du willst das Gegenteil und deine Firewall offen lassen, bzw nur bestimmte Ports blocken.
Masquerade für zwei Schnittstellen ist mir auch neu (Zeile 45 und 48), hast du zwei verschiedene Provider die ins Internet gehen ?