使用SSH反向转发服务器上的请求到个人电脑

  • 开启服务器ssh网关功能

修改/etc/ssh/sshd_config文件,将GatewayPorts 修改为yes,并放开AllowAgentForwarding yesAllowTcpForwarding yes,GatewayPorts默认为no,AllowAgentForwarding、AllowTcpForwarding默认被注释

修改完成后,重启ssh服务, sudo service sshd restart

转发服务器上的请求到本机

转发命令:

ssh -R [远程地址:]远程端口:本地/局域网内任ip地址:本地端口 远程用户@远程地址

eg:ssh -R 80:127.0.0.1:8080 [email protected]

80:为服务器上开放的端口

8080:为本地电脑的端口,其中127.0.0.1可以为本地电脑所在局域网的任何电脑的ip

10.1.1.1:为服务器公网ip

输入密码后,请求http://10.1.1.1即可将请求转发到本机或局域网内任何电脑的8080端口上

拓展玩法

假如在某个公司,他的开发数据库是内网,外网无法访问,此时可以通过使用拥有公网IP的服务器进行SSH反向转发。

由于安全原因,不要在服务器上直接开放数据库的端口。在公司外部通过SSH的隧道功能来转发数据库请求。

公司外部电脑 ----ssh隧道--> 服务器 -- ssh反向转发--> 公司内部数据库/电脑

猜你喜欢

转载自blog.csdn.net/u011482647/article/details/126321119