Ich habe einen Debian 10-Host und verwende einen Debian 10-Gast mit NAT. Ich benutze libvirt / KVM / QEMU
öffentliche Host-IP: xxxx Gast-IP: 192.168.122.99
Ich versuche, Port 22221 an Port 22 im Gast weiterzuleiten, damit ich von außen über ssh auf den Gast zugreifen kann. Ich möchte über ssh direkt mit dem Gast verbindenssh -p 22221 x.x.x.x
Ich folge diesem Tutorial: https://wiki.libvirt.org/page/Networking#Forwarding_Incoming_Connections
Ich habe auch unzählige andere Tutorials ausprobiert und keines hat funktioniert. Insbesondere habe ich keine Ahnung, warum Folgendes nicht funktioniert:
(innerhalb des Hosts)
1- Ich habe die Gast-VM mit virt-manager heruntergefahren
2- Ich rufe die Hook-Skript-IP-Tabellen manuell auf, um den Port weiterzuleiten
sudo iptables -D FORWARD -o virbr0 -d 192.168.122.99 --dport 22 -j ACCEPT
sudo iptables -t nat -D PREROUTING -p tcp --dport 22221 -j DNAT --to 192.168.122.99:22
3- Ich starte die Gast-VM und überprüfe, ob sie ssh 192.168.122.99
funktioniert
4- Jetzt versuche ich, eine Verbindung ssh -p 22221 localhost
herzustellen , und die Verbindung wird abgelehnt.
Ich habe auch versucht, den Port zu überprüfen nmap -p 22221 localhost
und es heißt, dass er blockiert ist.
iptables -L (Host)
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:67
ACCEPT tcp -- anywhere anywhere tcp dpt:http
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT all -- anywhere 192.168.122.99
ACCEPT all -- anywhere 192.168.122.0/24 ctstate RELATED,ESTABLISHED
ACCEPT all -- 192.168.122.0/24 anywhere
ACCEPT all -- anywhere anywhere
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
REJECT all -- anywhere anywhere reject-with icmp-port-unreachable
ip a (Host)
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp2s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:25:90:97:dc:6e brd ff:ff:ff:ff:ff:ff
inet x.x.x.x/23 brd y.y.y.y scope global enp2s0f0
valid_lft forever preferred_lft forever
inet6 fe80::225:90ff:fe97:dc6e/64 scope link
valid_lft forever preferred_lft forever
3: enp2s0f1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:25:90:97:dc:6f brd ff:ff:ff:ff:ff:ff
4: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 52:54:00:60:e8:80 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
valid_lft forever preferred_lft forever
5: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
link/ether 52:54:00:60:e8:80 brd ff:ff:ff:ff:ff:ff
7: vnet0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master virbr0 state UNKNOWN group default qlen 1000
link/ether fe:54:00:e4:c2:52 brd ff:ff:ff:ff:ff:ff
inet6 fe80::fc54:ff:fee4:c252/64 scope link
valid_lft forever preferred_lft forever
ip a (Gast)
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 52:54:00:e4:c2:52 brd ff:ff:ff:ff:ff:ff
inet 192.168.122.99/24 brd 192.168.122.255 scope global dynamic enp1s0
valid_lft 2500sec preferred_lft 2500sec
inet6 fe80::5054:ff:fee4:c252/64 scope link
valid_lft forever preferred_lft forever