如何 ssh 到内网服务器?
程序员文章站
2022-06-02 20:15:55
...
ssh 到内网服务器
参考:https://zhuanlan.zhihu.com/p/73957254
有时候帮客户解决技术问题,需要远程连接到客户的计算机,但是客户往往没有公网 IP,需要内网穿透才能远程连接,有时 teamviewer 可以解决问题,有时 teamviewer 太慢了,况且 teamviewer 免费许可证不能用于盈利。
这篇文章将介绍 ssh 反向代理的用法和常见问题,需要一台有公网IP的服务器,比如各种VPS和云服务器都可以。客户的电脑记为 C,用户名 ubuntu;我的服务器记为 S,用户名 root。
首先确认客户的电脑装好了 ssh,以 ubuntu 为例,运行以下命令安装 ssh
sudo apt install ssh
在客户的电脑上运行以下命令开启反向代理
sudo ssh -fCNR 4515:localhost:22 -o ServerAliveInterval=60 [email protected]
@后面是服务器 S 的域名或 IP
按提示输入密码,如果你的服务器没有开启密码登陆,参考下列步骤为 root 用户设置密码。当然了用**登陆也行,就是还得给客户发,有点儿麻烦。
为 root 用户设置密码
passwd root
开启密码登陆
vi /etc/ssh/sshd_config
将 PasswordAuthentication 改成 yes
同理,客户的电脑 C 也应考虑开启密码登陆。
反向代理连接成功了有提示(也许没有提示)。看到提示后,在 公网服务器 上运行以下命令确认
sudo netstat -nap | grep ssh
如果没错的话,能看到一行
tcp 0 0 127.0.0.1:4515 0.0.0.0:* LISTEN 8493/sshd
4515 就是我们设置的端口号
在服务器 S 上运行以下命令就可以 ssh 到客户的电脑 C 上了
ssh -p 4515 [email protected]
按提示输密码即可。
上一篇: Linux服务器上网DNS设置