写在前面的话:前段时间利用VPN免流特别火,我本来打算买一个,但后来发现其实都是用的OpenVPN搭建的,正好我手上有一个腾讯的云服务器,我一想不如就自己搭建一个吧,省点钱,结果就这样浪费了两天的时间,最大的问题在于网上关于用windows server搭建的教程异常的少,大部分都是cent os并且是脚本搭建的,我看了好多,看得我一头雾水。。。总算在我折腾服务器两天之后建好了属于自己的第一个VPN服务器,但是免流那块,四川联通失败,浪费了我两天的时间,但是为了避免以后搭建再次搭建VPN时发生问题,所以我写下这篇博客作为自己的笔记。
首先,我们需要下载OpenVPN安装程序
- 下载地址:
官方下载地址:https://openvpn.net/index.php/open-source/downloads.html
一定要加上https,否则打不开这个网页
我的安装文件是:http://share.weiyun.com/199334ed61bc582ce90ef9af293ff05d
- 安装软件:
安装软件的过程和一般的一样,只是在安装的过程中有几个需要注意的地方:
1.建议不要修改默认的安装地址,在某次安装时,我修改了地址之后就报错了,所以建议大家不要修改默认地址,至于修改后报错的原因我也没有搞懂,如果有知道的朋友请联系我,互相学习。
2.在安装的时候记得勾选所有选项,进行完全安装,否则证书生成工具没有安装上就麻烦了
- 目录展示:
- 开始生成OpenVPN服务器以及客户端的相关证书和文件:
1.进入easy-rsa文件夹,我们可以看到一个名为 vars.bat.sample的文件,有一定英语以及计算机基础的同学一定可以很快明白这个文件的意思,就是一个vars.bat批处理文件的样本,然后用notepad++文本编辑器打开这个文件,对部分代码进行修改,需要修改的代码如下:
set KEY_COUNTRY=CN 国家
set KEY_PROVINCE=SiChuan 省份
set KEY_CITY=ChengDu 城市
set KEY_ORG=baofeidyz 组织名
set [email protected] 邮箱
将这些修改为自己的对应信息就可以了。
2.然后进入CMD控制台操作
cd C:\Program Files\OpenVPN\easy-rsa
注:如果不是安装在默认安装目录的同学请自行修改
vars
clean-all
这两步操作是必须的,得到的提示如下:
然后开始初始化造作
init-config
vars
clean-all
然后我们就可以开始生成各项文件(下面所有操作都必须要保证CMD控制台命令是在OpenVPN\easy-rsa目录下进行的):
NO 1. 生成根证书 ca.crt文件
build-ca
然后程序会自动加载,一直到你刚刚设置的那个国家那个地方停止,这个时候仅需要回车就可以了,程序会使用你默认的数据设置,就不需要你单独的再输入了。但是在需要你在这个地方输入信息,代码块如下:
Common Name (eg, your name or your server‘s hostname) [changeme]:OpenVPN-CA
输入OpenVPN-CA即可
NO 2.生成dh1024.pem文件
build-dh
这个直接运行完成,不需要你填写任何参数
NO 3.生成服务端密钥:
build-key-server server
这个和build-ca类似,但除了需要修改下面的这个代码块以外还有两个确定操作,直接Y回车就可以,当然如果你信息填写错误了,就N回车重新来就可以了:
Common Name (eg, your name or your server‘s hostname) [changeme]:server
NO 4.生成客户端密钥:
build-key client
这个和build-key-server就是一毛一样的了,修改的代码块如下:
Common Name (eg, your name or your server‘s hostname) [changeme]:client
如果有多个客户端,就需要继续用build-key client2或者其他名字生成多个客户端密钥即可,注意代码块的修改
NO 5.文件已经准备好了,现在来配置我们服务器端:
1) 将生成的ca.crt,dh1024.pem,server.crt,server.key复制到C:\Program Files\OpenVPN\config目录下,这四个文件是VPN服务端运行所需要的文件。
2) 利用sample-config文件目录下的server.ovpn的模版文件进行配置,由于CSDN博客使用的是markdown编辑器,所以这边不方便展示使用“#”号注释的代码,这边就不做复制粘贴,请各位移步到这个地址查看详细的server.ovpn配置,切记,这个是最最关键的地方,一定要多花时间,否则会导致后面的启动失败。
OpenVPN server端配置文件详细说明-作者:软件指南针
3) 配置完server.ovpn文件之后同样的拷贝到C:\Program Files\OpenVPN\config目录下,此时运行C:\Program Files\OpenVPN\bin\openvpn-gui.exe ,然后你的桌面的右下角会有一个这样的图标:,然后你用鼠标右键点击,可以看到这个子菜单: 如果你不能看到这个子菜单结构,则表示C:\Program Files\OpenVPN\config 这个目录中的文件有问题,可能是缺少部分文件,那么你再去检查一下,有时候甚至需要你重启一下服务器才可以,但一般情况下不建议重启服务器。如果正常的话,直接选择connect即可,成功启动界面: 当然也有启动失败的时候,我绝大多数的时候都是启动失败的,主要问题就在这个server.ovpn上面,因为这个文件的配置相对自由,所以你一定将这个文件配置好,否则前面的证书生成这些都白费了。
NO 6.搞定了服务器之后,我们还需要搞定我们的客户端这边:
1) 客户端client.ovpn文件配置详解:OpenVPN client端配置文件详细说明-作者:软件指南针
2) 客户端的启动:只要你client.ovpn文件配置好了,这个就非常简单了,我用的客户端是IOS上面,当然还有安卓、windows等等,如果让我来判断呢,IOS应该算是最麻烦的,因为OpenVPN这个程序没有上架到中国版的app store中,这就意味着你需要一个其他地区的apple id,这里借用一下骚逼汪提供的apple id,这个是香港的:
—
Apple ID:[email protected]
密码:Aa20162016
—
只登录你的app store就可以了,千万别登录itunes,以免被人锁机,app store登录方法我也一并附上吧:
-打开你的app store , 选择精品推荐这一栏目,如图:
-然后你一直往下滑动,一直到最后,你可以看到你的apple id
-直接点击你的apple id 选择注销,然后登录骚比汪提供的香港地区的apple id登录即可,在app store里面登录仅限用于下载,不会影响你icloud和itunes的问题的,你可以在通用里面查看一下,避免被锁机,然后直接搜索OpenVPN就可以下载了,下载就把这个ID注销,登录回自己的即可,下载的程序只要你不去删除是不会消失的,当然你可以想办法自己注册一个其他地区的apple id进行登录。
安装好了客户端之后还没有结束,还需要你使用PC上面的itunes工具,将客户端的证书以及根证书这些文件拷贝到OpenVPN目录中,具体方法如下:
-将你的手机与PC上面的itunes连接上,并点击
-进入到手机管理界面之后,再次选择应用,如图所示:
-这个时候在右边就可以看到这样的界面:
-然后点击最右边,记住是最右边的拖动条至最后:
-这时候你就可以点击OpenVPN这个图标了:
-点击添加文件,把所有有关的文件就选中,根证书,客户端证书,客户端的key文件等等,一股脑全部拉进去就可以了,然后你手机上面的OpenVPN就会提示你是否要新建一个VPN链接,点击加号新建,然后连接,搞定!重点内容
对于我最开始想要免流的问题这里就不做讲解了,因为四川联通好像没法免流,如果有知道的小伙伴记得分享一下哦。
一路走来,查了不少朋友的博客,我也一并附在文件中,方便我也方便大家更好的去理解这个OpenVPN吧,本人最近也搭建自己个微信公众号,有兴趣的朋友可以先关注哦,直接搜索 暴沸 即可,偶尔会给大家发一发科技圈的事儿和一些有意思的文章。反正关注不亏就对了。有问题也可以评论回复,看到后会尽量回复的。
参考资料: