IPtables Portforwarding für Webcam (Mobotix)
Hallo zusammen, ich versuche mich gerade erfolglos an einem Portforwarding für eine Webcam von Mobotix. Die Webcam hat die IP 192.168.1.6 und kann aus dem LAN angesprochen werden, die Linuxmaschine die routet hat einen DSL Business Zugang mit fester IP. Ich wollte nun testweise den Port 5106 von extern auf die Cam weiterleiten. Laut BDA der Cam reicht es einen Port mit tcp weiterzuleiten. Masquerading ist aktiviert Folgendes habe ich bzw. Yast in den IPtables eingefügt (Auszug): Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- anywhere anywhere tcp dpt:5106 to:192.168.1.6:80 DNAT tcp -- anywhere anywhere tcp dpt:5106 to:192.168.1.6:80 Chain forward_ext (2 references) LOG tcp -- anywhere 192.168.1.6 limit: avg 3/min burst 5 tcp dpt:http state NEW LOG level warning tcp-options ip-options prefix `SFW2-FWDext-ACC-REVMASQ ' ACCEPT tcp -- anywhere 192.168.1.6 tcp dpt:http ACCEPT tcp -- 192.168.1.6 anywhere state RELATED,ESTABLISHED Chain forward_int (1 references) LOG tcp -- anywhere 192.168.1.6 limit: avg 3/min burst 5 tcp dpt:http state NEW LOG level warning tcp-options ip-options prefix `SFW2-FWDint-ACC-REVMASQ ' ACCEPT tcp -- anywhere 192.168.1.6 tcp dpt:http ACCEPT tcp -- 192.168.1.6 anywhere state RELATED,ESTABLISHED Chain input_ext (3 references) LOG tcp -- anywhere anywhere limit: avg 3/min burst 5 tcp dpt:5106 flags:FIN,SYN,RST,ACK/SYN LOG level warning tcp-options ip-options prefix `SFW2-INext-ACC-TCP ' ACCEPT tcp -- anywhere anywhere tcp dpt:5106 seltsamerweise zeigt mir ein externer Portscan den Port 5106 als "gefiltert" - ist das richtig? Wenn ich einen Verbindungsversuch starte kann ich folgendes loggen: Apr 15 12:40:07 maschine kernel: SFW2-FWDext-ACC-REVMASQ IN=dsl0 OUT=eth0 SRC=80.187.98.1 DST=192.168.1.6 LEN=52 TOS=0x00 PREC=0x00 TTL=110 ID=217 DF PROTO=TCP SPT=52654 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405B40103030201010402) Apr 15 12:40:10 maschine kernel: SFW2-FWDext-ACC-REVMASQ IN=dsl0 OUT=eth0 SRC=80.187.98.1 DST=192.168.1.6 LEN=52 TOS=0x00 PREC=0x00 TTL=110 ID=219 DF PROTO=TCP SPT=52654 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405B40103030201010402) Apr 15 12:40:16 maschine kernel: SFW2-FWDext-ACC-REVMASQ IN=dsl0 OUT=eth0 SRC=80.187.98.1 DST=192.168.1.6 LEN=48 TOS=0x00 PREC=0x00 TTL=110 ID=221 DF PROTO=TCP SPT=52654 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405B401010402) Sieht für mich so aus wie wenn das Portforwarding funktioniert - fehlt da noch was um den "Rückweg" zu definieren? Die Chains INPUT und FORWARD sind auf Policy DROP eingestellt was in diesem Fall ja keine Rolle spielen sollte, oder? Grüße Eric -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo. * Dienstag, 15. April 2008 um 15:06 (+0200) schrieb Eric Scheen:
ich versuche mich gerade erfolglos an einem Portforwarding für eine Webcam von Mobotix.
Die Webcam hat die IP 192.168.1.6 und kann aus dem LAN angesprochen werden, die Linuxmaschine die routet hat einen DSL Business Zugang mit fester IP. Ich wollte nun testweise den Port 5106 von extern auf die Cam weiterleiten. Laut BDA der Cam reicht es einen Port mit tcp weiterzuleiten.
Masquerading ist aktiviert
Folgendes habe ich bzw. Yast in den IPtables eingefügt (Auszug):
Chain PREROUTING (policy ACCEPT) target prot opt source destination DNAT tcp -- anywhere anywhere tcp dpt:5106 to:192.168.1.6:80
Chain forward_ext (2 references) LOG tcp -- anywhere 192.168.1.6 limit: avg 3/min burst 5 tcp dpt:http state NEW LOG level warning tcp-options ip-options prefix `SFW2-FWDext-ACC-REVMASQ ' ACCEPT tcp -- anywhere 192.168.1.6 tcp dpt:http ACCEPT tcp -- 192.168.1.6 anywhere state RELATED,ESTABLISHED
Die notwendigen Regeln sind alle da.
seltsamerweise zeigt mir ein externer Portscan den Port 5106 als "gefiltert" - ist das richtig?
AFAIK bedeutet "gefiltert" genau das, was du jetzt erlebst: Auf einen Verbindungsversuch kommt keine Antwort. Bei "closed" wird mit einem ICMP- oder TCP-Reset-Paket geantwortet.
Wenn ich einen Verbindungsversuch starte kann ich folgendes loggen:
Apr 15 12:40:07 maschine kernel: SFW2-FWDext-ACC-REVMASQ IN=dsl0 OUT=eth0 SRC=80.187.98.1 DST=192.168.1.6 LEN=52 TOS=0x00 PREC=0x00 TTL=110 ID=217 DF PROTO=TCP SPT=52654 DPT=80 WINDOW=8192 RES=0x00 SYN URGP=0 OPT (020405B40103030201010402)
Sieht für mich so aus wie wenn das Portforwarding funktioniert - fehlt da noch was um den "Rückweg" zu definieren?
Ja, das Portforwarding funktioniert, das Problem sind offensichtlich die Antwortpakete. Nach deinem obigen capture-Auszug werden gar keine gesendet. Entweder hat der capture-Filter sie nicht erfasst oder der Webcam fehlt vielleicht einfach die Default-Route auf den Router. Falls es nur am capture-Filter liegt, dann poste doch einmal den Inhalt der FORWARD-Chain. Gruß Andreas -- XMMS spielt gerade nichts... GPG-ID/Fingerprint: 6F28CF96/0B3B C287 30CE 21DF F37A AF63 A46C D899 6F28 CF96 GPG-Key on request or on public keyservers -- -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Andreas, Andreas Koenecke schrieb:
Hallo.
* Dienstag, 15. April 2008 um 15:06 (+0200) schrieb Eric Scheen:
[...]
Sieht für mich so aus wie wenn das Portforwarding funktioniert - fehlt da noch was um den "Rückweg" zu definieren?
Ja, das Portforwarding funktioniert, das Problem sind offensichtlich die Antwortpakete. Nach deinem obigen capture-Auszug werden gar keine gesendet. Entweder hat der capture-Filter sie nicht erfasst oder der Webcam fehlt vielleicht einfach die Default-Route auf den Router.
Falls es nur am capture-Filter liegt, dann poste doch einmal den Inhalt der FORWARD-Chain.
danke für den Tip - manchmal sieht man vor lauter Wald die Bäume nicht - ich habe der Kamera eine feste IP gegeben und kein Gateway eingetragen, das macht sich bei rein internem Betrieb nicht bemerkbar bei Zugriff von außen brauchts den natürlich. Grüße Eric -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (2)
-
Andreas Koenecke
-
Eric Scheen