简单、易懂、电脑小白都能学会的教程
作者:落樱花泪雨 @BILIBILI
本教程遵循CC-BY-NC-SA 4.0协议,可以进行标明原作者的非商业的转载
本教程的图片部分来源于网络
一. 基本原理(小白向):
校园网的认证系统,是通过拦截http请求达到的认证效果,而部分UDP端口是开放的(没有被封禁的)

上图的几个udp端口基本上不会被校园网封禁
本教程不适合所有的校园网,在你开始前,建议使用连接到校园网的电脑在cmd命令行中输入“tracert baidu.com”,如果出现下图内容则代表DNS解析可用。

二. 准备工作
1.云服务器\在非校园网内的服务器(也就是有公网ip的服务器)
本文用到的服务器为自建机房的服务器,系统为 windows server 2019
如果你没有自己的服务器,建议使用阿里云的云服务器(学生有优惠)阿里云、腾讯云等云服务器在进行搭建前请在安全策略组中放行UPD53、67、68、69等相关端口,或者直接开启全部TCP+UDP,但开启全部TCP+UDP并不安全)
2.SoftEther vpn Server
3.openvpn GUI
三. 服务器端操作
利用远程桌面连接连接到服务器,在浏览器地址栏中输入:
https://github.com/SoftEthervpn/SoftEthervpn_Stable/releases/download/v4.38-9760-rtm/softether-vpnserver_vpnbridge-v4.38-9760-rtm-2021.08.17-windows-x86_x64-intel.exe
需要特殊方法访问此网站,这里不提供直接下载
下载完成后运行安装包,选择安装SoftEther vpn Server。

然后勾选同意许可,一直下一步直至安装完成,来到管理界面,点击连接。

输入密码,然后勾选远程访问。

点击下一步后,关闭其他标签卡即可,至此服务器端安装完成。
四. 客户端(本机)操作
安装与服务器相同的软件,选择安装SoftEther vpn Server管理工具。

安装完成后,点击“新设置”。
安装完成后,点击“新设置”。


设置完成后点击“连接”,进入管理器,选择“管理虚拟Hub”。

选择“管理用户”——“新建”——按下图设置

接下来回到管理虚拟HUB界面,点击虚拟NAT和虚拟DHCP服务器

点击启用SecureNAT,并在弹出的提示框中选择确定。

回到管理界面,点击openvpn/MS-SSTP设置

填入对应端口后,点击生成配置文件。

将生成的压缩包解压后将红框的文件保存备用。
会生成两个ovpn文件,我们需要用的是l3的文件

文件示例如下
dev tun
proto udp
remote [服务器ip] 53
# The supported algorithms are as follows:
# cipher: [NULL-CIPHER] NULL AES-128-CBC AES-192-CBC AES-256-CBC BF-CBC
# CAST-CBC CAST5-CBC DES-CBC DES-EDE-CBC DES-EDE3-CBC DESX-CBC
# RC2-40-CBC RC2-64-CBC RC2-CBC CAMELLIA-128-CBC CAMELLIA-192-CBC CAMELLIA-256-CBC
# auth: SHA SHA1 SHA256 SHA384 SHA512 MD5 MD4 RMD160
cipher AES-256-CBC
auth SHA256
setenv opt block-outside-dns # Prevent Windows 10 DNS leak
tun-mtu 1400
resolv-retry infinite
nobind
persist-key
persist-tun
client
verb 3
auth-user-pass
<ca>
-----BEGIN CERTIFICATE-----
[域名的CA根证书块]
-----END CERTIFICATE-----
</ca>
<cert>
-----BEGIN CERTIFICATE-----
[域名的cer证书块]
-----END CERTIFICATE-----
</cert>
<key>
[域名证书的rsa私钥]
-----END RSA PRIVATE KEY-----
</key> 请对照上面的 补齐你的参数,(自动生成的时候 可能会有两行是 cipher xxx ;auth xxxx) 你先改成
cipher AES-256-CBC
---然后记得把[服务器ip]改成自己的服务器ip或域名即可---
上面的步骤,大部分教程都会提到,但如何配置证书,就成了小白的一个问题,这里我推荐直接用免费域名的ssl证书来配置,具体的话看下面文字叙述.
所以你最好在腾讯云注册一个域名,然后申请ssl证书



免费签发的ta tls rsa ca证书

签发成功后,右侧会有下载按钮,点击下载

我们需要分别下载这两个证书文件
下载完成后,会有两个文件压缩包,解压后就是两个文件夹
具体文件名应该是 xxx.xx_root 和 xxx.xx_other

我们回到管理界面,打开加密与网络
这个时候,我们选择加密方式为:AES256-SHA256

然后在服务端证书的这个地方

在里面,我们点击导入,然后选择导入我们上面的xxx.xx_other文件夹里面的这两个文件

先导入crt文件
然后会让你再导入key

然后回到管理界面,进入"管理HUB界面"

选择添加
然后为了保险起见,在这里面的添加的时候,把 xx.xx_root文件夹里面的根证书 导入进去,然后建议和上面一样,把bundle.crt也导进去

全部导入进去后就是两行,这个时候我们关闭退出这些界面。
接下来,我们再度打开我们之前修改后的xxxxxxxx_l3.ovpn文件
在里面,我们拉到最下面,可以看到这三个区块是没有填写的
<ca> -----BEGIN CERTIFICATE----- [域名的CA根证书块] -----END CERTIFICATE----- </ca> <cert> -----BEGIN CERTIFICATE----- [域名的cer证书块] -----END CERTIFICATE----- </cert> <key> ------BEGIN RSA PRIVATE KEY----- [域名证书的rsa私钥] -----END RSA PRIVATE KEY----- </key>
现在呢,用你电脑的记事本打开 xxx.xxx_root 里面的根证书文件,然后全部复制粘贴替换<ca> </ca>里面的内容
________
同理 用xxx.xxx_bundle-crt里面的内容 全部复制替换下面块的内容
<cert>
[替换]
</cert>
用xxxx.key替换
<key>
[替换]
</key>

正确示例 2022.4.23更新
如果你之前没有修改[服务器ip]里的内容的话,修改成自己服务器的域名或IP然后保存
正确示例: remote xxx.net 53 或者 remote 11.1.1.1 53
五.连接使用
之后安装PC版openvpn,然后运行你的openvpn gui
openvpn下载地址:https://openvpn.net/index.php/open-source/downloads.html (不提供直接下载)
在电脑右下角任务徽标栏找到对应图标。

右键图标------点击import file 导入你自己最终修改后的ovpn文件

导入成功后,右键选择连接。

之后输入你自己之前创建用户的账号和密码
然后就可以连接了...(教程完)
实际网络速度受搭建所使用服务器的带宽所影响。
本人的服务器是 500M下载 60M上传的服务器,实际体验还是非常快的,如果是阿里云学生机的话,那带宽可能会很慢,但能绕过校园网了,速度慢一点就慢一点吧
六.常见问题
1. 检查服务器防火墙是否关闭,检查安全策略组相应端口是否放行。(服务器系统防火墙上也要放行udp53端口,如果是自己搭建的服务器,可能需要在路由器NAT设置中再放行一次udp53)
2. 如有其他问题,可留言
声明:本人分享该教程是希望大家,通过这个教程了解信息安全并提高警惕!本教程仅限于教学使用,不得用于其他用途触犯法律,本人一概不负责,请知悉!
免责声明:本文旨在传递更多市场信息,不构成任何投资建议和其他非法用途。文章仅代表作者观点,不代表手机电脑双黑客立场。以上文章之对于正确的用途,仅适用于学习
————————————————————————————————
2022.4.23更新
以下是常见的报错和解决方案:
1. 为什么我前几次可以连上,然后就连不上了呢?(这个时候可能会报MANAGEMENT: >STATE:1647848615,WAIT,,,,,,)
这种情况大概率是因为端口被占用,进程没有被杀死导致的
我们这个时候查查服务器是不是占用端口了 cmd输入 netstat -ano |findstr 【端口号】

如图所示 最后一行为pid
然后找找占用端口的pid 然后结束这个pid taskkill /f /t /im 【pid】

此时,重新连接大概率就能恢复了。
私信很多,我这个号也不经常用,所以有问题的话,还是希望大家多去尝试,我这边会放一些常见的解决方案
更新说明:
2022.4.23重新编写了文章,如果你在搭建遇到了问题,可以重新阅读一遍文章,有些地方被修改了,另外还加入了常见问题的解决方法,此专栏的可编辑次数只剩下一次,后续更新日期待定