这是情况
我的计算机名为MY_COMPUTER
一台名为REMOTE_VM
的计算机,我的用户remoteuser
位于/etc/passwd
shell /bin/false
此用户只有一个功能,在通过反向SSH后可以执行SSH隧道。
我目前使用的命令是
ssh \
-nNT \
-R 42242:127.0.0.1:22 \
remoteuser@REMOTE_VM
我希望这个命令在脚本中执行,并且有办法获得回调或方式(比如将这个ssh命令放在后台并定期检查是否存在套接字文件或类似的东西)检查连接是否已实际打开,而不是在网络速度慢的情况下暂挂连接。
openssh-client是否有这样的方法,或者您必须使用ssh客户端的自定义实现,以便您可以随时进行回调?
我更希望尽可能使用普通的openssh-client和bash(甚至是脏的)解决方案。
答案 0 :(得分:1)
运行命令verbosely,捕获输出,然后测试输出是否表明会话已建立?沿着:
live
或者,也许您可以轮询live
的输出。