Iptables - Port wird nicht freigeben?
Hi, ich habe über
iptables -A INPUT -p tcp --dport 8000 -j ACCEPT
den Port 8000 freigegeben, dieser ist jedoch nicht erreichbar, obwohl ich den, wie schon gesagt, freigegeben habe und auch die Software dafür läuft! Diese ist über den Port 8000 schon lokal verwendbar!
2 Antworten
Mach den Service aus und probier mal mit nc -l 8000 auf dem Port zu hören, dann sendest du mit nc rechnername 8000 Daten zu dem Rechner.
Wenn das geht, weißt du, dass es nicht am Netzwerk liegt und die Firewall Regel greift. Es könnte ja auch an der Software selber liegen. Genau so kann es an irgendeiner Firewall zwischen den Hosts liegen.
Du kannst auch mal versuchen Packages über Firewall regeln zu loggen damit du weißt, ob die überhaupt ankommen.
Das wären so die ersten Schritte um so was zu debuggen. Auch, wenn du direkt vom Zielrechner auf den Port zugreifst funktioniert es dann und ähnliches. Als erstes muss man erst mal Fehler ausschließen.
Achso, wusste jetzt nicht, was NC sein soll 😅
apt install nc -y
gibt nämlich nur das:
E: Unable to locate package nc
So sieht das aus wenn das funktioniert. Mit Netcat kannst du einfach über TCP Daten hin und her senden. Das keine Reaktion kommt, heißt dass keine Daten ankommen.
Hier ein Beispiel wie man über Netcat testen könnte ob Kommunikation über Port 8000 funktioniert.
Das "Test" kommt auf dem Ziel an -> Verbindung / Netzwerk funktioniert. Das untere ist ne SSH Session auf einem Zielgerät in Netzwerk, das obere der lokale PC.
Also, habe versucht, auf IP und Port zu verbinden, im Browser ist es nach wievor nicht erreichbar, NC gab keine Reaktion
Wie sieht denn die Ausgabe von
sudo netstat -tlpn | grep 8000
aus?