简介
创建这个项目是为了满足个人需求,为用户提供一种简单的方法来完成具有 SSL 终止的反向代理主机,它必须非常简单。虽然可能有高级选项,但它们是可选的,并且项目应该尽可能简单,以便进入这里的门槛很低。
特性
- 基于Tabler的美观安全的管理界面
- 无需了解 Nginx 即可轻松创建转发域、重定向、流和 404 主机
- 使用 Let’s Encrypt 的免费 SSL 或提供您自己的自定义 SSL 证书
- 主机的访问列表和基本 HTTP 身份验证
- 高级 Nginx 配置可供超级用户使用
- 用户管理、权限和审计日志
- 托管您的家庭网络
服务器购买推荐:
点击直达 腾讯云服务器
点击直达 海外服务器
点击直达 阿里云服务器
甲骨文重装系统
bash <(wget --no-check-certificate -qO- 'https://moeclub.org/attachment/LinuxShell/InstallNET.sh') -d 11 -v 64 -a -firmware -p 123456
更新系统环境
apt update -y && apt install -y curl && apt install -y socat && apt install wget -y
安装sudo
apt-get install sudo
安装BBR PLUS
四合一脚本(可选)
wget -N --no-check-certificate "https://raw.githubusercontent.com/chiakge/Linux-NetSpeed/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
安装 Docker
sudo apt install docker.io -y && sudo apt install docker-compose
自启动docker
sudo systemctl enable --now docker
- 安装
Docker、Docker-compose
:相关教程
开始搭建
创建目录并进入目录
cd /root/
mkdir nginx
cd nginx
创建docker-compose.yml的文件
nano docker-compose.yml
复制代码进入文件中
version: "3"
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
# These ports are in format <host-port>:<container-port>
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
# Add any other Stream port you want to expose
# - '21:21' # FTP
environment:
DB_MYSQL_HOST: "db"
DB_MYSQL_PORT: 3306
DB_MYSQL_USER: "npm"
DB_MYSQL_PASSWORD: "npm"
DB_MYSQL_NAME: "npm"
# Uncomment this if IPv6 is not enabled on your host
# DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
depends_on:
- db
db:
image: 'jc21/mariadb-aria:latest'
restart: unless-stopped
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
crl+x
然后y
然后回车退出编辑模式。
启动
docker-compose up -d
登陆方式 http://ip:81
默认用户名密码
Email: admin@example.com
Password: changeme
设置用户名 & 邮箱
登录第一个页面就是设置用户名和邮箱,根据自己的情况来修改用户名和邮箱。
修改登录密码
第一个输入框是输入当前密码,也就是:changeme
添加证书
打开SSL Certificates
,然后点击 Add SSL Certificate
等待成功
申请成功
申请成功后,可以看到有一个SSL
证书列表在这里,并且在右边可以看到申请时间。
反向代理服务
什么时候用到反向代理?
我们使用Docker
部署服务的时候,一般就使用到了反向代理了。
添加代理服务
进入代理主机服务
开放端口
这里开放端口,只需要开放服务器的防火墙端口,服务器的安全组不需要开放端口,这是因为在使用Nginx Proxy Manager
代理Docker
服务时,NPM
会将流量从指定的端口转发到相应的Docker
容器,如果你的服务器的防火墙没有相应端口开放,请求将无法到达docker
容器,从而导致反向代理功能无法正常工作。
比如我上面反向代理docker
服务的5350
端口,那么我就要在服务器开放5350
端口,开放这个端口其实倒也不需要太担心安全问题,只要你不在服务器商的安全组开放端口就好了吗,服务器的端口依然不会被外部访问。
自定义配置
如果你需要自定义Nginx配置,你可以在你需要的主机中,打开Advanced
自定义配置,比如下面,我做一个简单的location
配置。
评论区