内网穿透(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

相关推荐
cmgdxrz2 小时前
金融项目实战 05|Python实现接口自动化——登录接口
运维·金融·自动化
Cui晨2 小时前
MAC AndroidStudio模拟器无网络
运维·服务器·网络
墨子裳3 小时前
Linux入门——权限
linux·运维·服务器
昵称难产中3 小时前
浅谈云计算09 | 服务器虚拟化
linux·运维·服务器·云计算
zstar-_3 小时前
个人主页搭建全流程(Nginx部署+SSL配置+DCDN加速)
运维·nginx·ssl
兔帮大人4 小时前
Nginx防止点击劫持:X-Frame-Options
运维·nginx
真想骂*4 小时前
自动化解决方案:修复devicedisplaystatusmanager.dll丢失
运维·microsoft·自动化
路星辞*4 小时前
PBR(策略路由)的几种使用方式
运维·服务器·网络·安全·pbr
会飞的土拨鼠呀4 小时前
开源的镜像扫描的软件
运维·服务器
基哥的奋斗历程5 小时前
Docker官网安装
运维·docker·容器