打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

如何搭建Nginx Proxy Manager并使用反向代理和远程桌面加速:修订间差异

来自md5.pw
Air留言 | 贡献
更新
Air留言 | 贡献
无编辑摘要
 
(未显示同一用户的4个中间版本)
第1行: 第1行:
Nginx Proxy Manager是一个方便和轻量程序,用非常简单的方式实现网站反向代理,并添加SSL证书,也可设置端口转发。
Nginx Proxy Manager (NPM)是一款基于Nginx的轻量级管理程序,它提供了极其方便的 Web 界面,让用户能够简单的方式实现网站反向代理、自动化SSL证书申请(HTTPS)端口转发。


本节内容,我们将搬瓦工E-Commerce或E-Commerce SLA系列VPS上部署Nginx Proxy Manager,以发挥搬瓦工CN2 GIA/CMIN2等优化线路的优势
本节内容,我们将指导您如何在搬瓦工 E-Commerce 或 E-Commerce SLA 列 VPS 上部署Nginx Proxy Manager,以充分发挥搬瓦工 CN2 GIA/CMIN2等优化线路的优势


如果你的后端网站配置高网络对中国非常差,可以用这种方式进行反向代理,让你的网站中国用户访问可以流畅丝滑。
* '''网站加速:''' 如果你的后端网站配置高但网络对中国大陆访问质量差,可以通过Nginx Proxy Manager进行反向代理,让网站通过搬瓦工的高速优化线路接入,为中国用户提供流畅丝滑的访问体验
 
* '''远程加速:''' 可以通过 Nginx Proxy Manager 的端口转发功能,配合搬瓦工的中国优化线路,为您的远程桌面(RDP)或其他服务供连接加速
如果你有一台美国的windows服务器,可以通过Nginx Proxy Manager的端口转发,配合搬瓦工的中国优化线路,以获得极致的远程提体验


=== 需要准备的事项: ===
=== 需要准备的事项: ===
1.拥有一台搬瓦工的服务器;
1.拥有一台搬瓦工的服务器([https://vpsmes.com/602.html 参考教程])


2.服务器在运行,且安装了debian12系统;
2.服务器在运行,且安装了debian12系统([https://vpsmes.com/615.html 参考教程])


3.拥有一个域名(反向代理需要);
3.拥有一个域名(反向代理需要);
第17行: 第16行:


=== 一、连接服务器并安装Nginx Proxy Manager ===
=== 一、连接服务器并安装Nginx Proxy Manager ===
Nginx Proxy Manager的安装需要Docker环境,所以会一同安装Docker
Nginx Proxy Manager 推荐使用 Docker 容器化部署,本部分将一并完成 Docker 环境的安装。


==== 1.SSH 连接与基础工具安装 ====
==== 1.SSH 连接与基础工具安装 ====
使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载Xshell:[https://www.xshell.com/zh/free-for-home-school/ 下载链接]),
使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载 Xshell:[https://www.xshell.com/zh/free-for-home-school/ 下载链接]),


然后执行下方命令安装必要的工具。<syntaxhighlight lang="abap">apt-get install wget curl vim sudo unzip -y</syntaxhighlight>
然后执行下方命令安装必要的工具。<syntaxhighlight lang="abap">apt-get install wget curl vim sudo unzip -y</syntaxhighlight>为了优化编辑体验,执行以下命令,防止后期使用 <code>vi</code> 编辑时出现剪贴板或格式报错:<syntaxhighlight lang="abap">
echo set clipboard=unnamed >> ~/.vimrc
</syntaxhighlight>


==== 2.安装并启动Docker ====
==== 2.安装并启动Docker ====
执行下命令,大概几十秒就会完成安装,显示如下。<syntaxhighlight lang="abap">wget -qO- get.docker.com | bash</syntaxhighlight>后执行下面两个命令动Docker,并设置开机自启<syntaxhighlight lang="abap">
执行下命令安装 Docker安装过程预计耗时数十秒。<syntaxhighlight lang="abap">wget -qO- get.docker.com | bash</syntaxhighlight>[[File:DCOKER安装.png|900x900px]]
 
 
Docker 安装完成执行下命令启动 Docker 服务并设置开机自启<syntaxhighlight lang="abap">
systemctl start docker
systemctl start docker
systemctl enable docker
systemctl enable docker
第31行: 第35行:


==== 3.创建Nginx Proxy Manager目录 ====
==== 3.创建Nginx Proxy Manager目录 ====
创建一个目录放Docker文件和相关配置。
创建一个目录用于放 Docker 配置文件和相关数据,并进入该目录:<syntaxhighlight lang="abap">
 
执行面命令,会创建nginx-proxy-manager文件夹,并进入该文件夹。<syntaxhighlight lang="abap">
mkdir ngingx-proxy-manager && cd ngingx-proxy-manager
mkdir ngingx-proxy-manager && cd ngingx-proxy-manager
</syntaxhighlight>
</syntaxhighlight>


==== 4.创建Docker Compose文件 ====
==== 4.创建Docker Compose文件 ====
在nginx-proxy-manager目录下,执行下方命令,创建一个docker-compose.yml文件<syntaxhighlight lang="abap">
在 nginx-proxy-manager 目录下,执行下方命令,创建一个 docker-compose.yml 文件<syntaxhighlight lang="abap">
vi docker-compose.yml
vi docker-compose.yml
</syntaxhighlight>然后SSH会进入编辑页面,这时候按下“i”键,以下配置复制进去,后按下“Shift+;”,输入wq,即可保存退出。<syntaxhighlight lang="abap">
</syntaxhighlight>进入 <code>vi</code> 编辑页面,按下键盘 '''<code>i</code>''' 键进入编辑模式以下配置复制进去,
 
配置粘贴完毕按下键盘 '''<code>ESC</code>''' 键退出编辑模式然后入 '''<code>:wq</code>'''(写入并退出。<syntaxhighlight lang="abap">
services:
services:
   app:
   app:
     image: 'jc21/nginx-proxy-manager:latest'
     image: 'jc21/nginx-proxy-manager:latest'
     restart: unless-stopped
     restart: unless-stopped
     ports:
     network_mode: host
      - '80:80'
      - '81:81'
      - '443:443'
      - '21000-21100:21000-21100' # <--- 开放100个端口用于端口转发
      - '21000-21100:21000-21100/udp' # <--- 开放100个UDP端口用于端口转发
     volumes:
     volumes:
       - ./data:/data
       - ./data:/data
       - ./letsencrypt:/etc/letsencrypt
       - ./letsencrypt:/etc/letsencrypt
</syntaxhighlight>[[File:Vi命令编辑.jpg|900x900px]]
</syntaxhighlight>[[File:Nmp编辑.png|900x900px]]


==== 5.启动Nginx Proxy Manager ====
==== 5.启动Nginx Proxy Manager ====
<syntaxhighlight lang="abap">
在 nginx-proxy-manager 目录下,执行以下命令启动服务:<syntaxhighlight lang="abap">
docker compose up -d
docker compose up -d
</syntaxhighlight>显示如下,则说明启动成功。
</syntaxhighlight>显示容器 ID 等信息,则说明启动成功。
 
[[File:Npm安装成功.png|900x900px]]


=== 二、使用Nginx Proxy Manager配置反向代理 ===
=== 二、使用Nginx Proxy Manager配置反向代理 ===
在Nginx Proxy Manager配置反向代理,最好使用域名。
反向代理通常需要使用域名。在这个阶段我们将使用一个示例域名演示,对之前教程中的 OpenList 访问地址设置反向代理


在这个阶段,我将使用一个示例域名演示,对之前教程中的openlist访问地址设置反向代理。
==== 1.登录Nginx Proxy Manager ====
Nginx Proxy Manager 默认登录地址为 <code><nowiki>http://你的搬瓦工IP地址:81</nowiki></code>


==== 1.登录Nginx Proxy Manager ====
第一次登录会提示你设置管理员信息,Email 地址请填写有效的邮箱''''''
默认登录地址为'''<nowiki>http://你的ip:81</nowiki>''',第一次登录会提示你设置管理员信息,根据图示设置即可


[[File:设置nmp账户.jpg|900x900px]]
[[File:设置nmp账户.jpg|900x900px]]
第77行: 第78行:


==== 3.设置反向代理 ====
==== 3.设置反向代理 ====
进入代理服务列表,点击添加代理服务。
进入 '''「代理服务列表」''',点击 '''「添加代理服务」'''


[[File:添加反向代理1.jpg|900x900px]]
[[File:添加反向代理1.jpg|900x900px]]


这里我们先用于反向代理的域名,再输入要被反向代理的地址端口。
在'''「详情」'''选项卡,'''「域名」'''填写用于反向代理的域名,'''「转发主机名/IP」'''填写后端服务IP 地址或域名(因为 OpenList 部署在同一台服务器上,这里使用本地地址 <code>127.0.0.1</code>),'''「转发端口」'''填写后端服务的端口( OpenList 是5244)


[[File:添加反向代理2.jpg|900x900px]]
[[File:添加反代1.jpg|900x900px]]


因为我们要反向代理的是openlist访问地址,所以要添加以下额外参数(如果你只是反向代理普通网页,不需要此操作)。<syntaxhighlight lang="abap">
因为我们要反向代理的是 OpenList 访问地址,所以要添加以下额外参数,处理文件传输和大文件下载(如果你只是反向代理普通网页,不需要此操作)。<syntaxhighlight lang="abap">
location / {
location / {
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
第94行: 第95行:
   proxy_set_header If-Range $http_if_range;
   proxy_set_header If-Range $http_if_range;
   proxy_redirect off;
   proxy_redirect off;
   proxy_pass http://45.78.79.50:5244;
   proxy_pass http://127.0.0.1:5244;
   proxy_http_version 1.1;
   proxy_http_version 1.1;
   # the max size of file to upload
   # the max size of file to upload
   client_max_body_size 20000m;
   client_max_body_size 20000m;
}
}
</syntaxhighlight>[[File:反向代理3.jpg|900x900px]]
</syntaxhighlight>[[File:添加代2.png|900x900px]]


接下来击SSL选项卡,申请SSL证书,并开启强制HTTPS,提高安全性。
==== 4. 申请SSL证书并开启HTTPS ====
击 '''「SSL」''' 选项卡,申请 Let's Encrypt 免费证书,并开启 '''制SSL''' 选项提高网站安全性。


[[File:反向代理4.jpg|900x900px]]
[[File:反向代理4.jpg|900x900px]]


到这里,反向代理就成功, 可以访问用于反向代理的域名测试一下
到这里,反向代理就成功,SSL部分已经显示Let's Encrypt了


=== 三、配置Nginx Proxy Manager的端口转发 ===
[[File:添加代5.jpg|900x900px]]
通过端口转发,可以实现类似向代理的效果,从而给你的需要远程的windows主机加速。


当然端口转发的应场景是非常广泛的,你可以发掘更多用途
完成设置后访问于反代域名您将看到已经通过搬瓦工线路加速Alist 登录界面


==== 1.转发端口范围 ====
[[File:成功反代.jpg|900x900px]]
在前面docker-compose.yml配置文件里,我设置了21000至21100的端口转发使用,所以目前Nginx Proxy Manager可用于端口转发的端口为100个。


可远程的windows主机来说,以下是设置示例
=== 三、配置Nginx Proxy Manager的端口转发 ===
通过端口转发,以实现类似远程加速的效果比如为远程桌面(RDP)连接提供搬瓦工优化线路加速


==== 2.设置转发的端口 ====
==== 1.设置转发的端口 ====
首先在端口转发列表,点击添加。
进入 '''「端口转发列表」''',点击 '''「添加」'''


[[File:端口转发1.jpg|900x900px]]
[[File:端口转发1.jpg|900x900px]]


然后填写参数信息,这里入站端口填21000至21100的中一个(比如21000),转发主机填需要转发windows主机的IP,转发端口填写3389(RDP默认端口是3389)因为远程是持UDP的所以这里TCP和UDP都打开,最后保存,就设置成功了
然后填写参数信息,'''「入站端口」'''填21000,'''「转发主机」'''需要远程的 Windows 主机的实际 IP 地址。
 
'''「转发端口」'''写远程服务端口(RDP默认端口是3389)
 
'''「协议」'''因为 RDP 连接同时持 TCP 和 UDP因此请将 TCP 和 UDP 都打开,以获得流畅的远程体验


[[File:端口转发2.jpg|900x900px]]
[[File:端口转发2.jpg|900x900px]]


==== 3.测试转发情况 ====
==== 2.测试转发情况 ====
这时候只要访问安装有Nginx Proxy Manager主机的IP加上端口21000就能实现远程加速
设置并保存后,您现在可以通过访问 '''<code>搬瓦工IP地址:21000</code>''' 来连接到您的 Windows 主机
 
此时你的远程连接流量将通过搬瓦工的 CN2 GIA/CMIN2 等优化线路传输,实现高效的远程加速。


[[File:端口转发3.jpg|900x900px]]
[[File:端口转发3.jpg|900x900px]]


111111
端口转发的应用场景非常广泛,您可以根据实际需求发掘更多的用途,例如远程游戏串流、特定服务访问等。
[[Category:500 常见应用指南 — Application Guides]]
[[Category:500 常见应用指南 — Application Guides]]

2025年12月29日 (一) 21:31的最新版本

Nginx Proxy Manager (NPM)是一款基于Nginx的轻量级管理程序,它提供了极其方便的 Web 界面,让用户能够以最简单的方式实现网站反向代理、自动化SSL证书申请(HTTPS)以及端口转发。

本节内容,我们将指导您如何在搬瓦工 E-Commerce 或 E-Commerce SLA 系列 VPS 上部署Nginx Proxy Manager,以充分发挥搬瓦工 CN2 GIA/CMIN2等优化线路的优势:

  • 网站加速: 如果你的后端网站配置很高但网络对中国大陆访问质量差,您可以通过Nginx Proxy Manager进行反向代理,让网站通过搬瓦工的高速优化线路接入,为中国用户提供流畅丝滑的访问体验。
  • 远程加速: 您可以通过 Nginx Proxy Manager 的端口转发功能,配合搬瓦工的中国优化线路,为您的远程桌面(RDP)或其他服务提供连接加速。

需要准备的事项:

1.拥有一台搬瓦工的服务器(参考教程);

2.服务器在运行,且安装了debian12系统(参考教程);

3.拥有一个域名(反向代理需要);

4. SSH 连接工具已准备就绪(例如 Xshell)。

一、连接服务器并安装Nginx Proxy Manager

Nginx Proxy Manager 推荐使用 Docker 容器化部署,本部分将一并完成 Docker 环境的安装。

1.SSH 连接与基础工具安装

使用 SSH 工具连接到您的搬瓦工服务器(推荐使用 Xshell 等工具,如果你是个人或家庭使用,可以下载 Xshell:下载链接),

然后执行下方命令安装必要的工具。

apt-get install wget curl vim sudo unzip -y

为了优化编辑体验,执行以下命令,防止后期使用 vi 编辑时出现剪贴板或格式报错:

echo set clipboard=unnamed >> ~/.vimrc

2.安装并启动Docker

执行下方命令安装 Docker,安装过程预计耗时数十秒。

wget -qO- get.docker.com | bash


Docker 安装完成后,执行以下命令启动 Docker 服务并设置开机自启:

systemctl start docker
systemctl enable docker

3.创建Nginx Proxy Manager目录

创建一个目录用于存放 Docker 配置文件和相关数据,并进入该目录:

mkdir ngingx-proxy-manager && cd ngingx-proxy-manager

4.创建Docker Compose文件

在 nginx-proxy-manager 目录下,执行下方命令,创建一个 docker-compose.yml 文件:

vi docker-compose.yml

进入 vi 编辑页面后,按下键盘 i 键进入编辑模式,将以下配置复制进去, 配置粘贴完毕后,按下键盘 ESC 键退出编辑模式,然后输入 :wq(写入并退出)。

services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    network_mode: host
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

5.启动Nginx Proxy Manager

在 nginx-proxy-manager 目录下,执行以下命令启动服务:

docker compose up -d

显示容器 ID 等信息,则说明启动成功。

二、使用Nginx Proxy Manager配置反向代理

反向代理通常需要使用域名。在这个阶段,我们将使用一个示例域名演示,对之前教程中的 OpenList 访问地址设置反向代理。

1.登录Nginx Proxy Manager

Nginx Proxy Manager 默认登录地址为 http://你的搬瓦工IP地址:81

第一次登录会提示你设置管理员信息,Email 地址请填写有效的邮箱

2.设置中文

Nginx Proxy Manager现在支持中文,可以在右上角直接设置。

3.设置反向代理

进入 「代理服务列表」,点击 「添加代理服务」

「详情」选项卡,「域名」填写用于反向代理的域名,「转发主机名/IP」填写后端服务的 IP 地址或域名(因为 OpenList 部署在同一台服务器上,这里使用本地地址 127.0.0.1),「转发端口」填写后端服务的端口( OpenList 是5244)。

因为我们要反向代理的是 OpenList 访问地址,所以要添加以下额外参数,处理文件传输和大文件下载(如果你只是反向代理普通网页,不需要此操作)。

location / {
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-Proto $scheme;
  proxy_set_header Host $http_host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header Range $http_range;
  proxy_set_header If-Range $http_if_range;
  proxy_redirect off;
  proxy_pass http://127.0.0.1:5244;
  proxy_http_version 1.1;
  # the max size of file to upload
  client_max_body_size 20000m;
}

4. 申请SSL证书并开启HTTPS

点击 「SSL」 选项卡,申请 Let's Encrypt 免费证书,并开启 强制SSL 选项,以提高网站安全性。

到这里,反向代理就成功,SSL部分已经显示Let's Encrypt了。

完成设置后,访问用于反代的域名,您将看到已经通过搬瓦工线路加速的 Alist 登录界面。

三、配置Nginx Proxy Manager的端口转发

通过端口转发,可以实现类似远程加速的效果,比如为远程桌面(RDP)连接提供搬瓦工优化线路加速。

1.设置转发的端口

进入 「端口转发列表」,点击 「添加」

然后填写参数信息,「入站端口」填21000,「转发主机」填写需要远程的 Windows 主机的实际 IP 地址。

「转发端口」填写远程服务端口(RDP的默认端口是3389)。

「协议」因为 RDP 连接同时支持 TCP 和 UDP,因此请将 TCP 和 UDP 都打开,以获得最流畅的远程体验。

2.测试转发情况

设置并保存后,您现在可以通过访问 搬瓦工IP地址:21000 来连接到您的 Windows 主机。

此时,你的远程连接流量将通过搬瓦工的 CN2 GIA/CMIN2 等优化线路传输,实现高效的远程加速。

端口转发的应用场景非常广泛,您可以根据实际需求发掘更多的用途,例如远程游戏串流、特定服务访问等。