聚合DNS管理系统(https://github.com/netcccyun/dnsmgr可以实现在一个网站内管理多个平台的域名解析,目前已支持的域名平台有:阿里云、腾讯云、华为云、百度云、西部数码、火山引擎、DNSLA、CloudFlare、Namesilo。

功能特性:

- 多用户管理,可为每个用户可分配不同的域名解析权限

- 提供API接口,可获取域名单独的登录链接,方便各种IDC系统对接

- 容灾切换功能,支持ping、tcp、http(s)检测协议并自动暂停/修改域名解析,并支持邮件、微信公众号、TG群机器人通知

- CF优选IP功能,支持获取最新的Cloudflare优选IP,并自动更新到解析记录

- SSL证书申请与自动部署功能,支持从Let's Encrypt等渠道申请SSL证书,并自动部署到各种面板、云服务商、服务器等


演示截图

添加域名账户

QQ截图20240403200604.png

域名管理列表

QQ截图20240403200459.png

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

QQ截图20240403200534.png

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

QQ截图20240403200418.png

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

QQ截图20240501104352.png

SSL证书申请功能

QQ截图20241221154857.png

QQ截图20241221154652.png

SSL证书自动部署功能

QQ截图20241221154702.png

QQ截图20241221154804.png

部署方法:

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

2、设置网站运行目录为public

3、设置伪静态为ThinkPHP

4、访问网站,会自动跳转到安装页面,根据提示安装完成

5、访问首页登录控制面板


下载地址:

dnsmgr_2.5.zip


项目地址:

https://github.com/netcccyun/dnsmgr


QQ交流群欢迎加入:1026340698 [点此加群]



欢迎留言

208 条评论

  1. 大佬,可以建议增加个功能吗,目前DNS管理系统已经非常强大,但在域名管理方面,缺少对域名到期时间的提醒功能。对于拥有多个域名的用户来说,手动跟踪每个域名的到期时间可能会非常繁琐。

    Windows 10 x64 Google Chrome 135.0.0.0
  2. 计划任务:将以下命令添加到计划任务,1分钟1次(cd /www/wwwroot/********/ && php think certtask)。这条命令是添加在宝塔-计划任务-shell脚本吗?

    Windows 10 x64 Google Chrome 133.0.0.0
  3. V2.5 添加cf优选IP任务后并没有自动定时执行

    GNU/Linux x64 Firefox 130.0
    1. @dede:我试了执行那个命令之后可以更新优选IP

      Windows 10 x64 Google Chrome 122.0.6261.95
      1. @消失的彩虹海:docker 部署的,运行那个命令后确实可以更新一次,但是不会自动定时运行,除非手动添加到定时任务里。但是添加定时任务后,容器更新时就被覆盖了,也就没法执行了,需要再次添加

        Windows 10 x64 Google Chrome 135.0.0.0
  4. 华为云可否直接添加域名。不需要先到华为云后台去添加域名,再去dnsmgr添加华为云的里域名

    Windows 10 x64 Google Chrome 122.0.6261.95
  5. 2.5版本,cloudflare获取不到域名解析记录,2.4.1能获取到cloudflare的dns解析记录

    Xiaomi 10 MIUI Browser 19.3.60331
    1. @星云:我试了可以获取到啊

      Windows 10 x64 Google Chrome 122.0.6261.95
      1. @消失的彩虹海:我又覆盖安装了一下,2.5版本还是获取不到,用的宝塔安装的PHP 7.4.33,能看到记录数,点进去看不到记录值,但是2.4.1版本就是正常的,我看了记录原因出在php7.4不支持str_ends_with出现了500错误,
        把/app/lib/dns/cloudflare.php的79行修改为      $status = preg_match('/_pause$/', $name) ? '0' : '1';
        就能正常获取到获取到记录了

        macOS 10.15.7 Google Chrome 132.0.6834.83
        1. @星云:额,那你直接换php8.2不就行了

          Windows 10 x64 Google Chrome 122.0.6261.95
  6. 更新V2.5 (Build 1032)版本之后,SSL证书验证提示这个错误:Use of undefined constant DNS_A - assumed 'DNS_A' (this will throw an Error in a future version of PHP)

    Windows 10 x64 Firefox 137.0
    1. @逍遥:这个和更新没关系啊,之前版本你试试

      Windows 10 x64 Google Chrome 122.0.6261.95
      1. @消失的彩虹海:之前的版本没问题,PHP都是7.4版本的

        Windows 10 x64 Firefox 137.0
  7. 更新2.5以后磁盘读写一直增高,磁盘能跑多高就会一直跑

    Windows 10 x64 Google Chrome 132.0.0.0
    1. @紫玉:目前测试发现是因为这个程序的数据库一直写入,不知道是程序的什么东西需要一直写入

      Windows 10 x64 Google Chrome 132.0.0.0
      1. @紫玉:应该是容灾切换吧,这个基本上是1s写入一次,之前版本也一样

        Windows 10 x64 Google Chrome 122.0.6261.95
  8. 验证自动部署账户失败,ssh2_connect(): Error starting up SSH connection(-5): Unable to exchange encryption keys
    请教一下 这是什么问题呀 网上查了好多差不多解决方案

    Windows 10 x64 Google Chrome 134.0.0.0
    1. @猫酱:可能是你系统libssh2组件太老,可以升级到CentOS 9试试

      Windows 10 x64 Google Chrome 122.0.6261.95
  9. 彩虹大佬,下个版本可以加 spaceship 吗?

    Windows 10 x64 Google Chrome 134.0.0.0
  10. 彩虹大佬下次更新可以更新个添加域名操作吗,就是cloudflare里面没有域名,然后添加输入别的地方注册的域名后,出现dns服务器,这样就不用去cloudflare后台添加了

    Windows 10 x64 Google Chrome 134.0.0.0