反向代理神器——Nginx Proxy Manager
00 分钟
2023-4-11
2023-8-11
type
status
date
slug
summary
tags
category
icon
password
URL
notion image

1.前言

我们怎么样才能把IP+端口变成域名来访问?
答案是用反向代理。

2.什么是代理

首先代理大家都懂 😃
代理就是第三方。

正向代理

notion image
你要买国外小G家的鞋子,你没有paypal和信用卡,买不了,于是你找到了叫小V的代购帮你到海外买,小V找到海外的卖家小G,帮你买了鞋子,然后寄回给了你。
这个小V就是正向代理。
正向代理的特点是,可以保护访问者的信息。因为小V是个职业代购,他在帮你代购鞋子的同时也帮别人代购鞋子,而且他不仅代购鞋子,还代购箱子、家具、电饭煲,卖家小G只知道有人买了我的鞋子,我交给了小V,但并不知道具体是谁买了他家的鞋子。

反向代理

反向代理,顾名思义,正好相反,可以保护卖家的信息。
notion image
具体可以看视频。
好了,回来。
没有了宝塔,我们今天用一个更简单的Docker项目来完成反向代理的操作。

3.Nginx Proxy Manager

Nginx proxy manager是一个很简单的反向代理工具。
门槛极低,操作简单,不需要你掌握很复杂的Nginx配置知识,只需要几步就能很轻松完成反向代理的设置和SSL证书的部署。
it had to be so easy that a monkey could do it.

4.开始部署

服务器环境:Debian 10(Ubuntu 20.04也可以)或以上版本

4.1登陆服务器

不建议用CentOS,具体原因请见:解释使用Debian而不是CentOS的原因
选择一款连接SSH的软件。
如果不会可以看这个文档:连接SSH的软件和相关操作
Mac 或者 Linux 用户可以直接用系统自带的终端(也叫Terminal)来登陆服务器。
输入:
如果你没有更改 ssh 的端口,默认就是22,当然为了服务器安全,建议你可以换一个别的端口,具体请见:保护好你的小鸡!保姆级服务器安全教程!

4.2添加SWAP虚拟内存

注意:VPS 的内存如果过小,建议设置一下 SWAP,一般为内存的 1-1.5 倍即可,可以让系统运行更流畅!
设置 SWAP 可以用脚本:
notion image
选择 18,然后输入你想要扩容的数值即可。
notion image

4.3升级 packages

5.安装 Docker 环境

5.1安装 Docker(非大陆服务器)

5.2安装 Docker-compose(非大陆服务器)

5.3安装 Docker(国内服务器)

5.4安装 Docker-compose(国内服务器)

5.5修改 Docker 配置(可选)

内容参考:烧饼博客
以下配置会增加一段自定义内网 IPv6 地址,开启容器的 IPv6 功能,以及限制日志文件大小,防止 Docker 日志塞满硬盘(泪的教训):
然后重启 Docker 服务:

6.安装 Nginx Proxy Manager

6.1创建安装目录

创建一下安装的目录:
这边我们直接用 docker 的方式安装。
英文输入法下,按 i
按一下 esc,然后 :wq 保存退出,之后,

6.2打开服务器防火墙并访问网页(非必需)

打开防火墙的端口 81
举例,腾讯云打开方法如下:
图中示例填的是 5230,备注填的是 memos,这边我们填 81,示例填 nginxproxymanager ,确定即可(如果你在 docker-compose 文件里换了 82,这边就需要填 82,以此类推)
查看端口是否被占用(以 81 为例),输入:
如果啥也没出现,表示端口未被占用,我们可以继续下面的操作了~
如果出现:
运行:
如果端口没有被占用(被占用了就修改一下端口,比如改成 82,注意 docker 命令行里和防火墙都要改)

6.3运行并访问 Nginx Proxy Manager

最后:
理论上我们就可以输入 http://ip:81 访问了。
默认登陆名和密码:
注意:
1、不知道服务器 IP,可以直接在命令行输入:curl ip.sb,会显示当前服务器的 IP。
2、遇到访问不了的情况,请再次检查在宝塔面板的防火墙和服务商的后台防火墙是否打开对应了端口。

6.4更新 Nginx Proxy Manager

提示:
输入 y
利用 Docker 搭建的应用,更新非常容易~

6.5卸载 Nginx Proxy Manager

可以卸载得很干净。
 
本文转载自