Hallo, in virtualbox habe ich Debian 8 und meine Webanwendung installiert, die auf Port 8000 läuft. Virtualbox Netzwerk Ich habe in den Netzwerkeinstellungen einen Bridged Adapter und kann dort über ssh von meinem Computer aus eine Verbindung herstellen. Virtualbox haben IP-Adresse: 192.168.88.65 Mein Computer hat die IP-Adresse: 192.168.88.51 Es ist an einem Ort.
Ich möchte von meinem Computer über Port 8000 auf meine Web-App zugreifen können. Aber wenn ich nmap auf meinem Computer starte, sehe ich nur diese Ports:
Nmap scan report for test (192.168.88.65)
Host is up (0.0023s latency).
Not shown: 998 closed ports
PORT STATE SERVICE
111/tcp open rpcbind
3306/tcp open mysql
aber in virtualbox computer ist es:
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000030s latency).
Other addresses for localhost (not scanned): 127.0.0.1
Not shown: 996 closed ports
PORT STATE SERVICE
25/tcp open smtp
111/tcp open rpcbind
3306/tcp open mysql
8000/tcp open http-alt
Wie kann ich den Port 8000 von meinem Computer aus sehen?
Ich versuche, diese Befehle in virtualbox auszuführen, aber es funktioniert nicht:
root @ debian /root ### iptables -I INPUT -p tcp --dport 8000 -j ACCEPT
root @ debian /root ### iptables-save
# Generated by iptables-save v1.4.21 on Mon Mar 6 10:11:58 2017
*filter
:INPUT ACCEPT [57:123601]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [44:124193]
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 8000 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT
COMMIT
# Completed on Mon Mar 6 10:11:58 2017
linux
virtualbox
debian
iptables
Applemann
quelle
quelle
netstat -tlpn
.Antworten:
Das
iptables
Regeln, die Sie eingefügt haben, sind redundant, da sie die Ausgabe Ihreriptables-save
Befehl zeigt, dieINPUT
Politik istACCEPT
Daher wird jede Verbindung zugelassen.Ich könnte mich irren, aber mein Verdacht ist, dass Sie einen Bridged-Adapter verwenden, der den Firewall-Regeln auf Ihrem Host-Computer unterliegt und es Ihnen nicht ermöglicht, Ihren Zielport zu erreichen.
Sofern Sie nicht unbedingt einen Bridged-Adapter in Ihrer VM benötigen, würde ich empfehlen, auf NAT zu wechseln und einfach die Port-Weiterleitungsfunktion von VirtualBox zu verwenden.
Unter
Settings > Network > Adapter 1
Ändern Sie das Feld "Attached To" in
NAT
.Klicken Sie unter "Erweitert" auf die Schaltfläche "Portweiterleitung" und fügen Sie einen Eintrag hinzu:
Sie können dann Ihre VM (Gast) starten und dann von Ihrem Host-Computer aus einen Browser öffnen und auf Ihre Web-App zugreifen, indem Sie zum unten angegebenen Endpunkt gehen (und einen beliebigen Pfad anhängen).
localhost:8888
Wenn Ihr Hostcomputer auf UNIX basiert, können Sie der Einfachheit halber eine Zeile hinzufügen
/etc/hosts
so was:127.0.0.1 myapp.com
Dann können Sie verwenden:
myapp.com:8888
quelle