我有,像這樣在重新啓動時啓動一個反向的SSH隧道主機:反向SSH隧道無法綁定到端口時,隧道將被拆除並重新啓動
ssh -N -R 2222:localhost:22 [email protected]
它的偉大工程,形成反向隧道。但每當我重新啓動主機,該隧道是建立在遠程服務器上這樣說:
Sep 28 13:13:59 kali sshd[4547]: error: bind: Address already in use
Sep 28 13:13:59 kali sshd[4547]: error: channel_setup_fwd_listener_tcpip: cannot listen to port: 2222
爲了讓我解決此我不得不等待幾分鐘,老SSH隧道超時,然後找到新的SSH連接並殺死它,然後當我重建SSH隧道它工作正常。
是否有ssh
命令或autossh
命令執行類似於檢查遠程主機是否可以綁定該端口的命令,如果不是,請在幾秒鐘後重試?
你可以'while/bin/true;做ssh -N ...;完成「 - 只要隧道失敗,這將重新啓動ssh進程。無論何時重啓服務器 - 這是否意味着正常的重置或重啓?如果是優雅的話,嘗試在重新啓動之前使用'TERM'信號終止ssh客戶端(應該自動完成,但可能不會發生) – Misko
ssh連接已建立,但無法打開遠程服務器上的端口2222 。我希望隧道不能建立,如果它不能綁定到該端口。我正在進行平穩的重啓。 –