SSH 以太网转发似乎不起作用

SSH 以太网转发似乎不起作用

我在客户端和服务器上都安装了 Ubuntu 22.04。我在客户端(客户端上可能不需要它)和服务器上都设置了。我还在客户端和服务器上设置了PermitTunnel yes和(服务器中可能不需要它),并确保在应用配置后重新启动服务器。我在两端都设置了一个名为的 TAP 设备,在两端运行以下命令:sshd_configTunnel yesTunnelDevice any:anyssh_configtap0

ip tuntap add dev tap0 mode tap

然后,root在客户端计算机上的帐户上,我root使用以下命令通过 SSH 进入服务器计算机的帐户:

ssh -w 0:0 root@<my server> -p <ssh port>

但是,我似乎无法使任何 TAP 适配器正常工作UP(即 SSH 似乎没有在任何一端使用 TAP 适配器)。我在两端运行了以下命令,发现 TAP 适配器的状态仍然为DOWN

ip link show tap0

输出:

30: tap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
    link/ether 6e:ff:d7:19:ee:b2 brd ff:ff:ff:ff:ff:ff

这意味着我无法 ping 通任何一端的任何设备(我尝试在两端设置静态 IP,但没有成功)。

我也尝试了服务器端的最新 Fedora,发现了相同的输出。

我不确定我在这里遗漏了什么,并希望得到一些帮助。

PS 该服务器是服务器 ISO VirtualBox VM,我使用 NAT 端口转发将客户机22端口转发到某个主机端口,从而通过 SSH 进入该服务器。

答案1

您需要明确设置Tunnel参数,而ethernet不仅仅是yes获取第 2 层隧道。

来自ssh_config手册页。

隧道

请求客户端和
服务器之间的 tun(4) 设备转发。参数必须是yes, point-to-point(第 3 层)、
ethernet(第 2 层) 或no(默认)。指定 yes 请求默认隧道模式,即点对点

相关内容