本地转发:
ssh -Nf -L [bind_address:]port:host:hostport sshServer
-Nf 后台运行
-L 本地转发
[bind_address] 绑定本地地址,省略则默认127.0.0.1,只有本机可以访问
port 本地映射端口
host:hostport 被访问的主机和端口
sshServer ssh主机
例子:ssh -Nf -L 192.168.1.156:8888:192.168.1.211:80 root@192.168.1.200
本机192.168.1.156:8888--》192.168.1.200--》192.168.1.211:80
访问192.168.1.156:8888的请求通过与192.168.1.200的ssh隧道被转发到1192.168.1.211:80
对于192.168.1.211:80来说,是192.168.1.200访问了他
远程转发:
ssh -Nf -R [bind_address:]port:host:hostport sshServer
[bind_address] 绑定远程主机地址
port 远程主机被打开的端口
host:hostport 被访问的主机和端口
sshServer ssh主机
例子:ssh -Nf -R 192.168.1.211:80:192.168.1.156:80 root@192.168.1.211
远程主机192.168.1.211:80--》ssh隧道(发起ssh连接的主机)--》192.168.1.156:80
对于192.168.1.156:80来说,是发起ssh连接的本地主机访问了他
动态转发:
ssh -D [bind_address]:port sshServer
[bind_address]:prot 绑定本地ip端口
sshServer 远程主机
例子:
ssh -D 192.168.1.156:8888 root@27.65.138.42
与远程主机建立链接,只要远程主机可以访问的资源,通过本机的8888端口都可以访问到,需要在应用程序中做一定的代理设置
如在浏览器中设置代理在socks主机处填写本机绑定ip及端口就可以轻松的以远程主机的身份访问资源了
[bind_address] 绑定本地地址,省略则默认127.0.0.1,只有本机可以访问
port 本地映射端口
host:hostport 被访问的主机和端口
sshServer ssh主机