Hallo Leute!
Seit ein paar Wochen habe ich zu Hause ein BananaPI als Firewall/Gateway eingerichtet. Das war ein harter Kampf alles dorthin zu übertragen, was ich vorher auf meinem PC hatte, aber geschafft.
Nun habe ich ein sehr komisches Problem... Ich habe auf dem BananaPI ein paar Portweiterleitungen für SSH und HTTP(s), so dass ich zB vom Büro meinem PC zu Hause erreichen kann.
Nun, im Büro haben wir zwei DSL, beide bei der Telekom, natürlich mit zwei unterschiedlichen IPs.
Auf dem BPI habe ich die Firewallregeln so gebaut:
for ip in 11.22.33.44 22.33.44.55; do /sbin/iptables -A INPUT -i dsl0 -s ${ip} -j ACCEPT -m comment --comment "Gateway Queo" /sbin/iptables -t nat -A PREROUTING -p tcp -s ${ip} --dport 22 -j DNAT --to-destination 192.168.10.3:22 -m comment --comment "SSH-Weiterleitung an Frodo" /sbin/iptables -A FORWARD -p tcp -s ${ip} -d 192.168.10.3 --dport 22 -j ACCEPT done /sbin/iptables -t nat -A PREROUTING -d meineIP.ddns.net -p tcp --dport 80 -j DNAT --to-destination 192.168.10.3:80 -m comment --comment "HTTP-Weiterleitung an Frodo" /sbin/iptables -t nat -A PREROUTING -d meineIP.ddns.net -p tcp --dport 443 -j DNAT --to-destination 192.168.10.3:443 -m comment --comment "HTTPs-Weiterleitung an Frodo" /sbin/iptables -A FORWARD -i dsl0 -p tcp -m multiport -d 192.168.10.3 --destination-ports 80,443 -j ACCEPT
Nun das lustige: wenn ich vom Büro eine SSH-Session an meineIP.ddns.net über 22.33.44.55 starte, geht alles einwandfrei. Starte ich die Verbindung über 11.22.33.44 geht es nicht. Aber eine HTTP(s) Anfrage geht!
Mit tcpdump auf meinem PC zu Hause, auf dem BananaPI und auf dem PC im Büro sehe ich dass die SSH-Pakete hin- und her gehen, genau so wie wenn die Session über die andere IP läuft. ssh -v zeigt auch nicht dass das keine Verbindung besteht, allerdings komme ich gar nicht zum Passworteingabe, egal wie lange ich warte.
Von meinem PC zu Hause erreiche ich per PING beide IPs vom Büro und, wie gesagt, HTTP geht über beide IPs...
Hat jemand eine Ahnung, was das Problem sein könnte?
Danke Luca Bertoncello (lucabert@lucabert.de)
Zitat von Luca Bertoncello lucabert@lucabert.de:
Hallo
Nun das lustige: wenn ich vom Büro eine SSH-Session an meineIP.ddns.net über 22.33.44.55 starte, geht alles einwandfrei. Starte ich die Verbindung über 11.22.33.44 geht es nicht. Aber eine HTTP(s) Anfrage geht!
Mit tcpdump auf meinem PC zu Hause, auf dem BananaPI und auf dem PC im Büro sehe ich dass die SSH-Pakete hin- und her gehen, genau so wie wenn die Session über die andere IP läuft. ssh -v zeigt auch nicht dass das keine Verbindung besteht, allerdings komme ich gar nicht zum Passworteingabe, egal wie lange ich warte.
Von meinem PC zu Hause erreiche ich per PING beide IPs vom Büro und, wie gesagt, HTTP geht über beide IPs...
Ein neues Erkenntnis: wenn ich die MTU der Ethernetkarte von meinem PC zu Hause reduzieren (probiert wurde 1470) geht die Verbindung auch über die zweite DSL-Leitung vom Büro... Erstmal ist natürlich die große Frage: WOZU brauche ich diese Reduzierung und warum nur für die zweite Leitung? Die zweite Frage ist, wie kann man das Problem umgehen, ohne dass ich auf allen Geräten zu Hause die MTU reduzieren?
Diese Regel, die eigentlich das Problem lösen sollte, habe ich auch:
/sbin/iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
Ideen?
Danke Luca Bertoncello (lucabert@lucabert.de)
lug-dd@mailman.schlittermann.de