宝塔面板用Dns申请SSL证书的时候,面板自己集成了3个dns api接口,如果我们想自己增加一个进去,该怎么操作呢。
这里大鸟以cloudxns为列,讲一下如何自己定义一个dns api加入到宝塔面板中方便申请SSL证书。
额,cloudxns其实已经被宝塔面板集成到了接口中,不过这就是一个列子,你看会了,自己可以根据需要增加。
一:开始部署
宝塔面板6.9.1为例,要是最新版的,我们首先找到dns_api.json
这个文件。路径:
/www/server/panel/config
找到之后编辑,编辑之前最好先复制一份,或者下载到本地编辑,因为你在线编译过之后,面板会加密文件,你第二次编辑基本就看不懂了。我们把代码加入到文件的的最下面但是在]
之前:
{ "name": "dns_cx", "title": "CloudXns", "ps": "使用cloudxns的API接口自动解析申请SSL", "help": "cloudxns后台》用户中心》API管理,按指引获取AccessKey/SecretKey", "data": [ { "key": "SAVED_CX_Key", "name": "AccessKey", "value": "" }, { "key": "SAVED_CX_Secret", "name": "SecretKey", "value": "" } ] },
如果不会,我们可以看图:
加到最先面有点繁琐啊,你可以加到中间,注意什么逗号,中括号之类的别搞错了。加好之后,保存上传覆盖。
二:效果
我们加好之后,可以去dns申请ssl处看看是否添加成功了,如图:
之后,你就可以用这个申请新的SSL证书了。点击之后,会跳出对话框,然你输入密钥之类,如图:
和内置的api都是一样的操作,这里不再赘述。
三:其他版本
如果不是6.9.1,是5.91版本的或者是其他的额,大鸟也知道具体是什么版本开始改版的,我们要找到panelSite.py文件,路径:
/www/server/panel/class/panelSite.py
在文件的955行,我们可以找到配置的信息,如下:
文件格式是这种形式的,可以根据需要编辑添加进来即可:
{ "name":"dns_cx", "title":"cloudxns", "ps":"使用cloudxns的API接口自动解析申请SSL", "help":"cloudxns后台》用户中心》API管理,按指引获取AccessKey/SecretKey", "data":[{"key":"SAVED_CX_Key","name":"AccessKey","value":""},{"key":"SAVED_CX_Secret","name":"SecretKey","value":""}] },
四:问题解决
如果出现'dns_class' is not defined
这里错误,是因为没有定义dns,或者没找到原始的dns接口没有调用到,我们需要来这修改找到文件sewer_Usage.py
,路径:
/www/server/panel/class/sewer_Usage.py
可以根据需要来修改,大鸟看到有内置了dns.com的接口,可以增加一个dns.com的。
如果有的dns接口只需要一个secret,那我们还需要在这个文件里修改,或者添加代码,额,越说越复杂了。有兴趣的自己去折腾吧。
五:总结
这个弄出来也没什么意义,因为只要你点击面板的修复面板会立马都恢复如初了,所以说,或者更新升级面板之后,都会没有了。
如果你更改过后,只能用一阵子,动手能力强的可以开发第三方插件加入进去就可以解决了。
这篇文章,大鸟就这么水一水把!!!!宝塔面板内置的dnsapi,在这里可以去看看:
/root/.acme.sh/dnsapi