一个开源的聚合DNS管理系统

47次阅读
没有评论

共计 1881 个字符,预计需要花费 5 分钟才能阅读完成。

聚合 DNS 管理系统可以实现在一个网站内管理多个平台的域名解析,目前已支持的域名平台有:

  • 阿里云
  • 腾讯云
  • 华为云
  • 西部数码
  • DNSLA
  • CloudFlare

功能特性

 

  • 多用户管理,可为每个用户可分配不同的域名解析权限
  • 提供 API 接口,可获取域名单独的登录链接,方便各种 IDC 系统对接
  • 容灾切换功能,支持 ping、tcp、http(s)检测协议并自动暂停 / 修改域名解析,并支持邮件、微信公众号通知
  • CF 优选 IP 功能,支持获取最新的 Cloudflare 优选 IP,并自动更新到解析记录
  • SSL 证书申请与自动部署功能,支持从 Let’s Encrypt 等渠道申请 SSL 证书,并自动部署到各种面板、云服务商、服务器等

演示截图

 

添加域名账户

一个开源的聚合 DNS 管理系统

域名管理列表

一个开源的聚合 DNS 管理系统

域名 DNS 解析管理,支持解析批量操作

一个开源的聚合 DNS 管理系统

用户管理添加用户,支持为用户开启 API 接口

一个开源的聚合 DNS 管理系统

CF 优选 IP 功能,添加优选 IP 任务

一个开源的聚合 DNS 管理系统

SSL 证书申请功能

一个开源的聚合 DNS 管理系统

一个开源的聚合 DNS 管理系统

SSL 证书自动部署功能

一个开源的聚合 DNS 管理系统

一个开源的聚合 DNS 管理系统

部署方法

  • Release 页面下载安装包

  • 运行环境要求 PHP7.4+,MySQL5.6+

  • 设置网站运行目录为public

  • 设置伪静态为ThinkPHP

  • 如果是下载的 Source code 包,还需 Composer 安装依赖(Release 页面下载的安装包不需要)

    composer install --no-dev
    
  • 访问网站,会自动跳转到安装页面,根据提示安装完成

  • 访问首页登录控制面板

伪静态规则
  • Nginx
location / {if (!-e $request_filename){rewrite  ^(.*)$  /index.php?s=$1  last;   break;
	}
}
  • Apache
<IfModule mod_rewrite.c>
  Options +FollowSymlinks -Multiviews
  RewriteEngine On

  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

Docker 部署方法

首先需要安装 Docker,然后执行以下命令拉取镜像并启动(启动后监听 8081 端口):

docker run --name dnsmgr -dit -p 8081:80 -v /var/dnsmgr:/app/www netcccyun/dnsmgr
访问并安装好后如果容灾切换未自动启动,重启容器即可:
docker restart dnsmgr

docker-compose 部署方法

version: '3'
services:
  dnsmgr-web:
    container_name: dnsmgr-web
    stdin_open: true
    tty: true
    ports:
      - 8081:80
    volumes:
      - /volume1/docker/dnsmgr/web:/app/www
    image: netcccyun/dnsmgr
    depends_on:
      - dnsmgr-mysql
    networks:
      - dnsmgr-network

  dnsmgr-mysql:
    container_name: dnsmgr-mysql
    restart: always
    ports:
      - 3306:3306
    volumes:
      - ./mysql/conf/my.cnf:/etc/mysql/my.cnf
      - ./mysql/logs:/logs
      - ./mysql/data:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=123456
      - TZ=Asia/Shanghai
    image: mysql:5.7
    networks:
      - dnsmgr-network

networks:
  dnsmgr-network:
    driver: bridge
在运行之前请创建好目录
mkdir -p ./web
mkdir -p ./mysql/conf
mkdir -p ./mysql/logs
mkdir -p ./mysql/data

vim mysql/conf/my.cnf
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
登陆 mysql 容器创建数据库
docker exec -it dnsmgr-mysql /bin/bash
mysql -uroot -p123456
create database dnsmgr;
在 install 界面链接 IP 填写 dnsmgr-mysql
正文完
 0
水东柳
版权声明:本文于2024-12-28转载自GITHUB,共计1881字。
转载提示:此文章非本站原创文章,若需转载请联系原作者获得转载授权。
评论(没有评论)