在之前的文章中,xiaoz推荐过可视化Nginx反向代理工具Nginx Proxy Manager,最近xiaoz还发现一款功能更加强大,界面更加漂亮的OpenResty Manager,完全可以替代Nginx Proxy Manager,并且还带有基础防御功能,推荐在服务器或NAS上搭建使用。
OpenResty Manager主要特点
- 提供了美观、强大且易于使用的web管理UI
- 支持通过HTTP-01和DNS-01挑战申请免费SSL证书并自动续期
- 无需了解OpenResty,即可轻松为您的网站创建反向代理
- 提供了多种强大安全功能,如访问控制、拒绝服务攻击防护等
- 高级OpenResty配置可供超级用户使用
- 支持并继承OpenResty超越Nginx的所有强大功能
- 支持多节点管理功能,可批量管理多台服务器(专业版)
- 支持分布式 CDN 缓存加速功能,可打造 CDN 集群
安装OpenResty Manager
根据OpenResty Manager文档介绍,官方提供了主机版和容器版的一键安装脚本,适合新手使用。不过个人认为一键安装脚本灵活性较差,如果您是经验丰富的运维老司机,建议使用Docker Compose手动安装,下面将介绍如何通过Docker Compose安装OpenResty Manager。
注意事项:OpenResty Manager默认会使用主机80
端口,请确保您服务器上80
端口没有被占用,否则OpenResty Manager无法启动。
接下来新建一个docker-compose.yml
文件,内容如下:
services:
openresty-manager:
image: uusec/openresty-manager:latest
container_name: openresty-manager
restart: always
network_mode: host
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/resolv.conf:/etc/resolv.conf:ro
- /var/run/docker.sock:/var/run/docker.sock
- ./om_acme:/opt/om/acme
- ./om_data:/opt/om/data
- ./om_conf:/opt/om/nginx/conf
- ./om_logs:/opt/om/nginx/logs
然后输入docker-compose up -d
启动即可,默认会占用80/443/34567
这三个端口,需要防火墙或安全组中放行,如果使用的Debian ufw防火墙,可以使用下面的命令放行:
ufw allow 80
ufw allow 443
ufw allow 34567
安装完毕后输入https://IP:34567
打开WEB界面,默认用户名为admin
,密码为:#Passw0rd
使用OpenResty Manager
OpenResty Manager后台首页提供了基本的数据概览,包括网站数量、实时QPS、访问情况等信息。
在添加反向代理之前,我们需要先添加上游服务(目标服务),如下图。
然后添加站点并选择上游服务。
值得一提的是OpenResty Manager还自带基本防御功能,比如可以限制地域访问,提升网站安全(专业版)。
还可以开启CC防护(专业版)。
获取OpenResty Manager专业版
OpenResty Manager支持更多高级功能,比如:
- 访问控制
- 高频防护
- 身份认证
- 集群管理
现在可以通过下面的方法免费获取1-3年的专业版,步骤如下:
- 访问 GitHub仓库 点 Star,并截图 Star 序号
- 分享本文章到微信公众号、个人博客或其它网站,并留存链接
- 关注微信公众号:有安科技,并加入微信或QQ群:11500614
- 安装OpenResty Manager,并记录 设置->系统信息 中的机器码
- 提供1、2步骤中的信息和机器码给群中的管理员索取专业版授权码
一些问题
xiaoz在实际使用中发现目前OpenResty Manager存在一些小问题。
80端口问题
我的主机上80端口已经被占用,所以安装OpenResty Manager后存在冲突,于是xiaoz自行修改了OpenResty的80端口为其他端口,结果导致OpenResty Manager后台概览页面无法正常获取数据,但是其它功能不受影响。Github上已经有人提出通过.env
环境变量来自行指定端口,但作者未明确回应未来是否会考虑。
页面不显示或显示错乱(已修复)
这个情况是OpenResty Manager在添加站点的时候默认开启了缓存资源
导致,如果遇到这个问题,可以把这个勾选去掉后再试。
无法自动更新版本
如果您是用上面的docker-compose.yaml
手动安装OpenResty Manager,则无法通过后台一键更新版本,需要自行拉取镜像并重建容器。使用官方的一键脚本安装应该不受影响。
结语
OpenResty Manager 是一款功能强大、界面美观的可视化反向代理与Web管理工具,不仅简化了 OpenResty/Nginx 的配置操作,还提供了安全防护等实用功能。尽管在使用过程中存在一些小问题,但整体体验优秀,非常推荐在服务器或NAS上部署使用。
OpenResty Manager Github项目地址:https://github.com/Safe3/openresty-manager