redsock2 能夠把一些不支持透明代理的代理服務器重定向一下,這樣能夠實現透明代理了git
redsock2安裝很簡單直接make就能夠了,github
ubuntu須要 ubuntu
apt-get intsll libevent-2.0-5 libssl-dev
安裝完成後,直接把 redsocks2 複製到相關目錄便可。bash
我這用它作網關, 而後測試了一下,http 和 https 不能一塊兒走,要分開服務器
redsocks2 配置文件:tcp
base { log_debug = off; log_info = off; daemon = on; redirector= iptables; } redsocks { local_ip = 192.168.1.1; local_port = 1080; ip = 192.168.1.1; port = 8787; type = http-relay; timeout = 12; autoproxy = 1; } redsocks { local_ip = 192.168.1.1; local_port = 1081; ip = 192.168.1.1; port = 8787; type = http-connect; timeout = 12; autoproxy = 1; } redsocks { local_ip = 192.168.1.1; local_port = 1090; interface = eth0; type = direct; #主要用來解決NAT問題,讓WAN能夠訪問到LAN timeout = 1; autoproxy = 0; } autoproxy { no_quick_check_seconds = 300; quick_connect_timeout = 2; } ipcache { cache_size = 4; cache_file = "/home/user/conf/cache.ip"; stale_time = 7200; autosave_interval = 3600; port_check = 1; }
相關iptables 設置ide
#!/bin/bash iptables-restore</etc/network/iptables.up.rules iptables -t nat -N RSHTTPS iptables -t nat -A RSHTTPS -o lo -j RETURN iptables -t nat -A RSHTTPS -d 0.0.0.0/8 -j RETURN iptables -t nat -A RSHTTPS -d 10.0.0.0/8 -j RETURN iptables -t nat -A RSHTTPS -d 127.0.0.0/8 -j RETURN iptables -t nat -A RSHTTPS -d 169.254.0.0/16 -j RETURN iptables -t nat -A RSHTTPS -d 172.16.0.0/12 -j RETURN iptables -t nat -A RSHTTPS -d 172.17.0.0/12 -j RETURN iptables -t nat -A RSHTTPS -d 192.168.0.0/16 -j RETURN iptables -t nat -A RSHTTPS -d 224.0.0.0/4 -j RETURN iptables -t nat -A RSHTTPS -d 240.0.0.0/4 -j RETURN iptables -t nat -A RSHTTPS -p tcp -j REDIRECT --to-port 1081 iptables -t nat -I PREROUTING -p tcp --dport 443 -j RSHTTPS iptables -t nat -N RSHTTP iptables -t nat -A RSHTTP -o lo -j RETURN iptables -t nat -A RSHTTP -d 0.0.0.0/8 -j RETURN iptables -t nat -A RSHTTP -d 10.0.0.0/8 -j RETURN iptables -t nat -A RSHTTP -d 127.0.0.0/8 -j RETURN iptables -t nat -A RSHTTP -d 169.254.0.0/16 -j RETURN iptables -t nat -A RSHTTP -d 172.16.0.0/12 -j RETURN iptables -t nat -A RSHTTP -d 172.17.0.0/12 -j RETURN iptables -t nat -A RSHTTP -d 192.168.0.0/16 -j RETURN iptables -t nat -A RSHTTP -d 224.0.0.0/4 -j RETURN iptables -t nat -A RSHTTP -d 240.0.0.0/4 -j RETURN iptables -t nat -A RSHTTP -p tcp -j REDIRECT --to-port 1080 iptables -t nat -I PREROUTING -p tcp --dport 80 -j RSHTTP iptables -t nat -N RSDIRECT iptables -t nat -A RSDIRECT -p tcp -j REDIRECT --to-port 1090 iptables -t nat -I PREROUTING -p tcp -d 208.67.220.220 -j RSDIRECT #不加下面這條,沒辦法WAN網鏈接進來 iptables -t nat -I PREROUTING -p tcp -s 192.168.1.2 --sport 3389 -j RSDIRECT pkill redsocks2 redsocks2 -c /home/tool/conf/red.conf
還有另外一個叫 cow 的軟件也能夠實現相似效果。功能上更增強點。測試
連接地址ui