【Linux | Docker】内网穿透实现远程访问Nginx Proxy Manager

秋说 2024-07-20 10:37:13 阅读 87

文章目录

前言1. docker 一键安装2. 本地访问3. Linux 安装cpolar4. 配置公网访问地址5. 公网远程访问6. 固定公网地址

前言

Nginx Proxy Manager 是一个开源的反向代理工具,不需要了解太多 Nginx 或 Letsencrypt 的相关知识,即可快速将你的服务暴露到外部环境,并且支持 SSL 配置。基于 Tabler 的美观且安全的管理界面,无需了解 Nginx 即可轻松创建转发域、重定向、流和 404 主机。

下面介绍在Linux 安装Nginx Proxy Manager并且结合 cpolar内网穿透工具实现远程访问管理界面,同等,当我们使用Nginx Proxy Manager配置其他本地服务,并且需要远程访问,也是同样的方式。

1. docker 一键安装

输入命令,docker 一键启动:

docker run -d -p 80:80 -p 81:81 -p 443:443 --restart=always -v ~/data:/data -v ~/letsencrypt:/etc/letsencrypt jc21/nginx-proxy-manager:latest

运行后,输入docker ps 即可看到运行的容器,命令挂载了三个端口,80 和 443 端口是访问服务的端口,81 端口是Nginx Proxy Manager管理页面端口。

image-20230921162309814

2. 本地访问

上面服务搭建好后,首先访问81端口的管理界面,可以看到Nginx Proxy Manager的登录界面,输入默认账号: admin@example.com和默认密码:changeme即可登陆,这边是Linux 内部浏览器访问,如局域网ip访问,需检查防火墙是否关闭,本地访问无误后,下面安装cpolar 内网穿透工具

image-20230921162757297

3. Linux 安装cpolar

上面我们在Linux 部署了Nginx Proxy Manager,下面我们在Linux安装cpolar内网穿透工具,通过cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器。下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

使用一键脚本安装命令

curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash

向系统添加服务

sudo systemctl enable cpolar

启动cpolar服务

sudo systemctl start cpolar

cpolar安装成功后,在外部浏览器上访问Linux 的9200端口即:【http://局域网ip:9200】,使用cpolar账号登录,登录后即可看到cpolar web 配置界面,结下来在web 管理界面配置即可

image-20230831171159175

4. 配置公网访问地址

这里利用Nginx Proxy Manager 内部nginx 代理转发机制,结合cpolar 的公网地址,实现转发本地81端口的Nginx Proxy Manager web 管理界面服务可以远程访问

点击左侧仪表盘的隧道管理——创建隧道,创建一个Nginx Proxy Manager的cpolar 公网地址隧道。

隧道名称:可自定义命名,注意不要与已有的隧道名称重复协议:选择http本地地址:81 (本地服务的端口)域名类型:免费选择随机域名地区:选择China vip

点击创建

image-20230922094132401

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,然后复制cpolar生成的公网地址,前面的http://协议名称不用复制

image-20230922094356574

打开Nginx Proxy Manager管理界面登录进去后,点击Add Proxy Host

image-20230922094704517

将cpolar 域名 输入Domain Names中,下面输入本地服务的端口和本机ip,这里演示的是配置Nginx Proxy Manager web 管理界面,如果是其他服务,可以将端口换成其他服务端口,输入完成点击保存

image-20230922110000814

5. 公网远程访问

上面添加完成后,可以在管理界面列表看到一个添加的记录,且是Online在线状态

image-20230922110104945

这个时候使用cpolar公网地址即可在任意设备浏览器访问Nginx Proxy Manager管理界面。这里使用的是http访问,https还需单独配置,具体可以参考官方文档

image-20230922110140408

6. 固定公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20230922110808777

保留成功后复制保留成功的二级子域名的名称

image-20230922110830276

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20230922111555921

修改隧道信息,将保留成功的二级子域名配置到隧道中

域名类型:选择二级子域名Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20230922111639750

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名,我们把固定的域名配置到Nginx 管理界面那边

image-20230922111731631

编辑我们上面添加的记录,

image-20230922111944936

然后我们把cpolar随机地址改为固定地址,点击保存

image-20230922112054909

保存后可以看到列表的地址变成了固定的公网地址

image-20230922112137633

使用cpolar公网地址,在任意浏览器打开,即可访问到我们本地服务

image-20230922112310346



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。