为什么 iptables 会阻止通过 ssh 连接到我的虚拟机?

为什么 iptables 会阻止通过 ssh 连接到我的虚拟机?

我有一个运行 ssh 服务器的 kali 虚拟机,我想阻止通过 ssh 到这台机器的所有流量(除了我自己的电脑),为此我有这个 iptables 规则。

┌──(root㉿kali)-[/home/kali]
└─# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  DESKTOP-JMUOD0E.home  anywhere             tcp dpt:ssh
DROP       tcp  --  anywhere             anywhere             tcp dpt:ssh

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

┌──(root㉿kali)-[/home/kali]
└─# iptables -L -n -v --line-numbers
Chain INPUT (policy ACCEPT 419 packets, 33340 bytes)
num   pkts bytes target     prot opt in     out     source               destination
1        0     0 ACCEPT     6    --  *      *       192.168.1.71         0.0.0.0/0            tcp dpt:22
2        0     0 DROP       6    --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
num   pkts bytes target     prot opt in     out     source               destination

Chain OUTPUT (policy ACCEPT 332 packets, 42224 bytes)
num   pkts bytes target     prot opt in     out     source               destination

┌──(root㉿kali)-[/home/kali]
└─# ip a
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 noprefixroute
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether 00:0c:29:de:55:8d brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.24/24 brd 192.168.1.255 scope global dynamic noprefixroute eth0
       valid_lft 86249sec preferred_lft 86249sec
    inet6 fe80::5a15:2c68:b1af:e663/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

我做错了什么?因为如果最后一条规则处于活动状态,但该规则具有我电脑的 IP,我的电脑无法进入...

我认为是因为我的虚拟机和nat的适配器,你们觉得呢?

答案1

我已经找到答案了,如我所想,是虚拟机的NAT。

如果我使用桥接模式就可以正常工作,那么我的电脑的 IP 到虚拟机网络的转换可能会给 iptables 带来麻烦。

我的虚拟机适配器

相关内容