Webserver erlaubt keine öffentlichen Verbindungen

687
Ozeta

Ich kann zum Testen nicht auf einen lokalen Webserver in einer VM zugreifen und verstehe nicht, warum. SSH und VNC funktionieren gut. Der Server ist eine Virtualbox-Bitnami-Maschine, auf deren Laptop eine überbrückte Verbindung läuft.

Dies ist die IP-Konfiguration:

Modem- / Router-Adresse: 192.168.1.1
Laptop: 192.168.1.86
VM: 192.168.1.89

  • Das Modem / Router ist mit dem Internet verbunden, und ich habe eine DDNS-Domäne auf noip.com, die voll funktionsfähig ist.
  • Ich kann das Modem sowohl von meiner öffentlichen IP-Adresse als auch von meiner öffentlichen Domäne von außerhalb des LANs anpingen.
  • Ich habe die folgenden Ports am Modem / Router konfiguriert:
    SSH 192.168.1.89 TCP TCP:22 TCP:22 active
    HTTP 192.168.1.89 TCP TCP:80 TCP:80 active
    VNC 192.168.1.86 TCP 5900 5900 active

  • Innerhalb des LAN kann ich sowohl vom Laptop als auch von anderen Geräten aus auf den Server zugreifen.

  • Außerhalb des LANs mit der DDNS-Adresse kann ich mit VNC auf den Laptop und mit SSH auf die VM zugreifen

Im Grunde funktioniert alles gut, außer HTTP.

1
Welche Web-Server-Software verwenden Sie? Wie sieht die Konfiguration für dieses Setup aus? Wenn der Webserver Apache explizit an `192.168.1.89` gebunden ist, kann dies das Problem sein. Es ist jedoch unmöglich, dies zu sagen, ohne weitere Einzelheiten zu kennen.a192.168.1.89 JakeGould vor 8 Jahren 0
Es ist eine benutzerdefinierte Bitnami-Vbox. Ich fand es läuft Apache + MySQL. bitnami @ ubuntu: ~ / apps / magento $ sudo /etc/init.d/bitnami status lackierung läuft bereits php-fpm läuft bereits apache läuft bereits mysql läuft bereits memcached läuft bereits hoffentlich ist das gut genug. Wenn nicht, fragen Sie mich, welche Informationen Sie benötigen: Ozeta vor 8 Jahren 0
Sie sagen ** "Ich kann nicht auf den lokalen Webserver zu Hause zugreifen, um zu testen" **, und dann sagen Sie ** "Vom LAN aus kann ich sowohl vom Laptop als auch von anderen Geräten aus auf den Server zugreifen" **. Beziehen sich diese beiden Aussagen auf die Website auf der VM, die den TCP-Port 80 verwendet? Wenn ja, dann scheinen diese Aussagen widersprüchlich zu sein, es sei denn, Ihr Zuhause und Ihr LAN sind möglicherweise unterschiedliche Standorte. Für mich ist dies entweder der Fall oder der lokale Zugriff auf dasselbe Subnetz ist nicht zulässig. Sie können überprüfen, ob die NIC-Konfiguration auf dem Host, auf dem die VM ausgeführt wird, den Datenverkehr zur VM blockiert oder weiterleitet oder etwas in diese Richtung führt. Pimp Juice IT vor 8 Jahren 1
Prüfen Sie in Ihrem bitnami vm, wo er hört und ob eine Firewall eingerichtet ist. Es ist jedoch wahrscheinlich, dass Sie über Port 80 auf Ihrem Router verfügen, und Sie sollten einen anderen Port auswählen, da diese tendenziell eine WebGUI besitzen und standardmäßig den Zugriff über WAN verweigern. Leiten Sie also zB den Port 8080 Ihres Routers an Ihren .89 Port 80 weiter. Zina vor 8 Jahren 0
@PIMP_JUICE_IT ja. Mein Zuhause ist in meinem LAN, und ich kann auf die VM von innen zugreifen, aber nicht von außerhalb. Wie überprüfe ich die NIC-Konfiguration? Ozeta vor 8 Jahren 0
@Zina hat versucht die Ports zu öffnen, nichts ist passiert. Ich habe auch diese Befehle ausprobiert, um zu verstehen, welcher Port offen ist, aber ich kann nicht verstehen, welche verwendet werden. Ich habe die Ergebnisse hier hochgeladen: http://pastebin.com/qecf4sYN Ozeta vor 8 Jahren 0
Ihr Bitnami-Apache scheint auf Port 81 zu hören. Machen Sie ein einfaches "netstat -anutp", damit wir sehen können, was wo hört. und verwenden Sie den gefundenen Port für die Weiterleitung (und wieder würde ich nicht 80 auf Ihrer öffentlichen IP für die Weiterleitung verwenden). Sie können auch von Ihrem Computer aus auf bitnami mit nmap prüfen, welcher Port als offen angezeigt wird. Zina vor 8 Jahren 0
@Zina Dies ist das netstat -anutp: http://pastebin.com/RFuKuRNY. Ich habe versucht, 80 zu 81 zu ändern, aber immer noch kein Fortschritt Ozeta vor 8 Jahren 0
@Zina Könnte es eine Störung zwischen den Win10-Host-Ports und dem VM-Gast sein? denn wenn ich xampp auf win10 mit der Portzuordnung zur Windows-IP-Adresse ausführe, ist die standardmäßige xampp-Webseite erreichbar Ozeta vor 8 Jahren 0
Könnten Sie versuchen, Port 8081 Ihres Routers an Port 8081 Ihres Host-PCs (.86) weiterzuleiten und eine NAT-vNIC zu Ihrer VM hinzuzufügen, und dann in VirtualBox Port 8081 an Port 80 und die NAT-IP Ihrer VM weiterleiten? Dies funktionierte für mich unter OSX 10.11.5 und VirtualBox Version 5.0.24. R108355 (Ich habe keine Windows-Maschine und mein HUAWEI F2000-Router listet keine Geräte mit überbrückten vNICs auf - daher kann ich es nicht testen). Zina vor 8 Jahren 0

2 Antworten auf die Frage

0
buzz boy

Aus Ihren Beiträgen in den Kommentaren und der Ausgabe von sudo lsof -i ist ersichtlich, dass auf dem Computer, der HTTP-Beschleuniger-Daemon ist, varnishd ausgeführt wird.
"Der varnishd-Dämon akzeptiert HTTP-Anforderungen von Clients, leitet sie an einen Back-End-Server weiter und speichert die zurückgegebenen Dokumente im Cache, um zukünftige Anforderungen für dasselbe Dokument besser erfüllen zu können."
Wahrscheinlich stimmt die Konfiguration nicht. Schauen Sie sich das an: https://www.varnish-cache.org/docs/2.1/reference/varnishd.html

0
Wes Sayeed

Möglicherweise blockiert Ihr ISP die Verbindung von außerhalb Ihres Netzwerks.

Viele ISPs blockieren gebräuchliche Service-Ports (HTTP, HTTPS, FTP, SMTP usw.), um zu verhindern, dass Kunden gehostete Services von zu Hause aus ausführen, es sei denn, sie abonnieren einen "Business Class" -Dienst oder einen höheren Service zu einem höheren Preis.

Durch das Blockieren dieser spezifischen Ports wird effektiv verhindert, dass ein Unternehmen nach einem Wohn-Service-Plan läuft.

Erkundigen Sie sich bei Ihrem ISP, ob dies der Fall ist.

Überprüfen Sie auch, ob Sie eine Firewall in der VM ausführen. Port 80/443 muss möglicherweise geöffnet werden. Da man sich per SSH prima verbinden kann, vermute ich, dass man das aber wohl schon gedacht hat.