Warum erhalte ich die Meldung „Verbindung abgelehnt“?

Warum erhalte ich die Meldung „Verbindung abgelehnt“?

Ich betreibe beispielsweise einen „Hello World“-HTTP-Server auf einer Ubuntu EC2-Instanz. Von meinem Client aus myurl.comkann ich nicht darauf zugreifen:curl

$ curl myurl.com:4296                     
curl: (7) Failed to connect to myurl.com port 4296: Connection refused

Wenn ich versuche, einen anderen Port zu erreichen, tritt eine Zeitüberschreitung meiner Verbindung auf:

$ curl myurl.com:4244                   
curl: (7) Failed to connect to myurl.com port 4244: Operation timed out

Ich habe die folgende eingehende Regel auf AWS:

Bildbeschreibung hier eingeben

Ich kann es auf dem Server curlen:

$ curl localhost:4296
Hello World

Mein Netstat:

$ netstat -a | grep 4296
tcp        0      0 localhost:4296          0.0.0.0:*               LISTEN   

Was mache ich falsch?

Antwort1

Der Prozess auf Port 4296 hört nur auf demlokaler Host / 127.0.0.1Adresse und ist daher von außen nicht erreichbar. Sie müssen die Konfiguration ändern (oder das Programm selbst, wenn es eines ist, das Sie geschrieben haben), um zuzuhören0.0.0.0- das wird es dazu bringen, weiterzuhörenalleAdressen.

Hier ist ein Beispiel aus meinem System:

~ # netstat -tnlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address    Foreign Address   State       PID/Program name    
tcp        0      0 0.0.0.0:22       0.0.0.0:*         LISTEN      1311/sshd           
tcp        0      0 127.0.0.1:631    0.0.0.0:*         LISTEN      1183/cupsd          

Dabei lauscht SSH auf Port 22 auf allen Adressen und ist somit von außen erreichbar (sofern Firewall und SG dies natürlich zulassen).

Andererseits lauscht CUPS auf Port 631 nur auf dem lokalen Host (127.0.0.1), und selbst wenn die Firewall/SG diesen Port zuließe, wäre er von außen nicht zugänglich.

Hoffentlich hilft das :)

Antwort2

Überprüfen Sie, ob Sie mit einer öffentlichen IP-Adresse darauf zugreifen können. Wenn ja, müssen Sie überprüfen, ob Route53 richtig konfiguriert ist. Wenn dies auch mit einer öffentlichen IP-Adresse nicht möglich ist, fügen Sie die Firewall-Regel hinzu, um den Datenverkehr zuzulassen. https://linuxdiaryblog.blogspot.com/2020/06/add-firewall-exception-to-port.html?m=1

verwandte Informationen