SSH 隧道仅具有目标密码(而不是两个密码)吗?

SSH 隧道仅具有目标密码(而不是两个密码)吗?

我有一个运行 Ubuntu 14.04 的目标服务器(我们称之为destserver)和一个同样运行 Ubuntu 14.04 的隧道服务器(我们称之为bridgeserver),它有一个固定的 IPV4 地址。我目前已将其设置为在启动时destserver用于autossh连接到bridgeserver

exec autossh -M 0 -N -R 2222:localhost:22 -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -o "StrictHostKeyChecking=no" -o "BatchMode=yes" -i /path/to/bridgeserver_mybridgeuser_id_rsa mybridgeuser@BRIDGESERVER_IP_ADDR

我在这里使用密钥认证,因此上述命令无需密码即可完成。现在,当我在某个公共网络上使用笔记本电脑时,我可以从中执行以下任务:

ssh -t -o ProxyCommand='ssh mybridgeuser@BRIDGESERVER_IP_ADDR nc localhost 2222' mydestuser@localhost

...一切都很好,只是它要求我输入两组密码:

$ ssh -t -o ProxyCommand='ssh mybridgeuser@BRIDGESERVER_IP_ADDR nc localhost 2222' mydestuser@localhost
mybridgeuser@BRIDGESERVER_IP_ADDR's password: 
mydestuser@localhost's password: 
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 4.2.0-42-generic x86_64)
...

现在,我想让其他人可以使用这个目标服务器,但我不想分享桥接服务器(我个人租用的)的任何身份验证详细信息,因此我不想分享 的密码mybridgeuser。所以我想建立一个像上面那样的连接 - 除了只询问 处用户(比如mydestuser)的密码之外destserver

是否有一种ssh语法可以在客户端上使用,以便我能够destserver仅使用来自的用户凭据destserver(无需来自的密码提示bridgeserver)连接到,而无需更改当前设置autossh?如果需要更改设置,设置将发生哪些更改 -ssh笔记本电脑上的命令将是什么样子?

答案1

嗯,我可能错了,但我只是在我的初始化文件中写道:

exec autossh -M 0 -N -R :2222:localhost:22 -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -o "StrictHostKeyChecking=no" -o "BatchMode=yes" -i /path/to/bridgeserver_mybridgeuser_id_rsa mybridgeuser@BRIDGESERVER_IP_ADDR

... 代替:

exec autossh -M 0 -N -R 2222:localhost:22 -o "ServerAliveInterval 60" -o "ServerAliveCountMax 3" -o "StrictHostKeyChecking=no" -o "BatchMode=yes" -i /path/to/bridgeserver_mybridgeuser_id_rsa mybridgeuser@BRIDGESERVER_IP_ADDR

...注意,我刚刚在 ; 之前添加了一个冒号2222:localhost:22,现在在笔记本电脑上我只需发出:

ssh mydestuser@BRIDGESERVER_IP_ADDR -p 2222

...现在它似乎可以工作了,因为它只要求我输入一个密码:

$ ssh mydestuser@BRIDGESERVER_IP_ADDR -p 2222
mydestuser@BRIDGESERVER_IP_ADDR's password: 
Welcome to Ubuntu 14.04.5 LTS (GNU/Linux 4.2.0-42-generic x86_64)
...

...而以前它不允许我这样做?!:

$ ssh mydestuser@BRIDGESERVER_IP_ADDR -p 2222
ssh: connect to host BRIDGESERVER_IP_ADDR port 2222: Connection refused

我不确定为什么需要这个冒号,所以我仍然想阅读有关该问题的正确答案......

相关内容