Pritunl搭建OpenVPN服务器详细流程,快速实现公网远程连接!

文章目录

前言

Pritunl是一款免费开源的 VPN 平台软件(但使用的不是标准的开源许可证,用户受到很多限制)。这是一种简单有效的VPN方式,一方面能有一个相对简单的途径,易于初级用户迅速搭建 VPN 服务;另一方面有能抵御墙的干扰,提供稳定有效的代理服务。Pritunl采用 OpenVPN 代理方式,一方面提供了 API 供高级开发者使用,同时还针对不同平台和不同 VPS 供应商 (包括DigitalOcean和AWS)提供了详尽的安装使用说明,DEMO显示它有图形化界面,方便了初级用户的使用,官方称其能在数分钟内完成搭建过程,这大大的降低了使用门槛。下面我们结合cpolar 工具,实现远程连接pritunl openVPN.

1.环境安装

创建MongoDB仓库文件:

bash 复制代码
sudo tee /etc/yum.repos.d/mongodb-org-6.0.repo << EOF

添加如下内容,然后回车:

bash 复制代码
[mongodb-org-5.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF

创建pritunl仓库文件

bash 复制代码
sudo tee /etc/yum.repos.d/pritunl.repo << EOF

在下面添加如下内容,然后回车:

bash 复制代码
[pritunl]
name=Pritunl Repository
baseurl=https://repo.pritunl.com/stable/yum/oraclelinux/8/
gpgcheck=1
enabled=1
EOF

从密钥服务器导入签名密钥

shell 复制代码
gpg --keyserver hkp://keyserver.ubuntu.com --recv-keys 7568D9BB55FF9E5287D586017AE645C0CF8E292A
shell 复制代码
gpg --armor --export 7568D9BB55FF9E5287D586017AE645C0CF8E292A > key.tmp; sudo rpm --import key.tmp; rm -f key.tmp

安装oracle-epel-release-el8

shell 复制代码
sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
2.开始安装

安装pritunl-openvpn,执行下列命令,然后等待安装完成

shell 复制代码
sudo yum --allowerasing install pritunl-openvpn

出现下面界面表示成功

安装mongodb-org

shell 复制代码
sudo yum -y install pritunl mongodb-org

出现如下界面表示安装成功

启动mongod pritunl

shell 复制代码
sudo systemctl start mongod pritunl

设置开机启动(尽量在配置所有服务且连接无误后再使用开机启动)

shell 复制代码
sudo systemctl enable mongod pritunl

关闭一下防火墙(centOS8)

shell 复制代码
systemctl stop firewalld
3.访问测试

打开外部浏览器,我们使用https协议+局域网ip地址访问,即可看到web 界面,在web 界面上 有个key的参数需要我们输入.

执行下面命令获取key

shell 复制代码
sudo pritunl setup-key

执行后我们可以看到key,然后复制

把key写到界面上面,然后点击save

然后就能看到登陆界面,登陆界面提示执行命令获取默认的密码和登陆信息

执行下面命令获取登陆信息:

shell 复制代码
sudo pritunl default-password

执行后可以看到我们的用户名和密码

我们使用获取的账号密码登陆即可

登陆进去后,提示我们可以修改一下用户名和密码,这里只修改一下密码,Public Address 的值改成设备的局域网ip(注意是你设备的局域网ip,通过输入在设备上输入ip address 可以查看),其他参数不知道可以不设置,设置后点击save

4.创建连接

先创建一个组织

填写组织名称,点击 Add添加

添加好组织后,添加一个用户

填写用户名称,点击Add

然后添加server服务

填写server的信息包括名称,协议tcp,然后点击save

然后点击绑定组织

选择无误后点击attach

然后我们点击启动服务,在这个页面上我们可以看到一个端口号:12650,这个是我这边的端口号,具体端口号以你自己的端口号为准.

5.局域网测试连接

进入openVPN官网下载OpenVPN 连接工具:https://openvpn.net/community-downloads/,windwos 64 位我们下载第一个

下载好后安装打开即可,然后我们把连接的配置文件下载下来,打开pritunl web 界面,点击上面user,然后点击下载我们上面创建的用户的连接配置文件

解压后可以看到这个配置文件

下载好配置文件后我们导入配置文件,在右下角右键openVPN图标

选择配置文件导入

选择我们下载的配置文件即可

然后我们再次右键图标,选择我们导入的配置文件连接,连接成功后在windwos会弹出一个提示,表示连接成功,局域网连接表示可以了

6.安装cpolar

上面我们在本地Linux安装了pritunl 并且局域网测试ok,下面我们安装cpolar内网穿透工具,通过cpolar的http公网地址,我们可以很容易实现远程连接,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

  • 使用一键脚本安装命令
shell 复制代码
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • token认证

登录cpolar官网后台,点击左侧的验证,查看自己的认证token,之后将token贴在命令行里:

shell 复制代码
cpolar authtoken xxxxxxx
  • 向系统添加服务
shell 复制代码
sudo systemctl enable cpolar
  • 启动cpolar服务
shell 复制代码
sudo systemctl start cpolar
7.配置固定公网访问地址

在cpolar中,临时tcp端口地址,所生成的公网地址为随机临时地址,该公网地址24小时内会随机变化。我们使用其配置固定的TCP端口地址,该地址不会变化,设置后将无需每天重复修改地址。

配置固定tcp端口地址需要将cpolar升级到专业版套餐或以上。

保留一个固定tcp地址登录cpolar官网,点击左侧的预留,找到保留的tcp地址,我们来为我的世界保留一个固定tcp地址:

  • 地区:选择China vip
  • 描述:即备注,可自定义

点击保留

地址保留成功后,系统会生成相应的固定公网地址,将其复制下来

*然后我们在浏览器上访问Linux局域网ip地址+9200端口,登录cpolar web UI管理界面。登录成功后,点击左侧仪表盘的隧道管理------创建隧道:

隧道名称:可自定义,注意不要与已有的隧道名称重复

  • 协议:tcp
  • 本地地址:12324 (注意这个端口,需填写在官网保留地址对应的端口)
  • 域名类型:固定tcp端口
  • 地区:选择China VIP
  • 预留的tcp地址:填写官网保留成功的地址,

点击创建

然后打开在线隧道列表,查看tcp协议的公网地址,在这里我们可以看到,本地地址端口号和公网ip端口号是一致的

8.远程连接测试

上面我们通过cpolar工具创建了一个tcp的公网ip地址,我们复制地址前面一段:5.tcp.vip.cpolar.cn,打开pritunl web 界面,点击settings,更改我们的Public Address

设置好以后,点击停止服务 stop server,然后点击服务名称,进入修改服务端口

把端口改成我们上面cpolar创建的公网地址5.tcp.vip.cpolar.cn:12324对应的端口:12324

改好后我们启动服务

然后同样下载一遍配置文件,因为我们更换了地址,所以需要重新下载连接的配置文件

下载后导入,选择导入配置文件,

会提示是否替换之前的文件,点击是即可,

然后我们选择同配置文件名称一样的连接进行连接

我们可以在windwos提示界面看到已连接,表示成功连接

转载自cpolar极点云文章:Pritunl OpenVPN 远程连接

相关推荐
007php0075 小时前
linux服务器上CentOS的yum和Ubuntu包管理工具apt区别与使用实战
linux·运维·服务器·ubuntu·centos·php·ai编程
人类群星闪耀时5 小时前
深度学习在灾难恢复中的作用:智能运维的新时代
运维·人工智能·深度学习
djykkkkkk5 小时前
ubuntu编译遇到的问题
linux·运维·ubuntu
LinkTime_Cloud5 小时前
GitLab 将停止为中国区用户提供服务,60天迁移期如何应对? | LeetTalk Daily
大数据·运维·gitlab
qq_429856575 小时前
linux 查看服务是否开机自启动
linux·运维·服务器
就爱学编程6 小时前
重生之我在异世界学编程之C语言:数据在内存中的存储篇(下)
java·服务器·c语言
Smile丶凉轩6 小时前
Docker核心技术和实现原理
运维·docker·容器
清风细雨_林木木6 小时前
Docker使用——国内Docker的安装办法
运维·docker·容器
运维&陈同学6 小时前
【Kibana01】企业级日志分析系统ELK之Kibana的安装与介绍
运维·后端·elk·elasticsearch·云原生·自动化·kibana·日志收集
dessler7 小时前
Docker-Dockerfile讲解(三)
linux·运维·docker