本文说明如果通过SSH Tunnel实现代理上网
假设你有一台可以访问互联网的Linux云主机,你可以通过SSH链接到这台主机。你想通过这台云主机代理上网,又不想安装其他乱七八糟的代理软件。可以通过SSH Tunnel实现这个目的。
如果希望需启用用户名/密码
方式连接SSH,可以参考Linux Ubuntu服务器允许root用户使用密码通过SSH登陆这篇文章配置SSH支持用户名/密码
连接。
设置云主机的SSH端口转发
默认情况下,OpenSSH只允许从服务器主机连接到远程转发端口。然而,服务器配置文件sshdconfig中的gatewayport选项可以用来控制它。以下是可选的配置:
GatewayPorts no
这可以防止连接到服务器计算机外部的转发端口。
使用SSH登陆到你的云主机服务器,使用sudo nano /etc/sshd/sshdconfig
将GatewayPorts
配置做如下修改:
GatewayPorts yes
这将允许任何人连接到转发的端口。如果服务器在公共互联网上,互联网上的任何人都可以连接到端口。
建立SSH Tunnel
使用下面的指令建立SSH Tunnel
ssh -qTfnN -D 8068 root@ip
然后配置代理,代理协议SOCKS5,代理服务器只想127.0.0.1,端口8068。就可以通过这个新建的SSH Tunnel代理上网了。
别忘了设置云主机防火墙对应8068
端口的访问权限。