Open shownb opened 6 years ago
之前写过一篇类似的文章,是利用PPTP + iptables + redsocks,但由于新版IOS上已经不支持PPTP了,所以这里面就换用IPSec来实现。 新版的gost也已经支持透明代理,redsocks也可以省去了,所以理论上这种方法要比之前的简单许多。
首先安装IPSec VPN服务,网上有人已经写了个自动化脚本,就不用我们费心再一步一步安装了:https://github.com/hwdsl2/setup-ipsec-vpn
再把透明代理跑起来:
gost -L redirect://:12345 -F http2://SERVER_IP:443?ping=30
若要避免DNS污染,可以再利用DNS转发:
gost -L udp://:1053/8.8.8.8:53?ttl=5 -L redirect://:12345 -F http2://SERVER_IP:443?ping=30
剩下的就是iptables了,修改/etc/iptables.rules文件,在nat中增加:
-A PREROUTING -i eth+ -p udp --dport 53 -j DNAT --to LOCAL_IP:1053 -A PREROUTING -p tcp -j REDSOCKS
-A OUTPUT -p tcp -j REDSOCKS -A REDSOCKS -d 0.0.0.0/8 -j RETURN -A REDSOCKS -d 10.0.0.0/8 -j RETURN -A REDSOCKS -d 127.0.0.0/8 -j RETURN -A REDSOCKS -d 169.254.0.0/16 -j RETURN -A REDSOCKS -d 192.168.0.0/16 -j RETURN -A REDSOCKS -d 224.0.0.0/4 -j RETURN -A REDSOCKS -d 240.0.0.0/4 -j RETURN -A REDSOCKS -d SERVER_IP -j RETURN -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345
上面看上去是不是还是挺麻烦的,其实还有一种更简单的办法,就是利用端口转发,将VPN直接映射到本地:
gost -L udp://:500/SERVER_IP:500 -L udp://:4500/SERVER_IP:4500 -L udp://:1701/SERVER_IP:1701 -F http2://SERVER_IP:443
这样本地就不用安装配置任何东西就可以作为VPN服务了。
设备orangePi zero,装了debian,有一个无线网卡,一个有线网卡。让无线网卡拨号某个vpn,然后有线网卡做网关,接交换机之类,全局上网。
orangePi Zero的设置如下。无线网卡为wlan0,有线网卡为eth0
配置dnsmasq,做到即插即用,不需要再自己设置IP网关等。 interface= eth0 #interface 名称 bind-interfaces dhcp-range= 10.0.0.100,10.0.0.200,24h #应该和上面分配的 ip 地址和子网掩码相符 dhcp-option = 6, 8.8.8.8,8.8.4.4 # DNS 地址
以下是openvpn配置部分。 服务器
sudo nano /etc/openvpn/server.conf server.conf内容如下
启动服务啦
把客户端的也生成好
客户端设置 apt-get install openvpn sudo openvpn --config client1.ovpn 即可以上网 client1.ovpn生成请看https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04
参考文章 https://gist.github.com/snakevil/7d7af1d8ca2c739e3fedc5b15eb8e4aa 使用树莓派3B打造超强路由之二:初成 https://blog.wolftankk.com/2011/10/18/use-debian-for-route/ 使用debian做路由网关 https://www.cnblogs.com/Security-Darren/p/4576731.html Ubuntu 设置NAT共享网络(命令行方法) https://my.oschina.net/u/1982421/blog/301274?p=%7B%7BcurrentPage+1%7D%7D 在 Cubieboard 上搭建 SoftAP 热点,并通过 OpenVPN 科学上网 https://www.digitalocean.com/community/tutorials/how-to-set-up-an-openvpn-server-on-ubuntu-16-04 How To Set Up an OpenVPN Server on Ubuntu 16.04 https://www.gaojinan.com/vps-openvpn-china-telecom-unicom-mobile-mianliu-ml.html 在VPS上搭建OpenVPN实现移动联通电信三网免流