Linux全局代理
来源:互联网 发布:php pop3发送邮件 编辑:程序博客网 时间:2024/05/19 15:22
一般用Linux的话都是用全局代理都是用http_proxy
以及https_proxy
这两个环境环境变量来实现的, 但是缺点是这种方式并不是真正的全局代理, 即使设置了代理的话,对于某些应用还是无效的,比如w3m,而且这种方式并不支持socks协议.
我在实验室环境使用shadowsocks作为代理用来访问外网, 没有用来翻墙,原因是个人感觉shadosocks比其他socks软件好部署,虽然加密损失点性能,但是table加密那点计算量也不算什么.在windows环境的话用proxifity就可以很好得解决全局代理的问题,在Linux上,上面也说了,确实是一件比较麻烦的事情.
shadowsocks的服务器端就不介绍了, 推荐安装C with libev版本, 这个版本包含了ss-server ss-redir ss-local ss-tunnel,其他版本貌似没有实现本文功能的ss-redir. 除了ss-server是作为服务端的,其余三个都是做作为客户端的.ss-redir是用来做透明代理的, ss-local是做本地socks5代理的, ss-tunnel是做隧道的(这个目前还不知道实际的用途). 本文要说的就是用ss-redir配合Linux强大的iptable来实现全局代理.
下面以ubuntu14.04的环境来介绍
#创建一个叫SOCKS的链iptables -t nat -N SOCKS#忽略服务器的地址,如果不属于内网IP的话一定要注意加上.#其实下面这句可以省略的, 因为它属于172.16.0.0/12iptables -t nat -A SOCKS -d 172.23.45.19 -j RETURN# 忽略本地地址iptables -t nat -A SOCKS -d 0.0.0.0/8 -j RETURNiptables -t nat -A SOCKS -d 10.0.0.0/8 -j RETURNiptables -t nat -A SOCKS -d 127.0.0.0/8 -j RETURNiptables -t nat -A SOCKS -d 169.254.0.0/16 -j RETURNiptables -t nat -A SOCKS -d 172.16.0.0/12 -j RETURNiptables -t nat -A SOCKS -d 192.168.0.0/16 -j RETURNiptables -t nat -A SOCKS -d 224.0.0.0/4 -j RETURNiptables -t nat -A SOCKS -d 240.0.0.0/4 -j RETURN# Anything else should be redirected to shadowsocks's local port#除上面之外的所有流量都跳转到socks的本地端口(local_port),这里使用shadosock默认端口1080iptables -t nat -A SOCKS -p tcp -j REDIRECT --to-ports 1080# 最后是应用上面的规则,将OUTPUT出去的tcp流量全部经过SOCKS链#如果是在openwrt上实现透明代理的话,使用下面被注释了的规则#iptables -t nat -A PREROUTING -p tcp -j SOCKSiptables -t nat -A OUTPUT -p tcp -j SOCKS
可以将这段脚本保存为一个sh,加入开机自启
将防火墙规则加入系统后,启动ss-redir,其实两者顺序调换了也无所谓
#ss-redir -c /etc/shadosocks.json
shadosocks.json的内容和设置ss-local是一致的.shadosocks的好处是server/client共用一套配置.shadosocks官网即使对客户端服务器有分类, 但是客户端只是服务器端的一个子集,所以推荐用服务器的版本.
经过这样一番设置的话, 本机的所有tcp流量都会经过代理机器出去了,目前ss-redir不知处udp转发.
- Linux全局代理
- iptables设置Linux全局代理
- 获取和设置linux全局代理信息
- linux设置网络全局代理的方法
- Centos安装Proxychains实现linux全局代理
- Linux下让SSH/SOCKS成为全局代理 轻松冲浪
- linux环境下设置shadowsocks+polipo全局代理
- Shadowsocks-qt5+gfwlist(genpac)设置Deebin(Linux)PAC全局代理
- linux 用 shadowsocks + iptables + ss-redir 实现全局代理
- linux ubuntu下使用ss设置全局代理,命令行也走代理
- ubuntu12.04全局代理
- 全局设置网页代理
- shadowsocks 实现全局代理
- 为npm设置代理&&&设置全局代理
- ubuntu全局代理设置方法
- ubuntu配置shadowsocks全局代理
- java下设置全局代理
- ubuntu配置shadowsocks全局代理
- Servlet 生命周期、工作原理
- spring quartz 定时器
- Aerospike C客户端手册———用户定义函数—应用UDF到记录
- Android:ImageView图片缩放、居中
- Random简介
- Linux全局代理
- MFC单文档多视图的切换的3种实现
- 恢复master数据库时错误“必须以单用户模式使用restore database”
- light oj Halloween Costumes
- App切图以及Icon和启动图片的命名规范
- 上海东方有线NGB网络:
- effective c++笔记
- 如何在action和jsp中获取session
- C++求解字符串(最小子字符串,最大子字符串,删除指定字符串)