一、简介

  • OpenResty Manager (Nginx 增强版),是一款最容易使用、功能强大且美观的反向代理工具 ,可以作为OpenResty Edge 的开源替代品

  • 基于 OpenResty 开发,支持并继承 OpenResty 的所有强大功能,提供 Web 管理 UI

  • 可以提供高性能反向代理和负载均衡,支持自动证书申请与管理,还有强大的访问控制和安全防护

  • 部署配置也很简单,支持主机脚本安装、docker一键部署

  • 开源地址参考:https://github.com/Safe3/openresty-manager,运行原理图参考下图:

二、安装

  1. 安装方式一:主机版本(适用独立作为反向代理服务器的环境,无需再额外安装docker)

    //一键安装命令
    sudo bash -c "$(curl -fsSL https://om.uusec.com/installer.sh)"
  2. 安装方式二(推荐):Docker版本

    • 提前安装好docker、docker-compose环境

    • 新建docker-compose.yml,内容如下:

      version: '3'
      
      services:
        openresty-manager:
         image: swr.ap-southeast-1.myhuaweicloud.com/uusec/openresty-manager:latest
         ulimits:
           nproc: 65535
           nofile:
             soft: 102400
             hard: 102400
         container_name: openresty-manager
         restart: always
         network_mode: host
         volumes:
           - /etc/localtime:/etc/localtime:ro
           - /etc/resolv.conf:/etc/resolv.conf:ro
           - om_acme:/opt/om/acme
           - om_data:/opt/om/data
           - om_conf:/opt/om/nginx/conf
      
      volumes:
        om_acme:
        om_data:
        om_conf:
    • 一键启动命令,注意不要占用80/443/34567端口,因为该服务运行需要用到这些端口

    • docker-compose up -d
    • 安装成功后,查看运行情况

    • (可选)如果需要方便数据迁移,最好成功启动后,把容器内的/opt/om目录复制出来,然后重新启动

      //1. 复制容器内的数据到docker-compose.yml相同目录下
      docker-compose cp openresty-manager:/opt/om ./om
      //2. 修改 docker-compose.yml
      ......
       #- om_acme:/opt/om/acme  //注释掉
       #- om_data:/opt/om/data //注释掉
       #- om_conf:/opt/om/nginx/conf //注释掉
       #- ./om:/opt/om //增加这一行,把持久化数据映射到容器内
       ......
       //3. 重新启动,直接运行下面命令
       docker-compose up -d

三、使用示例

  • 安装完成之后,可以访问管理后台:http://ip_or_domain:34567,默认登录账号:admin,密码:Passw0rd!

  • 设置一个上游服务

  • 申请一个域名的TLS证书,注意:需要提前将域名解析到服务器ip

  • 新增一个反向代理网站

  • 配置好之后,就可以使用域名访问网站了(这里示例是反代到OpenResty Manager自己的后台服务)

  • 设置安全防护-访问控制示例

    • 假设只运行某个国家的ip访问

    • 如果访问ip不是限定的国家ip,就会拦截限制

  • 自带安全防护-CC攻击防护

四、总结

  • OpenResty Manager可以作为比较流行的Nginx Proxy Manager的替代品,且功能齐全,有特色

  • OpenResty Manager是一个新开源的项目,安全稳定性有待验证,适合小公司或个人小规模探索性使用