it-swarm.com.de

Öffnen Sie Port 80 auf dem Ubuntu-Server

Ich fange gerade mit Ubuntu/Linux an und habe Probleme, Port 80 für eingehende Verbindungen zu öffnen.

Ich habe den Befehl Sudo ufw allow 80/tcp ausgeführt, und wenn ich Sudo ufw status ausführe, sieht das Ergebnis folgendermaßen aus:

Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)
80/tcp (v6)                ALLOW       Anywhere (v6)

Beim Versuch, mit cURL eine Verbindung zum Port herzustellen, wird dieser Fehler jedoch weiterhin angezeigt.

Verbindung zu MY_IP_ADDRESS-Port 80 fehlgeschlagen: Verbindung abgelehnt

Wenn ich diesen Befehl netstat -ntlp | grep LISTEN ausführe, um zu sehen, welche Ports geöffnet sind, erhalte ich das folgende Ergebnis:

(No info could be read for "-p": geteuid()=1000 but you should be root.)
tcp        0      0 127.0.0.1:27017         0.0.0.0:*               LISTEN      -               
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -               
tcp6       0      0 :::22                   :::*                    LISTEN      -         

Welches sieht nicht so vielversprechend aus ..

Wie öffne ich Port 80 für eingehende Verbindungen?

16
martin

Auf Port 80 ist kein Programm zu hören, daher ist er geschlossen und Sie können keine Verbindung zu ihm herstellen.

Sie können verwenden

Sudo python -m SimpleHTTPServer 80

starten Sie einen einfachen Webserver, der Port 80 überwacht, oder installieren Sie Apache (Paket Apache2), wenn Sie einen vollwertigen Webserver benötigen.

9
Florian Diesch

UFW ist die unkomplizierte Firewall . Es verwaltet, welche Ports auf Ihrem Computer von einer Anwendung zum Abhören geöffnet werden können. Sudo ufw allow 80/tcp bedeutet, dass TCP Verbindungen zu Port 80 zugelassen werden.

Hinter dem Hafen lauscht jedoch nichts. Für den Port curl sollte eine Anwendung vorhanden sein, die eine Antwort sendet. Dies wird normalerweise als Server bezeichnet. Wie @Florian betont, können Sie Python 's SimpleHTTPServer verwenden, um es zu testen.

7
ps95

nun, was für mich funktioniert hat, war iptable zu verwenden

Sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
4
azerafati

Verwenden:

Sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

Um zu verhindern, dass die Konfiguration von iptables beim Neustart verloren geht, verwenden Sie:

Sudo apt-get install iptables-persistent
3
Vitor de Souza

sie können Sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT verwenden. Dies akzeptiert den Port, wenn er mit dem Port konfiguriert wird, um zu verhindern, dass diese Terminal-Codezeile verloren geht. Sie können Sudo apt-get install iptables-persistent verwenden. Der Grund für Sudo am Anfang eines Befehls ist, ihn laufen zu lassen Als Superuser verwendet der Persistant ihn als persistente Verbindung zum bereitgestellten Port. Sie können es auch mit Pythons SimpleHTTPServer testen! Das war eine tolle Frage! Dankeschön!

1
Galien1

Das funktioniert bei mir. Erlaube einfach die 80 von iptables

Sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
0
Akitha_MJ