joshk1
Goto Top

Windows 10 blockiert bzw. missachtet Portfreigabe von TCP 11001

Hi,

die Applikation PasswordSafe & Repository 7 nutzt zum Sync mit dem iPhone den Port 11001

Während der Software Installation wurden in der Windows 10 hauseigenen Defender Firewall zwei Eingehende Regeln, einmal für UPD und einmal für TCP, mit allen Portfreigaben angelegt.

Beim Sync meldet das iPhone aber, dass der PC Cient nicht erreichbar ist.

Mit "tcping 192.168.x.y 11001" habe ich via Console die Portfreigabe auf dem Rechner getestet. Mit der Meldung "No response" auf den Port fiel das Negativ aus. Dann habe ich mit "netstat -an" getestet, ob der Port hier angezeigt wird - aber auch negativ

Daraufhin habe ich explizit den Port 11001 in der Defender Firewall als Eingehende Regel eingetragen und Aktiviert. "tcping 192.168.x.y 11001" lieferte, auch nach einem Windwos Restart "No response" zurück.

Der letzte Test war dann, die Windows Defender Firewall für die Domäne, sprich für Privat und Öffentlich, abzuschalten und den Sync-Test zu wiederholen. Ergebnis: der Sync funktioniert

Frage: Warum blockiert Windows 10, ich nehme an die Firewall, trotz default-Regel durch das Programm selbst in der Firewall, inkl. meiner gezielt für den Port 11001 eingetragenen Regel, den Sync ? Warum blockiert Windows 10 diese Portfreigabe ?

Wäre cool, wenn Ihr eine Idee habt.

VG, Josh

Content-Key: 566680

Url: https://administrator.de/contentid/566680

Printed on: May 6, 2024 at 14:05 o'clock

Member: emeriks
emeriks Apr 22, 2020 at 17:01:09 (UTC)
Goto Top
Hi,
der Listener ist unabhängig von den Firewall-Regeln. Wenn er Dir also beim netstat keinen Listener für diesen Port angezeigt hat, dann lief zu diesem Zeitpunkt kein Prozess, welcher diesen Port abhörte. Also klar, dass Deine Verbindung dann nicht laufen konnte. Ich schätze, Du hast Dich selbst getäuscht? Beim letzten Test lief der betreffende Prozess dann?

E.
Member: erikro
erikro Apr 22, 2020 at 18:41:59 (UTC)
Goto Top
Moin,

Zitat von @Joshk1:
Mit "tcping 192.168.x.y 11001" habe ich via Console die Portfreigabe auf dem Rechner getestet. Mit der Meldung "No response" auf den Port fiel das Negativ aus. Dann habe ich mit "netstat -an" getestet, ob der Port hier angezeigt wird - aber auch negativ

Was beides darauf hindeutet, dass der Port nicht offen ist. Allerdings nicht, weil die FW das blockiert, sondern weil dahinter kein Dienst lauscht. Wenn netstat -an nicht zurückgibt, dass auf dem Port gehorcht wird, dann horcht da auch nichts.

Daraufhin habe ich explizit den Port 11001 in der Defender Firewall als Eingehende Regel eingetragen und Aktiviert. "tcping 192.168.x.y 11001" lieferte, auch nach einem Windwos Restart "No response" zurück.

Weil da immer noch nichts horcht.

Der letzte Test war dann, die Windows Defender Firewall für die Domäne, sprich für Privat und Öffentlich, abzuschalten und den Sync-Test zu wiederholen.

Du hast also vorsichtshalber alle drei Profile ausgeschaltet?

Ergebnis: der Sync funktioniert

Das lässt nur zwei Schlüsse zu: Entweder wurde durch eine andere Aktion der Dienst gestartet und es ist Zufall, dass das Abschalten der FW gleichzeitig geschah. Oder der Vorgang wird über einen anderen Port angestoßen und der Dienst, der auf dem Port horcht, wird so erst gestartet. Und dieser Port wird blockiert.

hth

Erik
Member: Joshk1
Joshk1 Apr 22, 2020 at 21:15:20 (UTC)
Goto Top
Hi,
Danke für deine Rückmeldung. Hilft zum Nachdenken. Mir kam selbst der Gedanke, Du hast mich hierbei bestätigt, dass netstat "nur" etwas anzeigt, was A) Dauerhaft geöffnet ist oder B) gerade in Benutzung ist.
Was nur zufällig Geöffnet wird, wenn ein Programm es benötigt, ist sonst in netstat nicht zu sehen. Ein Denkfehler von mir. Zumindest verstehe ich "netstat -an" so, richtig?

Frage: wie kann man herausfinden, welcher Listener für diesen Port verantwortich ist? Und, welcher Dienst gestartet sein muss, damit dieser Port auf, zB. eine Sync-Anfrage, reagiert?

@eriko hat mich nämlich auf eine Idee gebracht, Danke dafür.

Ich kann nicht sagen, ob beim erfolgreichen Sync der Port via "netstat -an" zu sehen gewesen wäre (ich nehme es aber an), dafür war der Sync zw. iPhone und Windows 10 Laptop zu schnell erledigt, und ich hatte es erst gar nicht versucht mir anzeigen zu lassen.

Aber, und hier greife ich nochmal die Anmerkung von @eriko auf, ich habe den Sync ein weiteres Mal gestartet, und dieser ist wieder mit der gleichen Fehlermeldung abgebrochen. PC-Client nicht gefunden, überprüfen Sie die IP, ist der Port offen usw.

Sprich, beim ersten erfolgreichen Sync war es Zufall, weil..., weil irgendetwas gerade in dem Sync-Moment, den Listener oder einen Dienst welcher auf den Port 11001 horcht, gestartet hat, oder dieser lief gerade zufälligerweise.

Liege ich mit dem Gedanken auch daneben, dass ich mit "tcping 192.168.x.y 11001" den Port-Status abfragen kann, geöffnet, vorhanden, oder sonst etwas? Wenn dem nicht so ist. Hmm? Mit welchem Command-Befehl kann man denn aktive oder bereite, kommunikationsfähige Ports abfragen?

Joshk1
Member: Joshk1
Joshk1 Apr 22, 2020 at 21:26:17 (UTC)
Goto Top
Hi,
neben der Port-Freischaltung in der Firewall, muss ich zusätzlichen noch einen Dienst "Aktiv" starten, der den Port 11001 abhört?
Wenn ja, wie bekomme ich heraus, welcher Dienst das ist?
Gibt es ein Tool, ein Commandline-/ oder auch ein GUI-Tool, mit dem man sich die Ports, und die dazugehörenden Dienste anzeigen lassen kann, was quasi zusammen korrespondiert?

PS: ich habe noch einmal explizit in der Software "PasswordSafe & Repository 7" nachgesehen - zum Sync mit der dazugehöhrenden Mobil-App (gleicher Hersteller) muss der Port "TCP 11001" in der Firewall des jeweilgen PC-Client freigeschaltet sein. Es muss der Port 11001 sein. Wie im ersten Post von mir beschrieben, habe ich die Regel eingetragen - und dann sogar das System gebootet.

@eriko: ich bin in meinem anderen Antwort Thread auf einige Pkte deiner Antwort eingegangen, bzw. habe Bezug darauf genommen.

Joshk1
Member: cykes
cykes Apr 23, 2020 at 05:32:54 (UTC)
Goto Top
Moin,

es muss nicht unbedingt der Port 11001 sein, sondern den Port kann man frei konfigurieren, siehe http://help.passwordsafe.de/ios/8.0/de/topic/wlan-synchronisation
Du stellst ja die IP und den Port auf PC-Seite ein und trägst die Konfiguration dann in der iPhone-App ein.

Es könnte auch noch ein Problem sein, dass das iPhone über WLAN und der PC über Kabel mit dem Netzwerk verbunden ist, da könnte eventuell der Router dazwischenfunken und die Kommunikation WLAN - LAN unterbinden.

Du könntest auch mal Deine genaue Firewallregel hier posten, eventuell versteckt sich da noch ein Fehler.

Ansonsten wäre es eventuell noch hilfreich, wenn der PC eine statische IP-Adresse im LAN hat und nicht per DHCP ggf. eine neue IP bekommt.
Das iPhone muss dann natürlich via WLAN im selben IP-Adressbereich sein. Beispiel: PC hat die IP 192.168.2.10, dann muss das iPhone ebenfalls eine IP im Bereich 192.168.2.* haben (also bspw. nicht mit dem Gastnetz o.ä. verbunden sein).

Gruß

cykes
Member: erikro
erikro Apr 23, 2020 at 06:19:29 (UTC)
Goto Top
Moin,

Zitat von @Joshk1:
Danke für deine Rückmeldung.

Gerne.

Hilft zum Nachdenken.

Das freut mich. face-wink

Mir kam selbst der Gedanke, Du hast mich hierbei bestätigt, dass netstat "nur" etwas anzeigt, was A) Dauerhaft geöffnet ist oder B) gerade in Benutzung ist.

So ist es. Wenn netstat -an beim betroffenen Port nicht in der Statusspalte "LISTEN" (oder je nach Version und Spracheinstellung was entsprechendes in einer anderen Sprache) ausgibt, dann horcht da auch nichts. Dann braucht man auch keine Firewall. face-wink

Frage: wie kann man herausfinden, welcher Listener für diesen Port verantwortich ist? Und, welcher Dienst gestartet sein muss, damit dieser Port auf, zB. eine Sync-Anfrage, reagiert?

Auf welchem Port die Anfragen eingehen, könntest Du z. B. mit Wireshark oder tcpdump rausfinden. Welcher Dienst gestartet sein muss, ist schon schwieriger. Schau mal in den Diensten nach, ob Du da was Entsprechendes findest. Da wäre mal interessant, wie der gestartet wird (Automatisch, Automatisch verzögert oder manuell).

Ich kann nicht sagen, ob beim erfolgreichen Sync der Port via "netstat -an" zu sehen gewesen wäre (ich nehme es aber an), dafür war der Sync zw. iPhone und Windows 10 Laptop zu schnell erledigt, und ich hatte es erst gar nicht versucht mir anzeigen zu lassen.

Einfach mal auf der Powershell vor dem Syncversuch

while($true){netstat -an | select-string "LISTEN" >>netstat.txt;start-sleep 1}  

eingeben. Je nach Spracheinstellung musst Du den Suchstring anpassen.


Aber, und hier greife ich nochmal die Anmerkung von @eriko auf, ich habe den Sync ein weiteres Mal gestartet, und dieser ist wieder mit der gleichen Fehlermeldung abgebrochen. PC-Client nicht gefunden, überprüfen Sie die IP, ist der Port offen usw.

Sprich, beim ersten erfolgreichen Sync war es Zufall, weil..., weil irgendetwas gerade in dem Sync-Moment, den Listener oder einen Dienst welcher auf den Port 11001 horcht, gestartet hat, oder dieser lief gerade zufälligerweise.

Das ahnte ich doch. Und ich ahne noch was. So ein Problem haben wir mit einem Server. Der Dienst steht auf "Automatisch". Wenn der Server hochfährt, geht der Start des Dienstes manchmal schief und manchmal nicht. Warum? Er hängt von einem anderen Dienst ab und es kommt zu einer race condition. Sprich: Startet der grundlegende Dienst schnell genug, dann wird auch der Server korrekt gestartet. Startet er nicht schnell genug, dann läuft das Starten des Dienstes gegen die Wand. Lösung: Dienst auf "Automatisch (verzögerter Start)" umstellen und alles ist gut. Nach dem Update immer schön dran denken. face-wink

hth

Erik
Mitglied: 117471
117471 Apr 23, 2020 updated at 06:22:04 (UTC)
Goto Top
Hallo,

Zitat von @Joshk1:

Der letzte Test war dann, die Windows Defender Firewall für die Domäne, sprich für Privat und Öffentlich, abzuschalten und den Sync-Test zu wiederholen. Ergebnis: der Sync funktioniert

Dein „sprich“ kann ich nicht nachvollziehen.

„Domäne“ ist keine Zusammenfassung von „privat und öffentlich“.

Das ist eine dritte Gruppe (für PCs, die in einer Domäne an einem Domaincontroller konfiguriert sind).

Gruß,
Jörg
Member: emeriks
emeriks Apr 23, 2020 updated at 06:23:56 (UTC)
Goto Top
Zitat von @Joshk1:
Frage: wie kann man herausfinden, welcher Listener für diesen Port verantwortich ist?
z.B. mit PSEXEC als SYSTEM "netstat -b" ausführen.
psexec -s netstat -anb
Während der Listener läuft wird, natürlich.
Member: Spirit-of-Eli
Spirit-of-Eli Apr 23, 2020 at 07:23:07 (UTC)
Goto Top
Moin,

du kannst das ganze am "Server", wo der Dienst/Programm läuft, auch visualisieren in dem du den Taskmanager öffnest und unter Leistung unten auf " Ressourcen Monitor" klinkst.
Im Bereich Netzwerk werden dann alle Programme aufgeführt welche derzeit eine Verbindung aufgebaut haben und eben auch jene, welche auf einem Port lauschen. Ist dein Tool dort nicht aufgeführt, wird dir netstat immer sagen, das dort nichts vorhanden ist. Des weiteren würdest du dort auch alle von deinem Tool genutzten Ports sehen.

Gruß
Spirit
Member: BernhardMeierrose
BernhardMeierrose Apr 23, 2020 at 09:40:42 (UTC)
Goto Top
Moin

Wenn wir vom Mateso-Produkt reden:
A) der Sync-Assistent für die mobilen Geräte läuft nicht im Hintergrund. Den muss man für jeden Sync manuell starten, sonst antwortet da gar nichts auf 11001.
B) ich habe bei meiner Konfig die Applikation in der Win-Firewall freigegeben, funktioniert wunderbar. Ist nicht so filigran wie separate Ports, aber da der Dienst eh nur ein paar Sekunden läuft, kann man das mMn schon so machen.

Gruß
Bernhard
Member: Tektronix
Tektronix Apr 23, 2020 at 09:58:15 (UTC)
Goto Top
Moin,
mit Powershell geht das Port prüfen wessentlich effektiver.
sid-500.com/2018/02/02/powershell-test-open-tcp-ports-with-test-openport-multiple-hosts-multiple-port-numbers/
Auch Ping kann mit Powershell effektiver ersetzt werden.
sid-500.com/2017/06/30/the-modern-version-of-ping-test-connection/
Member: erikro
erikro Apr 23, 2020 at 10:30:51 (UTC)
Goto Top

Das Skript ist absolut geil. face-wink Leider kann man nicht überall einfach so Skripte ausführen.