📅  最后修改于: 2023-12-03 15:05:57.410000             🧑  作者: Mango
在开发及运维过程中,有时需要在本地电脑上通过 terminal 连接到远程服务器上执行操作,如果远程服务器不支持外部访问或者网络环境较为复杂,则需要使用 SSH 隧道来实现本地电脑与远程服务器之间的通信。本文将介绍如何在 Windows 电脑上通过 SSH 隧道连接到远程服务器,并通过 Shell-Bash 执行操作。
首先需要在 Windows 电脑上安装相应的软件,推荐使用 Git for Windows。
安装完成后,在任意目录下右键点击鼠标,选择 Git Bash Here
。
在 Git Bash 中输入以下命令连接到远程服务器:
ssh -N -L <本地端口号>:localhost:<远程端口号> <username>@<远程服务器IP>
其中,-N
表示不执行远程命令,仅用于端口转发;-L
表示进行端口转发,将本地端口号与远程端口号进行映射。如下所示:
ssh -N -L 8080:localhost:80 root@192.168.0.1
表示将本地电脑的 8080
端口映射到远程服务器的 80
端口。
连接成功后,可以在 Git Bash 中执行 Bash 命令,并且所有输出显示在本地电脑上。例如,可以在 Git Bash 中执行以下命令:
ls -l /root
该命令将在远程服务器中查询 /root
目录的信息,并将结果输出至本地电脑上。
使用 Ctrl + C 可以退出当前 SSH 隧道连接。
通过以上步骤,我们可以在 Windows 电脑上通过 SSH 隧道连接到远程服务器,并通过 Shell-Bash 执行操作。这在日常的开发及运维工作中非常有用,非常适合需要在本地电脑上进行远程服务器操作的场景。