我有 3 台机器,以下是每台机器的 IP 地址及其 ssh 端口:
第一个设备IP: 192.168.1.2
第二个设备IP” 192.168.1.3
港口22822
第三设备IP: 192.168.1.4
港口22
我想通过第一台设备通过 SSH 连接到第二台设备并与第三台设备连接,我不想使用标志-J
,并且ProxyCommand
在 SSH 命令中连接第三台设备的命令应该是这样的:
ssh [email protected] -p 22822
我应该提到我已经做了一些ufw
配置,这里是配置:
第二台设备中的配置:
sudo ufw allow 22822
sudo nano /etc/default/ufw
DEFAULT_FORWARD_POLICY="ACCEPT"
sudo nano /etc/ufw/before.rules
:PREROUTING ACCEPT [0:0]
-A PREROUTING -p tcp --dport 22822 -j DNAT --to-destination 192.168.1.4:22
COMMIT
sudo ufw disable
sudo ufw enable
第三台设备中的配置:
sudo ufw allow 22
答案1
另外,这里有一个替代端口转发的方法(代理 ssh)编辑你第一台设备上的 SSH 配置文件(替换为你的用户名)
Host second_device
HostName 192.168.1.3
Port 22822
User your_username
Host third_device
HostName 192.168.1.4
Port 22
User your_username
ProxyCommand ssh -W %h:%p second_device
不要忘记重置 sshd,然后您可以使用以下命令连接到第三个设备:
ssh third_device
答案2
只需使用 ssh 登录到第一台设备,然后从 shell 启动新的 ssh 会话。保持简单 您可以在屏幕上启动会话,以便将其分离并使用第一台服务器。