如何通过SSH设置端口转发?

我有一个shell帐户(Debian),我想我所有的本地浏览器互联网stream量通过该shell帐户。

我知道如何configuration互联网浏览器,以及如何configuration腻子进行端口转发,我不知道的是我需要在服务器上做这个事情。

任何人都知道我应该在服务器上做什么,以便它接受端口转发? 它似乎不适用于默认configuration。

sshd_config文件中,只需将#PermitTunnel设置从no更改为yes

 #PermitTunnel no 

 PermitTunnel yes 

我希望我的所有本地主机浏览器互联网stream量通过该shell帐户。

 ssh -D 8080 -T -f -l username proxy_host 
  • 将创build一个dynamic端口转发(SOCKS代理)。
  • -T不会分配一个tty
  • -f将使SSH立即进入后台
    • 为了这个工作,你需要使用公钥authentication
    • 至less在debian上看看ssh-copy-id
  • 现在你只需要configuration你的浏览器去通过指定的端口

testing设置时,不要使用-T-f 。 本地端口转发( -L [listenaddress]:localport:remotehost:remoteport ssh_host )仅适用于-L [listenaddress]:localport:remotehost:remoteport ssh_host (例如ssh -L 8080:google.com:80 ssh_host只会将stream量通过ssh_host转发给google.com ,并非全部networkingstream量)

如果这不起作用,请使用添加-vvv开关的SSH命令的输出来更新您的问题。

我也推荐这个: http : //blog.slowb.ro/2013/06/21/create-a-ssh-based-vpn-system/

总结一下,在build立连接时,将-D [port]分析到你的ssh命令上。 但是港口必须在1025+以上。

当使用ssh -R 8080:google.com:80 ssh_host

sshd_config

 GatewayPorts yes 

应该是在通配符或外部接口上进行监听而不仅仅是环回。