侧边栏壁纸
博主头像
duan6666的blog

行动起来,活在当下

  • 累计撰写 7 篇文章
  • 累计创建 4 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

安装Nginx-Proxy-Manager进行反向代理并自动续期证书

duan6666
2024-12-13 / 0 评论 / 0 点赞 / 73 阅读 / 0 字
温馨提示:
本文最后更新于2025-03-11,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
Nginx Proxy Manager是一个基于Web界面、用于轻松管理Nginx反向代理配置的工具。

它使得设置、管理和维护反向代理配置变得更加简单和直观。其拥有:

  1. 用户友好的Web界面:通过Web界面,你可以轻松创建和管理反向代理配置,而无需手动编辑Nginx配置文件。对新手用户特别友好,降低了使用Nginx的门槛。
  2. 快速设置反向代理:只需几分钟,你就可以设置一个反向代理(包括SSL/TLS加密)。这是通过GUI完成的,不需要编写任何代码或手动处理配置文件。
  3. SSL证书管理:Nginx Proxy Manager支持自动从Let’s Encrypt申请SSL证书,并会自动更新过期的证书。此外,它也允许手动上传自定义的SSL证书。
  4. 多域名支持:你可以通过Nginx Proxy Manager管理多个域名的反向代理配置,每个域名可以有不同的配置。
  5. 访问控制:提供基于IP的访问控制和身份验证功能,以确保只有授权人员可以访问你的反向代理服务器。

1. 拉取镜像

编写该文章时,该镜像已有新版本,请按需安装想要的版本
个人建议使用Nginx Proxy Manager时谨慎选择版本
一些旧版可能出现无法获取证书的问题,最新版可也能包含问题

docker pull jc21/nginx-proxy-manager:2.12.0

2.编辑compose文件

vim docker-compose.yml

以下是docker-compose.yml文件的内容

version:  '3.4'  #必选
services:  #必选
    npm:  #必选
        container_name:  npm  #容器名
        hostname: npm #主机名
        image:  'jc21/nginx-proxy-manager:2.12.0'  # 选择刚刚拉取好的镜像 # 必选
        restart:  unless-stopped  # 出错时总是重启该容器,但不考虑Docker启动时上次并未启动的容器 #可选
        environment:  #配置环境变量
            -  PUID=0  #用户权限
            -  PGID=0  #组权限
            -  DISABLE_IPV6=true  # 关闭IPV6访问
        volumes:  # 配置目录挂载 #必选
        # 这里演示的目录为:与docker-compose.yml文件相同的目录,格式为
        # 本机目录:容器目录
            -  ./data:/data  # 挂载数据
            -  ./letsencrypt:/etc/letsencrypt  #挂载证书
        #network_mode: host  #使用主机网络
        ports:  # 配置容器与主机的端口映射关系
        # 本机端口:容器端口
            #- "80:80"  
            -  "443:443"  
            -  "81:81"

编写完成后,按下esc,输入:wq保存并退出
启动这个容器并后台运行(-d)

docker-compose up -d

3.配置SSL证书自动续期

使用 本机IP:81 登入Nginx Proxy Manager

账号默认为:admin@example.com
密码默认为:changeme

登入后提示更改账号

配置完账号后更改密码
第一个为原密码:changeme

点击SSL Certificates

使用Let's Encrypt获取在线证书
填写你的domain(域名)email(电子邮箱)
下发的DNS Provider(域名提供商)我使用的是Cloudflare

Cloudflare登陆
选择你绑定在Cloudflare的域名

选择获取您的API令牌

点击创建令牌

使用编辑区域DNS的模板

编辑域资源为你的域名
上方的权限为模板自动填充,无需更改
下方的客户端 IP 地址筛选可以禁止\仅允许某个地区使用该API(选填)

点击继续->创建令牌

此时API令牌创建完成
点击COPY复制令牌

将令牌填充至这个位置,右下角保存
我演示所使用的域名为hub.duan6666.top*.hub.duan6666.top
你可以配置为你的域名*.你的域名

稍等片刻,证书便获取好了

3.配置反向代理

Hosts这里设置代理主机(Proxy Hosts)

在右上角点击Add Proxy Host(添加代理主机)
填入Domain Names(域名),回车
填写你想要反向代理的配置,我这里便填写Nginx Proxy Manager的后台地址作为演示

SSL这里选择你刚刚获取的证书
选择好后,点击完成

4.测试你的反向代理

若你已配置完成域名解析,将域名解析到你的IP,则可以打开页面测试你的网页是否能打开
也可以修改本地操作系统的hosts文件,解析域名到你配置好已运行的Nginx Proxy Manager主机


可以访问!

0

评论区