前言

在之前,我们使用 IP+端口的方式登录了 Nginx Proxy Manager(简称 NPM)

那么现在,我们就可以通过进行一些设置来使用域名来访问 NPM 的控制面板了

配置反向代理

首先还是使用 IP+端口的方式登录到 NPM,点击 Add Proxy Host

cf8

下面是一个示例

cf8

Domain Names :这里以 Nginx Proxy Manager 为例,域名前的二级域名可以自由定义
Scheme :默认 http 即可,除非你有自签名证书
Forward Hostname/IP :填入服务器的 IP,或者 Docker 容器内部的 IP(如果搭建在同一台服务器上的话)
Forward Port:填入映射出的端口,我定义的是是 833
Cache Assets :缓存,可以选择打开
Block Common Exploits: 阻止常见的漏洞,可以选择打开 (某些需要关闭)
Websockets Support :WS 支持,可以选择打开
Access List: 这个是 NPM 自带的一个限制访问功能,可以给页面添加账号密码进行访问

这里使用的是 Docker 容器内部的 IP (也可以使用你的服务器 IP),你可以使用以下来进行查询:

ip addr show docker0

申请 SSL 证书

在刚刚使用 IP+端口的方式访问 Nginx Proxy Manager 时不知道大家有没有注意到这里显示为不安全?

cf

这是因为我们使用的是 HTTP 进行的访问,数据是明文且未加密的,这时候我们就需要使用 SSL 证书来进行加密传输将我们的网站变成 HTTPS 来保证数据的安全性和隐私保护。

下面我们来申请一张 SSL 证书

ssl

你可以像我这样设置(注意不要使用示例邮箱,不然会发生错误)

ssl2

可以看到配置了证书的域名代理状态已经是在线

ssl3

那么我们使用刚刚定义的域名来进行访问

截屏2024-06-17 06.29.59

这里也变成安全了

截屏2024-06-15 19.13.48

搞定。

参考资料

https://blog.laoda.de/archives/halo-with-nginxproxymanager