使用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 远程连接

相关推荐
nnloveswc1 小时前
PTE-中间件安全
安全
冰水°1 小时前
3.1_文件上传漏洞
安全·网络安全·文件上传·条件竞争·.htaccess·文件上传绕过
ZJ_.2 小时前
Electron 沙盒模式与预加载脚本:保障桌面应用安全的关键机制
开发语言·前端·javascript·vue.js·安全·electron·node.js
星海幻影3 小时前
网络基础-超文本协议与内外网划分(超长版)
服务器·网络·安全
烬奇小云3 小时前
认识一下Unicorn
android·python·安全·系统安全
Sweet_vinegar5 小时前
Wireshark
网络·测试工具·安全·wireshark·ctf·buuctf
23zhgjx-NanKon7 小时前
华为eNSP:RSTP
网络·安全·网络安全·华为
javachen__11 小时前
从美国大选,看软件安全风险与挑战
网络·安全·web安全
看山还是山,看水还是。12 小时前
Oracle的字符串函数
运维·数据库·安全·oracle
daopuyun12 小时前
全面介绍软件安全测试分类,安全测试方法、安全防护技术、安全测试流程
网络·数据库·安全·安全测试