魔方财务对接ZeroSSL、Let’s Encrypt和Google Trust Services证书模块和插件,实现证书购买和自动续费,只需用户添加一次DNS解析记录!
CanySsl插件配置说明
说明:此插件对接了ZeroSSL、Let's Encrypt和Google Trust Services证书,实现了证书购买和自动续费,且用户仅仅只需添加一次DNS解析记录,自动续费后,会以短信和邮件的方式通知用户重新下载证书;整个功能分为两部分,一个是ssl证书管理插件(CanySsl),一个是commonssl模块;将cany_ssl插件放到public\plugins\addons\插件目录下,将commonssl模块放public\plugins\servers\目录下。
如有需要,请联系作者(QQ:3808684706)。
一、commonssl模块商品配置
1、创建通用接口

这里服务器模块选择CommonSSL即可,其他随便填写。
2、创建商品
配置与zerossl和letsencrypt模块类似,这里只需要配置下面几个参数,可以对配置项进行排序,更好的显示:

详细配置说明:
①certssl_cert_type|证书类型:
ov|OV组织级证书
ev|EV扩展级证书
dv|DV域名级证书
不过免费证书不支持ev和ov!所以ov和ev可以不用配置!
②certssl_brand_flex|域名类型,支持单域名或者多域名或通配符
single|单域名
Multi|多域名
Wildcard|通配符域名
③certssl_brand_name|证书品牌,子项填这两个即可:
zerossl|ZeroSSL
letsencryptssl|Let’s Encrypt
④certssl_brand_flex_num|数量

配置项类型可以选择‘cpu核心单选’和 ‘数量(应用价格)’,最终前台选配效果:

②周期配置,这里对应的就是时长,配置90天和年付即可!(尽量只填写90天,lets encrypt现在只支持90天了)
需要注意的是,lets encrypt最高只支持90天的,zerossl支持1年,但是需要升级zerossl账户!
③选择接口分组(第1步创建的)和付款后自动开通

3、价格配置按照自己定价规则填写即可
4、如果有高级配置,也可以进行配置,用户购买时有更好的体验

二、插件设置
1、安装ssl证书管理插件

2、证书设置

这里我对接了阿里云DNS API 和DNSPod API,选择阿里云DNS即可!需要注意的是验证域名必须是DNS服务商接口下域名!
三、系统设置
1、进入设置-系统设置-定时任务
如图所示,配置成3天,那么证书会在到期前3天自动续费,并重新生成证书,并发送短信和邮件通知:

2、邮件和短信配置(续签成功后,会发送短信和邮件,前提是用户账户配置了邮件和手机号!)
①插件默认创建了阿里云和智简魔方的证书续签模板,这些模板需要自己去进行审核,审核通过后,证书续签时才会发送续签成功短信:
![]()
您也可以自己创建其他短信接口的模板,但是模板标题一定填要写“证书续签”;
模板支持的参数为product_name(商品名)和hostname(主机名)
②插件默认创建了SMTP的邮件模板:

您也可以自己创建其他邮件接口的模板,但是模板名称一定要填写”证书续签”;模板支持系统参数。
四、注意事项
1、赋予acme.sh脚本权限
如果插件后台报错:赋予acme.sh脚本执行权限失败!请到服务器插件根目录public/plugins/addons/cany_ssl/下,执行命令:chmod +x acme.sh;
需要在cany_ssl插件根目录public/plugins/addons/cany_ssl/下,执行命令:chmod +x acme.sh
2、删除php禁用函数exec以及putenv,重点!
3、续签时,会在日志-定时任务日志产生记录,这里可以排查一些问题,比如续签失败等:

五、新增googlessl证书
1、证书设置

需要填写Google账号、EAB ID 和 EAB KEY;如何获取?
①登录到google云平台;
②创建项目,获取到项目ID,比如casdfl-asdf-439614-g7
③进入到https://console.cloud.google.com/apis/library/publicca.googleapis.com?project=casdfl-asdf-439614-g7
并启用API:

④控制台右上角,点击“激活 Cloud Shell”,打开Google Cloud Shell:

⑤输入命令:gcloud beta publicca external-account-keys create

需要授权,授权通过即可;
⑥获取到keyId和b64MacKey:

其中keyId就是 EAB ID;b64MacKey就是EAB KEY;
2、商品配置
证书品牌新增配置子项:googlessl|Google Trust Services

3、注意事项
①访问google api需要代理,也就是需要翻墙(如果服务器不能访问外网的话);在服务器上执行curl -I www.google.com看是否有返回,没有的返回话,表示需要配代理。如果有返回,则不需要配置代理。
4、如果服务器不能访问外网的话!!!可以参考这一步!!!
这里我只说明如何使用clash进行代理(其他情况自行配置);
①下载clash Linux脚本:https://github.com/FB208/clash-linux-amd64-v1.2.0/tree/master
②上传到服务器即可,然后执行命令:
mv clash-linux-amd64 clash
chmod +x clash
./clash
这里会生成config.yaml和Country.mmdb两个文件,这两个文件在cd ~/.config/clash/目录下,Country.mmdb这个文件因为网络原因可能无法生成,这里直接复制包里面的文件就行!
config.yaml文件内容可以复制clash for windows上的配置文件,部分内容如下:

③配置系统代理
export http_proxy="http://127.0.0.1:7890"
export https_proxy="http://127.0.0.1:7890"
export all_proxy="socks5://127.0.0.1:7891"
source ~/.bashrc
执行:
echo $http_proxy
echo $https_proxy
看是否有输出;
检查是否能代理访问外网:
curl -x http://127.0.0.1:7890 https://www.google.com
④可选步骤,设置clash为自启动和后台运行
sudo vim /etc/systemd/system/clash.service
内容如下:
[Unit]Description=Clash Proxy Service
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/clash -d /root/.config/clash
Restart=on-failure
User=root
[Install]
WantedBy=multi-user.target
启动服务:
sudo systemctl daemon-reload
sudo systemctl enable clash
sudo systemctl start clash
查看运行状态:
sudo systemctl status clash
其中ExecStart=/usr/local/bin/clash -d /root/.config/clash
/usr/local/bin/clash换成你的clash所在目录
⑤再次执行curl -I www.google.com观察代理是否有效。
⑥可选步骤,想操作方便,可以搭建UI界面
https://github.com/haishanh/yacd
下载包,搭建到web服务器下(NGINX或者Apache),访问自己搭建的UI网站,比如说clash.test.com;

需要切换后端,填写:http://服务器ip:9090,然后就可以通过UI界面选择节点,以及测试节点延迟了。
⑦另外需要注意的就是,要使用clash的功能,需要防火墙开启7890-7900、9090、8853端口!

共有 2 条评论