不忘初心,方得始终.

自行搭建高大上的手机终端OpenVPN免流

一直在听大家谈论免流免流,原来一直没明白,具体看了下原来是修改头信息,让运营商服务器认为你是在访问部分免流的服务器(手机营业厅之类的),修改之后,访问正常网络也不会计费,但是局限于终端服务器的上行网速

推荐系统

CentOS6.X
为什么说我推荐,因为我只会用CentOS,来打我呀
上行带宽最少也得有个4M吧,我用的家用宽带配置的,哈哈哈icon_eek.gif

搭建OpenVPN环境

1.更新系统

yum update

2.修改防火墙配置

iptables -F
service iptables save
service iptables restart
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -p TCP --dport 34567 -j ACCEPT  #OpenVPN服务端口,可自定义,不可冲突
iptables -A INPUT -p TCP --dport 85 -j ACCEPT  #squid转发端口,可自定义(代理端口)
iptables -A INPUT -p TCP --dport 22 -j ACCEPT
iptables -t nat -A POSTROUTING -j MASQUERADE
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
service iptables save
service iptables restart

3.关闭SElinux

setenforce 0

4.开启路由转发

vi /etc/sysctl.conf

net.ipv4.ip_forward = 1 #(默认为0,修改成1 表示开启路由转发,如果默认是空内容,请自行加上)
sysctl -p

5.安装squid和OpenVPN

yum install -y wget squid openssl openssl-devel lzo lzo-devel pam pam-devel automake pkgconfig openvpn

配置OpenVPN

1. 配置VPN服务端

cd /etc/openvpn/
wget https://static.weicn.org/static/down/openvpn/server.conf
chmod 0755 ./*.conf

2.制作OpenVPN证书

这里我是在本地电脑上制作的,当然你也可以直接在服务器生成
在官方下载OpenVPN Win版本的客户端
https://openvpn.net/index.php/download/community-downloads.html
(安装的时候把所有可选的都选择上安装,不然后面没有easy-ras目录)
OpenVPN装好后,点开始 → 所有程序 → 附件 → 命令提示符,右击“以管理员权限运行”,并将操作目录切换至C:\Program Files\OpenVPN\easy-rsa
(Win8 Win10 右键左下角 命令提示符(管理员))
然后输入init-config,等命令完成后,至C:\Program Files\OpenVPN\easy-rsa目录用文本编辑器打开 vars.bat 这个批处理文件。
以下是我编辑好的文件

@echo off
rem Edit this variable to point to
rem the openssl.cnf file included
rem with easy-rsa.

set HOME=%ProgramFiles%\OpenVPN\easy-rsa
set KEY_CONFIG=openssl-1.0.0.cnf

rem Edit this variable to point to
rem your soon-to-be-created key
rem directory.
rem
rem WARNING: clean-all will do
rem a rm -rf on this directory
rem so make sure you define
rem it correctly!
set KEY_DIR=d:\openvpnkeys

rem Increase this to 2048 if you
rem are paranoid.  This will slow
rem down TLS negotiation performance
rem as well as the one-time DH parms
rem generation process.
set KEY_SIZE=2048

rem These are the default values for fields
rem which will be placed in the certificate.
rem Change these to reflect your site.
rem Don't leave any of these parms blank.

set KEY_COUNTRY=CN
set KEY_PROVINCE=SH
set KEY_CITY=ShangHai
set KEY_ORG=OpenVPN
set KEY_EMAIL=blog@weicn.org
set KEY_CN=OpenVPN-CA
set KEY_NAME=OpenVPN
set KEY_OU=OpenVPN
set PKCS11_MODULE_PATH=changeme
set PKCS11_PIN=1234

在“命令提示符”里面依次输入varsclean-allbuild-ca生成主证书颁发机构所需的证书及密钥

输入 build-key-server server 生成服务证书及密钥

输入 build-key client1 生成客户端1的证书及密钥,若想生成多个客户端证书,将client1后面的1改成2,也可以改成自己想要的客户端名字,以此类推。
(这里说一下,生成客户端密钥的时候,Common Name最好设置一下不同的,不然下面可能提示没找到.old文件)

输入 build-dh 生成迪菲赫尔曼参数

此时 D:\openvpnkeys 文件夹里面已经生成我们所需的所有证书及密钥文件了。但真正用到的只有四个文件,分别为:证书颁发机构(ca.crt)、服务器证书(server.crt)、服务器密钥(server.key)及迪菲赫尔曼参数(dh1024.pem

我们把ca.crt,server.crt,server.key,dh2048.pem复制到服务器的/home/openvpn/keys/目录下,没有就新建一个目录

然后启动服务

service openvpn start

3.配置squid代理

cd /etc/squid/
rm -f ./squid.conf
wget https://static.weicn.org/static/down/squid/squid.conf
chmod 0755 /etc/squid/squid.conf
squid -z
squid -s

配置客户端

1.下载一个OpenVPN

苹果在中国区已经下架了OpenVPN,需要注册一个美区或者日区的账户下载,这里不提供,自己在网上找吧
安卓的就不用说了,应该很好找到

2.配置ovpn文件

下载模板(这里是电信的免流,需要开爱玩4G定向包)点击下载
用文本编辑器(我用的editplus)打开ovpn文件,修改里面的你的服务器IP或者域名为你自己的服务器IP或者域名
修改CA证书复制到这里为CA证书内容ca.crt
修改客户端证书复制到这里为客户端证书client1.crt
修改客户端密钥复制到这里为客户端密钥client.key

注1:只需要复制-----BEGIN CERTIFICATE-----(包含)到-----END CERTIFICATE-----之间的内容
注2:这个免流配置只能在手机上用,电脑上无法链接

ovpn文件编辑好之后,可以从QQ发到手机,然后选择OpenVPN打开,或者直接连iTunes复制进去

然后打开OpenVpn程序,应该就可以连接上了

电信测试免流可以在网上营业厅查询详情,如果显示的是爱玩流量,证明免流成功~!icon_wink.gif

参考:
http://www.iwzh.cn/211.html
http://www.right.com.cn/forum/thread-113709-1-1.html
http://www.sbwml.cn

仅有 1 条评论
  1. nono

    好的。已经搭好了。

    nono [Android 6.0.1 Chrome 54.0.2840.85] 回复
发表新评论 选择表情