merlin123
Anmeldungsdatum: 28. September 2017
Beiträge: Zähle...
|
Einrichtung eines Routing's mit 'iptables'.
Testumgebung: 1 Server (Ubuntu Server 16.04.3 LTS) , soll als Router, FTP-Server seinen Einsatz haben. 2 NIC: 1 Workstation: enp4s0 = 192.168.200.202 ("Green") 1 Workstation: enp4s0 = 192.168.200.203 ("Green") 1 Workstation: enp4s0 = 192.168.200.204 ("Green") 1 Laptop: enp3s0 = 192.168.0.45 ("RED", DHCP)
Was will ich bewerkstelligen? der Laptop soll eine SSH-Verbindung mit den Rechnern 192.168.200.202 bis 192.168.200.204 aufbauen können. Die Rechner 192.168.200.202 bis 192.168.200.204 sollen mit IMCP (ping) ansprechbar sein. Mit den Rechnern 192.168.200.202 bis 192.168.200.204 soll eine FTP-Verbindung (Client-Seitig) mit dem Server 192.168.200.192 herstellbar sein.
Alle anderen Dienste sollen für den IP-Kreis 192.168.200.0/24 verboten sein(DROP). Wer kann mir weiterhelfen? Sitze schon 4 Tage an dem Problem, irgendwo mache ich eine Kleinigkeit falsch.
Schon viel Informationen gegoogelt, ich sehe aber immer nur Lösungen, wo der IP-Kreis 192.168.200.0/24 ICMP und 80 nach Außen ( RED) Verbindung aufnehmen darf und die Richtung von Außen (RED) nach Innen (GREEN) komplett gesperrt ist. Diese Lösung ist aber nicht gewünscht! Ist stehe ganz schön auf dem "Schlauch"!!
Ich habe anscheinend die genaue Begriffsbestimmung nicht verstanden hinsichtlich INPUT FORWARD OUTPUT! Bearbeitet von sebix:
Bitte verwende in Zukunft Codeblöcke, um die Übersicht im Forum zu verbessern![/edit] Bitte verwende in Zukunft Listen, um die Übersicht im Forum zu verbessern![/edit]
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
merlin123 schrieb: Einrichtung eines Routing's mit 'iptables'.
Zunächst must Du auf dem Server Forwarding einschalten, damit der Server IP-Pakete zwischen seinen beiden Netzen austauscht (Routing): sudo sysctl -w net.ipv4.ip_forward=1 Das funktioniert bis zum nächsten reboot. Wenn es bootfest sein soll, musst Du die Option in einer Datei unter /etc/sysctl.d/ hinterlegen. iptables benötigst Du nicht für Deine Aufgabenstellung.
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
Sorry für den falschen Begriff, aber das ist nun mal der am häufigsten gebraucht Synonym,auch wenn es jedem Routing-Experten gegen den Strich geht, ach ja, der Eintrag ist natürlich schon längst gemacht!
Es geht um Einträge wie:
iptables -t nat -A PREROUTING -p tcp -i enp4s0 --dport 22 -j DNAT --to 192.168.200.202 klappt aber nur für einen Rechner!
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
merlin123 schrieb: […] Es geht um Einträge wie:
iptables -t nat -A PREROUTING -p tcp -i enp4s0 --dport 22 -j DNAT --to 192.168.200.202 klappt aber nur für einen Rechner!
PS: Bitte verwende zur besseren Lesbarkeit den Codeblock zur Formatierung von Befehlen und deren Ausgaben!
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
Der Server benötigt natürlich die richtigen Leitwege. Diese sollten aber automatisch eingerichtet sein. Zeig mal: ip -4 route
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
Hier das Resultat!
ip -4 route: root@controller:/home/controller# ip -4 route
default via 192.168.0.250 dev enp4s0 onlink
192.168.0.0/24 dev enp4s0 proto kernel scope link src 192.168.0.61
192.168.200.0/24 dev enp1s0 proto kernel scope link src 192.168.200.192
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
Sieht richtig aus. Wirf die iptables-Regeln weg. Starte neu (sysctl net.ipv4.ip_forward ist per Datei auf 1 gesetzt?). Es sollte wie gewünscht funktionieren.
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
Ich glaube da liegt ein Missverständnis vor, der Server kommt natürlich auf den 192.168.200.x, er hat ja ein Beinchen ist selben IPKreis. Das Problem ist der Laptop 192.168.0.45, er sieht die 192.168.200.x nicht per SSH oder ICMP! Das ist das eigentliche Kundennetz(192.168.0.x)! Das ganze Modell(Konzept) ist ähnlich wie Zugriff von Außen auf ein geschlossenes Netzwerk zu sehen.
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
Der Labtop 192.168.0.45 muss natürlich wissen, wie er das Netz 192.168.200.0/24 findet, d.h. er benötigt einen Leitweg dorthin. Auf dem Laptop ausführen: sudo ip -4 route add 192.168.200.0/24 via 192.168.0.61
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
Sitze im Moment an einem anderen Laptop (zu Hause, nicht mehr im Büro).
sudo ip -4 route add 192.168.200.0/24 via 192.168.0.14 ausgeführt.
route:
Kernel-IP-Routentabelle
Ziel Router Genmask Flags Metric Ref Use Iface
default gw-firewall 0.0.0.0 UG 600 0 0 wlp3s0
link-local * 255.255.0.0 U 1000 0 0 wlp3s0
172.16.1.0 * 255.255.255.0 U 0 0 0 vmnet1
172.16.103.0 * 255.255.255.0 U 0 0 0 vmnet8
192.168.0.0 * 255.255.255.0 U 600 0 0 wlp3s0
192.168.122.0 * 255.255.255.0 U 0 0 0 virbr0
192.168.200.0 192.168.0.14 255.255.255.0 UG 0 0 0 wlp3s0
Jetzt kommt der Laptop auf den Server und kann dort die IP 192.168.200.192 (die 2. NIC) erreichen. Aber die Address: 192.168.200.202 ist leider immer noch nix.
|
kB
Supporter, Wikiteam
Anmeldungsdatum: 4. Oktober 2007
Beiträge: 8616
Wohnort: Münster
|
merlin123 schrieb: […] anderen Laptop […] via 192.168.0.14 […]
route:
Jetzt kommt der Laptop auf den Server und kann dort die IP 192.168.200.192 (die 2. NIC) erreichen. Aber die Address: 192.168.200.202 ist leider immer noch nix.
Zeige bitte die Ausgabe von ip -4 -br addr; ip -4 route; sudo iptables -S; echo auf Laptop, Server und dem Rechner mit der IP 192.168.200.201 in einem Verbund!
|
merlin123
(Themenstarter)
Anmeldungsdatum: 28. September 2017
Beiträge: 9
|
Hallo, das Problem ist gelöst!!!!
Vielen Dank nochmal!
👍
Nach einem Neustart des Laptops und Eintrag der Route
ip -4 route add 192.168.200.0/24 via 192.168.0.61
konnte der Laptop 192.168.0.43 über der Server 192.168.0.61 → 192.168.200.192 → auf den Rechner 192.168.200.202 hinter dem Server zugreifen.
Hier nochmal die Werte: ip -4 -br addr
lo UNKNOWN 127.0.0.1/8
enp3s0 UP 192.168.0.43/24
vmnet1 UNKNOWN 172.16.15.1/24
vmnet8 UNKNOWN 192.168.50.1/24
ip -4 route
default via 192.168.0.250 dev enp3s0 proto static metric 100
169.254.0.0/16 dev enp3s0 scope link metric 1000
172.16.15.0/24 dev vmnet1 proto kernel scope link src 172.16.15.1
192.168.0.0/24 dev enp3s0 proto kernel scope link src 192.168.0.43 metric 100
192.168.50.0/24 dev vmnet8 proto kernel scope link src 192.168.50.1
192.168.200.0/24 via 192.168.0.61 dev enp3s0
sudo iptables -S
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT Es gilt auch unter Linux manchmal die alte Windows-Regel "Boot tut Gut"!
|