一、介绍

1、Nginx Proxy Manager是一个用于管理和配置Nginx反向代理的图形化界面工具。它提供了一个简单而强大的方式来管理多个网站、应用程序或服务之间的反向代理设置。

2、Nginx Proxy Manager建立在Nginx软件的基础上,提供了一个用户友好的界面,使得配置和管理反向代理变得更加容易。它可以帮助你设置域名和SSL证书、管理路由规则和访问控制列表,并监控代理的性能和健康状态。
3、
你可以在Nginx Proxy Manager的官方GitHub页面找到软件的网址和更多详细信息。以下是它的GitHub链接:https://github.com/jc21/nginx-proxy-manager


二、反向代理概述

反向代理是一种网络技术,它代表服务器接收客户端请求,并将这些请求转发到后端服务器,然后将后端服务器的响应返回给客户端。与传统的正向代理不同,正向代理代表客户端发送请求到服务器。

举例来说,假设你有一个 Web 服务器运行在内部网络中,它提供了一些 Web 应用程序或服务。然而,由于安全或其他原因,你不希望直接将这些服务暴露给外部网络。这时,你可以使用反向代理来解决这个问题。

具体来说,反向代理的用途如下:

1、负载均衡:当你有多个后端服务器提供相同的服务时,反向代理可以分发客户端请求到这些服务器上,实现负载均衡。它可以根据服务器的负载情况、性能指标或其他策略来动态选择合适的后端服务器,并确保请求被平均分布,提高系统的性能和可扩展性。

2、缓存加速:反向代理可以缓存后端服务器的响应,以减少对后端服务器的请求次数。它可以缓存常用的静态资源或动态内容,并将这些内容直接返回给客户端,而无需再次请求后端服务器。这可以显著提高响应速度和网络带宽利用率,减轻后端服务器的负载。

3、安全性和访问控制:反向代理可以充当一个安全屏障,保护后端服务器免受直接的外部访问。它可以过滤和阻止恶意请求、DDoS 攻击、SQL 注入等恶意行为。此外,反向代理还可以实施访问控制策略,限制对特定资源或 URL 的访问权限。

4、SSL证书管理:反向代理可以处理客户端与后端服务器之间的 SSL/TLS 加密。它可以负责 SSL 握手和证书管理,从而减轻后端服务器的负载和处理成本。客户端与反向代理之间的连接可以使用 SSL,而反向代理与后端服务器之间的连接可以使用普通的 HTTP。


三、部署Nginx Proxy Manager

要将Nginx Proxy Manager部署在自己的服务器上,你可以按照以下详细步骤进行操作:

1、准备服务器:
确保你有一台运行常见Linux发行版(如Ubuntu、Debian、CentOS等)的服务器。你可以自己购买服务器或者使用云服务提供商(如AWS、DigitalOcean等)的虚拟机实例。确保服务器上已安装Docker和Docker Compose。如果没有安装,你可以按照Docker官方文档提供的说明进行安装。Docker安装可参考:https://www.tycp.xyz/2023/06/37.html

2、获取Nginx Proxy Manager:
使用SSH或其他远程连接方式登录到服务器。在服务器上创建一个目录来存储Nginx Proxy Manager的配置文件和数据。例如,可以使用以下命令创建一个名为nginx-proxy-manager的目录:

mkdir nginx-proxy-manager
cd nginx-proxy-manager

3、创建docker-compose.yml文件:
在nginx-proxy-manager目录中创建一个名为docker-compose.yml的文件。使用文本编辑器打开该文件,并将以下内容复制到docker-compose.yml中:

version: "3"
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: always
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
      - ./client_max_body_size.conf:/etc/nginx/conf.d/client_max_body_size.conf

保存并关闭docker-compose.yml文件。

4、启动Nginx Proxy Manager:
在终端中,运行以下命令启动Nginx Proxy Manager。

docker-compose up -d

5、访问Nginx Proxy Manager界面
当Nginx Proxy Manager启动后,你可以通过服务器的IP地址或域名,使用Web浏览器访问Nginx Proxy Manager的管理界面。
打开浏览器,输入http://IP:81(将IP替换为服务器的实际IP地址)或http://域名:81。你将会看到Nginx Proxy Manager的初始设置向导。按照向导的指示设置管理员账户和密码,并进行其他必要的配置。

6、配置代理主机和路由规则:
在Nginx Proxy Manager的管理界面中,你可以使用"Proxy Hosts"选项卡来添加代理主机并配置路由规则。点击"Add Proxy Host"按钮,填写主机名称、域名和目标URL等信息。然后,点击代理主机的名称,通过"Routes"选项卡添加和配置路由规则。

7、配置DNS
为了将你的域名解析到Nginx Proxy Manager所在的服务器,你需要在DNS设置中添加相应的记录。具体操作方式取决于你使用的域名注册商或DNS服务提供商。


2023-07-09_111958.png