Ubuntu
如何使用另一台伺服器連接到防火牆後面的 SSH 伺服器?
我有 2 台伺服器,網路如下所示:
Server_A (Ubuntu) -> Firewall/Router -> Internet
Server_A 可以連接到 Internet 上的任何伺服器。
Server_B (Ubuntu) which is directly connected to the internet.
Server_B 上的埠轉發或任何防火牆沒有限制
我無法從 Internet 連接到 Server_A,因為它位於本地網路內,並且此處無法進行埠轉發,我無權訪問路由器。
Server_A 可以連接到 Server_B,以便我可以通過 SSH 連接到 Server_B 並與 Server_A 通信嗎?
如果您可以在 Server_A 上執行 ssh 伺服器,則您可以從 Server_A SSH 到 Server_B,並將 Server_B 上的埠轉發回 Server_A 的 ssh 伺服器。
Server_A$ ssh -R 12345:localhost:22 Server_B Password: Server_B$
然後在 Server_B 上,您現在可以使用 localhost 在埠 12345 上 ssh 到 Server_A:
Server_B$ ssh -p 12345 localhost Password: Server_A$
如果你真的想在 Internet 上公開 Server_A 的 ssh 伺服器,你可以讓其他主機可以訪問埠轉發,但這需要 Server_B 的 sshd_config 文件允許
GatewayPorts
:Server_A$ ssh -R '*:12345:localhost:22' Server_B Password: Server_B$
然後從任何地方:
Anywhere$ ssh -p 12345 Server_B Password: Server_A$
但正如評論中提到的,要非常小心,不要越過一些重要的安全策略。