使用FRP和OpenVPN实现校园网内网穿透

本文最后更新于:2022年5月12日 下午

使用FRP和OpenVPN实现校园网内网穿透

)因为手头闲置了一台腾讯云小水管,树莓派3b也没啥任务,就准备尝试一下内网穿透校园网。(学校自己的VPN也能用。)

  • 公网云服务器:运行FRP服务端
  • 公司内网服务器:运行FRP客户端、安装OpenVPN
  • 手头的设备:安装OpenVPN客户端进行连接

参考链接

使用FRP和OpenVPN实现内网穿透 – EI_’s Blog (spacesafe.top)

CentOS下搭建Frp内网穿透服务_宁静致远kioye的博客-CSDN博客_centos frp

VPN设置,设置OpenVPN访问公司内网,图文详细 - 运维笔记(ywbj.cc)

开个端口先

本次 frp 服务端监听 端口为 11451

OpenVPN 使用端口为 21194

所以 在腾讯云管理控制台先把这两个端口开了

frp是一个可用于内网穿透的高性能的反向代理应用,支持tcp、udp协议,为http和https协议提供了额外的能力,且尝试性支持了点对点穿透。

FRP采用GO语言开发,支持windows linux MacOS 等多平台部署

安装 frp 服务端与客户端

因为网络问题选择先下载好再上传

frp 项目地址: Releases · fatedier/frp (github.com)

服务端

在云服务器上操作

找个地方解压出来,然后进入目录

tar zxf frp_0.42.0_linux_amd64.tar.gz
cd frp_0.42.0_linux_amd64/

修改 frps.ini 内容如下

[common]
bind_port = 11451
# 默认配置中监听的是 7000 端口,可根据自己实际情况修改。

启动 frp 服务端

./frps -c ./frps.ini

客户端

在树莓派上操作

找个地方解压出来,然后进入目录

tar zxf frp_0.42.0_linux_arm64.tar.gz
cd frp_0.42.0_linux_arm64/

修改 frps.ini 内容如下

[common]
server_addr = *.*.*.*	# * 改为 FRP 服务端的公网 IP
server_port = 11451     # 为 FRP 服务端监听端口 上面配置端口对应

[vpn_test_tcp]
type = tcp
#local_ip = 127.0.0.1
local_port = 1194
remote_port = 21194

[vpn_test_udp]
type = udp
#local_ip = 127.0.0.1
local_port = 1194
remote_port = 21194

[common]
# server_addr 为 FRP 服务端的公网 IP
server_addr = *.*.*.*
# server_port 为 FRP 服务端监听的端口
server_port = 11451

启动 frp 客户端

# 先确保服务端启动了再启动客户端
./frpc -c ./frpc.ini

这样 frp 服务端就可以建立一个客户端连接了

设置 frp 开机自启

客户端服务端操作大同小异

注意:

客户端是 frpcfrpc.ini

服务端是 frpsfrps.ini

创建后台启动模版(服务端为例)

vi /etc/systemd/system/frps.service

ExecStart 根据自己放 frp 的目录选

[Unit]
Description=frps
After=network.target
[Service]
ExecStart=/home/yk/frp/frps -c /home/yk/frp/frps.ini
[Install]
WantedBy=multi-user.target
# 启动测试
systemctl start frps.service
# 查看启动状态
systemctl status frps.service
# 开机自启
systemctl enable frps.service

OpenVPN 配置

在树莓派上操作(与运行)

这里使用tun模式、tcp模式,比较容易搭建。手动搭建比较繁琐,我是直接使用一键搭建脚本。

脚本地址:https://github.com/angristan/openvpn-install

curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh

chmod +x openvpn-install.sh

sudo ./openvpn-install.sh

因为这里我没截图,就用参考博客的图了

3

4

5

然后启动 OpenVPN

# 启动测试
systemctl start openvpn.service
# 查看启动状态
systemctl status openvpn.service
# 开机自启
systemctl enable openvpn.service

在安装完成后,会生成一个以刚刚命名好的ovpn文件。

6

把这玩意下载下来

然后用文本编辑器打开并修改一处(应该是第三行)

remote xxx.xxx.xxx.xxx 21194
#将默认的1194端口改成FRP转发端口21194(上面FRP客户端配置文件配置的)

安装完成再次运行脚本,可选择 1)添加用户 2)移除已存在的用户 3)协助软件 4)退出

进行连接

我是在手机上测试的

安装 OpenVPN 客户端,选择我们修改好的 ovpn 文件,连接

)就是速度嘛,理解万岁,看了看论坛还行


使用FRP和OpenVPN实现校园网内网穿透
https://blog.ksfu.top/posts/24b6/
作者
康师傅
发布于
2022年5月12日
许可协议