嗯,像我们公司网络限制特别特别的多,简单一句就是不让你好好上网。公司一个小墙,兲朝一个大墙。简单说一下,在公司突破上网的方法吧,GoAgent,SSH,L2TP/PPTP,OpenVPN,Nginx反向代理,xinet,iptables,修改hosts文件。其中与VPS相关的分别是SSH,L2TP/PPTP,OpenVPN,Nginx反向代理,xinet,iptables,修改hosts文件。记下来,方便以后查找。
- SSH代理
SSH代理应该是比较容易的一个吧,VPS上一般都会把OpenSSH Server给装上吧,VPS上的设置就比较容易的,相信有VPS的都会搞。我一般SSH专门用来代理的话,就把用户的shell设成nologin,然后在/etc/security/limits.conf 中将其连接限制为1个连接,这样这个帐号就只能用来做代理使用了。呵,去年公司还没有封22端口的时候,通过Unix-Center.net做为中转,下载我VPS上的资源,那个速度真的是快啊,1M/s左右。可能流量太大,被网管发现了,之后22端口就被禁了,杯具啊。
客户端的话,只要一条命令就OK了。
# for Linux ssh nobody@guoliangwu.com -P 22 -C -N -D 127.0.0.1:6500 # for windows(PuTTY) plink nobody@guoliangwu.com -P 22 -C -N -D 127.0.0.1:6500
其中参数的作用可以参考http://linux.die.net/man/1/ssh与http://linux.die.net/man/1/plink。其中-P为端口,-C表示压缩,-N表示不打开远程命令窗口(Don’t start a remote command or shell at all),-D表示转发端口。这样只要在本地客户端设置代理服务器为127.0.0.1:6500,SOCKS5,Firefox配合AutoProxy爽歪歪啊。PS: windows中putty.exe界面勾几个选项就OK了。
- OpenVPN
参考https://forum.ramhost.us/bbs/viewtopic.php?id=4,主要就是生成密钥与Key,最后就是需要增加一条iptables规则,用于转发。客户端安装OpenVPN后会出现一个虚拟网卡,这样有时候内网就无法访问。一个是可以在客户端配置文件里增加route 192.168.0.0 255.255.0.0 net_gateway 5,二是可以用route命令来修改路由表。
- Nginx反向代理
server { listen 443; server_name api.twitter.com; ssl on; ssl_certificate /etc/nginx/ssl/server.crt; ssl_certificate_key /etc/nginx/ssl/server.key; location / { proxy_pass https://api.twitter.com:443/; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; } }
呵,你懂的。当然直接这样子是不行的,你还要生成证书,在客户端导入证书,这样就可以正常使用某些应用了。对于手机客户端而言非常有用。
- xinet, iptables端口转发
相比iptables,xinet端口转发更容易,参考http://linux.die.net/man/5/xinetd.conf与http://adamantsys.com/node/116
# /etc/xinet.d/yourservicename service yourservicename { disable = no type = UNLISTED socket_type = stream protocol = tcp user = nobody wait = no redirect = targetip targetport port = listenport }
端口转发用来干什么,你懂的。 🙂
- 修改Hosts
为什么说修改Hosts也OK呢,因为大多数公司的限制上网都是根据URL来判断的,一般不会去封IP,这样的话,再配合VPS上其它工具,就可以。。。。呵呵。
PS:L2TP/PPTP,现在我这个VPS用的是OpenVZ,无法使用PPTP,后来试了另外一个VPS,XEN,上网搜了搜,蛮多配置方法的。比较容易搞定,手机一般都会有这种VPN方式。