ssh forward

SSH 端口转发分为3种,分别是Local、Remote、Dynamic、X

Local 转发

Local 转发就是将远程服务器的某个端口转发到客户端本地监听
此时Local为客户端本地,Remote为远程服务器
bind_address为客户端绑定网卡地址,留空或者设置*表示绑定所有网卡
如需客户端本地网络其他主机需要访问,加上-g参数表示开启GatewayPorts
命令如下:

1
ssh -L (-g) (<bind_address>:)<local port>:<remote host>:<remote port> <SSH hostname>

SSH连接到远程服务器A,如需要将远程服务器B的80端口,转发到客户端的8080

命令如下

1
ssh -L (127.0.0.1:)8080:SERVER_B:80 SERVER_A

Remote 转发

Remote 转发就是将客户端本地的某个端口转发到服务器监听
此时Local为远程服务器,Remote为客户端本地
bind_address为服务器绑定网卡地址,留空或者设置*表示绑定所有网卡
默认无法启用GatewayPorts,如需开启需要在sshd_config里设置”GatewayPorts yes”

命令如下:

1
ssh -R (<bind_address>:)<local port>:<remote host>:<remote port> <SSH hostname>

SSH连接到远程服务器A,如需要将客户端本地主机B的80端口,转发到远程服务器A的8080

1
ssh -R (127.0.0.1:)8080:LOCAL_B:80 SERVER_A

Dynamic 转发

Dynamic 转发就是在客户端本地开启一个Socks代理,本地可以将各种连接通过该代理转发到服务器

1
ssh -D <local port> <SSH Server>

X 转发

X 转发就是将服务器远端的X Client连接到客户端本地的X Server,sshd会自动设置系统变量
如客户端需自行安装X Server
具体命令如下:

1
ssh -X <SSH Server>
作者

XMoon

发布于

2022-10-26

更新于

2022-10-26

许可协议

You need to set install_url to use ShareThis. Please set it in _config.yml.

评论

You forgot to set the shortname for Disqus. Please set it in _config.yml.