本文讲述了如何在OpenWRT、Linux、Windows和Android系统下搭建代理服务器、实现流量转发以及让特定程序的流量走代理
一、搭建代理服务器
OpenWRT
1 2 3
| opkg update opkg install tinyproxy luci-app-tinyproxy vi /etc/config/tinyproxy
|
启动
1
| /etc/init.d/tinyproxy restart
|
Linux
1 2 3 4
| apt-get install squid nano /etc/squid/squid.conf http_access deny all 改为 http_access allow all service squid restart
|
Windows
下载squid
启动,右下角-Start Squid Service,端口号为3128
PS:我不确定不把http_access deny all 改为 http_access allow all有什么问题
Android
下载EveryProxy
二、使用代理服务器
测试
1 2
| curl http://www.baidu.com --proxy 192.168.1.102:3128 curl http://www.baidu.com -x 192.168.1.100:3128
|
Windows
可以使用SocksCap64启动指定程序,我的仓库有下载
Linux使用全局代理
1 2
| export http_proxy=http://192.168.1.100:3128 export https_proxy=http://192.168.1.100:3128
|
Git
设置http代理
1 2
| git config --global http.proxy 'http://192.168.1.100:3128' git config --global https.proxy 'http://192.168.1.100:3128'
|
取消代理
1 2
| git config --global --unset http.proxy git config --global --unset https.proxy
|
pip
1
| python3 -m pip install paramiko --proxy=192.168.1.5:2333
|
java使用代理启动jar包
1
| java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=1081 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=1081 -jar BuildTools.jar
|
三、流量转发
OpenWRT
安装socat:
从0.0.0.0:10000转发到192.168.2.100:8000
1
| socat TCP4-LISTEN:10000,reuseaddr,fork TCP4:192.168.2.100:8000 &
|
Linux
安装rinetd
1 2
| 安装 apt-get install rinetd
|
卸载
配置文件
启动
1
| rinetd -c /etc/rinetd.conf
|
关闭
Windows
使用自带的netsh,从192.168.192.204:2222转发到10.1.1.1:22
1
| netsh interface portproxy add v4tov4 listenaddress=192.168.192.204 listenport=2222 connectaddress=10.1.1.1 connectport=22
|
删除流量转发
1
| netsh interface portproxy delete v4tov4 listenaddress=192.168.192.204 listenport=2222
|
查看映射列表
1
| netsh interface portproxy show v4tov4
|
也可以使用Porttunnel,可以注册开机服务
四、参考
OpenWRT中的Tinyproxy文档