本地转发:

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主机