内网穿透(frp+openvpn)部署方式

目的

工作环境为内网环境,离开公司后无法访问内部资源,特部署一套穿透工具,提高外地办公时的工作效率。
拓扑图

openvpn安装( windows系统)

openvpn是开源VPN软件,只需要简单的配置,就可以在企业搭建安全虚拟网络中使用,满足日常远程办公的需求。本篇文档为在windows服务器安装搭建openvpn记录,仅供参考

一、openvpn软件下载

安装包可以在github下载,或者去官网下载:

github.com/OpenVPN/ope...

OpenVPN

Community Downloads - Open Source VPN | OpenVPN

The OpenVPN community shares the open source OpenVPN. Download the latest version of the open source VPN release OpenVPN 2.6.3 for a secure network.

二、服务端安装

openvpn软件服务端和客户端都是同一个安装包,本次使用的openvpn安装包为2.5.6版本。

1.安装的时候要选择Customize, 勾选openvpn service和EasyRSA3 安装,用于服务端配置和证书生

2.安装完成后软件默认位置C:\Program Files\OpenVPN目录

三、证书生成

上一步我们已经安装了证书生成工具EasyRSA3,使用此工具即可生成所需证书。

1.进入EasyRSA shell 环境dos窗口

进入C:\Program Files\OpenVPN\easy-rsa目录,双击EasyRSA-Start.bat 进入EasyRSA shell 环境dos窗口中;

2.初始化证书生成程序

弹出的dos窗口中输入./easyrsa init-pki 初始化证书生成程序,初始化成功后会在C:\Program Files\OpenVPN\easy-rsa目录下新建文件夹kpi,如下图示:

3.生成ca证书

在dos窗口中输入./easyrsa build-ca nopass生成无密码CA证书,生成过程中会要求输入证书名称,随意输入即可,本次使用Open_CA作为名称,生成结束后会打印出证书所在目录easy-rsa\pki\ca.crt;

4.生成服务端证书

输入./easyrsa build-server-full server nopass 生成无密码服务端证书,生成后证书文件在C:\Program Files\OpenVPN\easy-rsa\pki\issued文件夹

5.生成客户端证书

输入./easyrsa build-client-full client nopass生成无密码客户端证书,生成后证书在C:\Program Files\OpenVPN\easy-rsa\pki\issued文件夹

6.生成DH密钥交换协议

输入./easyrsa gen-dh生成DH密钥交换协议文件,生成文件在C:\Program Files\OpenVPN\easy-rsa\pki目录下

7.目录C:\Program Files\OpenVPN\easy-rsa\pki\private下为证书key

四、服务器配置

服务端配置文件模板为server.ovpn ,在 C:\Program Files\OpenVPN\sample-config目录下

1.修改服务端配置文件

复制server.ovpn文件至C:\Program Files\OpenVPN\config目录, 修改如下选项:

a)端口:(公网需要对应开通此端口)port udp 1194

b)协议文件名:dh dh2048.pem修改为dh dh.pem

c)运行多用户使用同一客户端证书:;duplicate-cn取消注释(前面;号删除)修改为duplicate-cn

d)注释掉此行(前面加#号): tls-auth ta.key 0修改为#tls-auth ta.key 0

2.证书复制配置

将服务证书,服务key,ca证书,dh文件复制到文件夹C:\Program Files\OpenVPN\config下

3.连接

右键点击任务栏带锁小电脑图标,点击连接, 连接成功后会变绿,系统提示分配ip

注: 因为VPN需要通过公网访问,需要在路由器中将udp 1194端口转发到内网服务器所在ip

五、安装FRP

1、frp内网穿透简介

内网穿透,就是如果你有一台公网上的服务器,那么可以将家里的N个电脑映射到公网服务器上去,然后你就可以在公网的任意地方访问你家里的服务了。

2、下载安装包

安装包下载地址:

GitHub

Releases · fatedier/frp

A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet. - fatedier/frp

3、 注意事项

注意事项提前说,避免后面出现坑:

1.确认你的服务端口号:例如 你想远程桌面,默认是3389端口,你想做内网穿透的时候想改成 4489 ,那么需要以下这几点都做好,不然网不通。

2.验证本地端口:通过服务将默认端口改了,先从本地验证端口是正常的。

3.系统防火墙放行端口:从操作系统防火墙放行这个端口。

4.FRP客户端配置的代理端口和4489要一致。

5.如果在公司,公司层面的防火墙也要放行这个端口。

6.FRP服务器端口:如果用的是阿里云服务器做代理,注意阿里云控制台也得放行服务端的端口。

7.FRP所在的路径不能有中文。

8.FRP服务器不可以占用客户端所映射的端口。

部署流程

注意!无论是哪个平台的,要先部署服务器端,然后再部署客户端,否则客户端报错!!

4 windows版

4.1 服务端部署

1、拷贝frp安装包到服务器(目录不能有中文!),删除多余的文件,只留下面的三个:

2、修改服务端配置文件:直接编辑frps.ini(服务端配置文件):添加下面的内容,可以到frps-服务端配置文件模板.ini 里复制。

3、启动服务端**:** frps.exe -c ./frps.ini

4、登录控制台: http://127.0.0.1:7500/static/

5、防火墙放行7000端口**:** 7000这个端口是服务端和客户机之间通信用的默认端口,不是你转发服务时的那个端口,这个可以自己改,不过客户端也要跟着改才行。

6、配置开机自启动:将启动命令编辑到bat脚本,然后创建计划任务,设置成开机自启动即可。

4.2 客户端部署

1、拷贝frp安装包到你要映射端口的那个服务器,只留下面的三个文件:

2、然后编辑 frpc.ini 配置文件,添加下面的内容,可以参考:frpc-客户端配置文件模板.ini

3、启动客户端(从当前目录下运行cmd输入这个命令):frpc.exe -c frpc.ini

4.3 客户机访问

以上做好之后,在公网任意地方通过frp服务器的公网ip加上你的remote_port端口号来访问当前的服务即可。

4.4 客户端、服务端注册成服务

默认情况下,frp客户端和服务端需要用cmd命令行运行,而且窗口不能关,下面我们可以借助 nssm 工具将服务端和客户端注册成系统服务,然后开机自启动:

客户端和服务端注册方法相同

4.5 服务启动、停止命令

一、Linux启动和停止命令:

1、停止命令:

ps -aux|grep frp| grep -v grep --- 先找到frp进程

kill -9 进程ID --- 结束进程

2、启动客户端命令:nohup ./frpc -c ./frpc.ini --- 启动命令

二、Windows启动和停止命令:

1、启动服务端,在服务的所在目录下:frps.exe -c frps.ini

2、启动客户端,在服务的所在目录下:frpc.exe -c frpc.ini

3、停止服务:直接结束frp进程或者关闭frp命令行窗口。

4.6 Linux版客户机配置方法

1、上传安装包到/usr/frp下面,删除多余的文件(和Win版一样):

2、编辑配置文件,添加下面的内容:vim frpc.ini ,配置文件内容和windows版一样。

3、启动客户端:./frpc -c frpc.ini

4、设置成随系统启动:

(1)将启动命令制作成ssh脚本:vim ./start_frpc.ssh

(2)为脚本赋予可执行权限:chmod a+x ./start_frpc.sh

(3)将脚本添加到开机启动项:vim /etc/rc.local

有的时候一台服务器可能需要映射多个端口,这里就是配置多个端口的方法,Win和Linux版一样。

六、客户端安装

1.安装

双击OpenVPN-2.5.6-I601-amd64.msi,点击Install Now安装客户端,安装完成后目录C:\Program Files\OpenVPN

2.配置客户端文件

客户端配置文件client.ovpn,模板在C:\Program Files\OpenVPN\sample-config,复制该文件到C:\Program Files\OpenVPN\config目录下,修改客户端配置如下:

a)修改连接服务器地址: remote my-server-1 1194修改为remote 服务器公网ip 1194

b)注释掉此行(前面加#号): tls-auth ta.key 1修改为# tls-auth ta.key 1

3.证书复制

将客户端证书,客户端key,ca证书复制到该目录下C:\Program Files\OpenVPN\config

4.连接

右键点击任务栏带锁小电脑图标,点击连接,连接成功后系统分配ip,小电脑变绿

转载至记录下工作中内网穿透(frp+openvpn)部署方式 - 开发调优 / 开发调优, Lv2 - LINUX DO

因为后面工作需要使用openvpn,刚好看到,所以记录下~同时欢迎光临 LINUX DO

相关推荐
doupoa1 分钟前
Fabric 服务端插件开发简述与聊天事件监听转发
运维·python·fabric
BillKu2 分钟前
服务器多JAR程序运行与管理指南
运维·服务器·jar
QQ27402875631 分钟前
BlockMesh Ai项目 监控节点部署教程
运维·服务器·web3
南棱笑笑生1 小时前
20250512给NanoPi NEO core开发板在Ubuntu core20.04系统更新boot.img
linux·运维·ubuntu
小锋学长生活大爆炸2 小时前
【教程】Docker更换存储位置
运维·docker·容器
愚润求学2 小时前
【Linux】动静态库链接原理
linux·运维·服务器·开发语言·笔记
云攀登者-望正茂3 小时前
无缝部署您的应用程序:将 Jenkins Pipelines 与 ArgoCD 集成
运维·jenkins·argocd
勤不了一点3 小时前
小白上手RPM包制作
linux·运维·服务器·软件工程
麦a~M了M5 小时前
ansible
linux·运维·ansible
2501_906314326 小时前
MCP-RAG 服务器:完整设置和使用指南
运维·服务器