使用westssl工具实现自动更新SSL证书的流程

SSL证书默认有效期分3个月和1年两种。您必须在证书到期前的30个自然日内续费并更新证书,才能延长证书的服务时长。证书续费时,
会颁发一个新的证书,您收到新证书后需要手工更新到服务器上。部分证书支持一次性购买多年,但仍然是每次签发一年的证书,到期前30天左右会自动重新签发。

如果管理的证书较多,经常去手工更新不但麻烦而且容易遗漏或出错。因此西部数码提供了本工具来实现证书续费重新颁发后的自动更新流程。


要想实现证书的自动化续费,需要满足条件:

  1. 自动化DNS验证 (SSL证书和域名在相同的西部数码会员帐号下,如果是腾讯、阿里的域名,支持在我司控制面板中设置apikey的方式来完成验证,
    如果域名在第三方平台,建议转入我司统一管理,否则需要在重签证书时再次验证)

  2. 证书重新签发后能自动更新证书。(如果证书是用于西部数码的虚拟主机/高防服务器/亚数云服务器,在完成证书续费重新颁发后,
    系统会自动更新证书不需要任何操作。证书用于西部数码普通云服务器或第三方的服务器场景时,可通过本工具和任务计划实现自动更新ssl证书 ,
    使用此工具您的证书需在我司
    申请或者托管证书在我司.

  3. 能满足以上条件的场景,在购买时选中“自动续费”功能,就能一劳永逸。需要确保会员余额足够。


Westssl工具有Windows和linux两个版本. 此工具用于西部数码普通云服务器或第三方的服务器场景,可实现证书重签后对证书自动更新,同时也支持通过命令行方式调用API
批量
购买新证书(见文尾帮助)。

环境要求:服务器上必须已经部署过ssl证书,web服务为iis/apache/nginx中的一种. 
(证书的首次部署不属于本文介绍的范围,一般来说windows主机可通过我司提供的网站管理助手部署,Linux主机一般通过宝塔面板部署

使用westssl工具需要设置ssl证书的专用api密钥,可以在"会员管理中心---账号管理---设置中心---SSL证书API密钥设置,这里设置"或者重置 .

(提交工单由我司帮您设置westssl自动更新API密钥必须提供至工单中)

image.png


linux(centos)系统下载方法 ssh远程服务器,然后执行  

wget http://downinfo.myhostadmin.net/westssl/westssl.zip -O /root/westssl.zip && unzip -o /root/westssl.zip && rm -f /root/westssl.zip && chmod +x /root/westssl   

输入 /root/westssl 使用

Windows服务器系统下载方法 ,远程服务器,使用浏览器下载  http://downinfo.myhostadmin.net/westssl/westssl.exe  (如下载提示无法安全下载,请右键点击“将链接另存为”。) , 建议保存在 d:\cert 目录。

cmd命令行切换到 d:\cert   .输入westssl.exe 使用    


westssl版本号:westssl version 1.0.50


1.下载完毕后,首先进行初始化 (重要)  初始化完成会自动生成 .westssl\config.ini,请勿删除

/root/westssl init  

 image.png

重启重载web服务命令可以选择对应编号,也可以自己手动输入,请务必据实输入!

2.查看当前服务器证书列表   /root/westssl show   

image.png

宝塔和西部数码建站助手创建的web环境,系统会识别相关证书,不需要手工添加,可以忽略本步骤。


非宝塔和西部数码建站助手创建的web环境, 需要手动添加ssl证书路径,才能实现自动更新ssl证书。 在show命令下,输入  1 表示添加一个域名证书。

image.png


3.您可以通过计划任务方式,完成自动更新证书 : 更新证书命令  /root/westssl update  

linux任务计划设置方式 

1.宝塔环境通过面板任务计划添加每天定时更新

脚本内容:

cd /root 

/root/westssl update


image.png

保存任务计划即可每天自动更新ssl证书


2. Linux非宝塔环境,使用命令“crontab -e”添加任务计划 

30 1 * * * /root/westssl update

以上命令代表每天1点30分,执行自动更新ssl证书



Windows任务计划设置方式

任务计划程序添加定期运行此工具

在管理员身份运行cmd 执行:

image.png

 

schtasks /create /RU system /SC DAILY /F /TN westssl_auto_update /TR  "D:\cert\westssl.exe update -c D:\cert\.westssl\config.ini"  /ST 01:00

其中:
westssl_auto_update 计划任务名称
"D:\cert\westssl.exe update -c D:\cert\.westssl\config.ini" 要执行的程序及参数
/ST 01:00 每天1:00执行

成功创建计划任务后即可每天1点自动更新ssl证书.


注:

1、 westssl update 在windows系统下会在 .westssl 下级目录生成westcertapp.exe执行文件,此是正常更新文件放心使用。

      若此文件执行失败IIS对应站点证书会更新失败,会影响网站正常访问。


2、westssl update 这个命令会自动检测当前服务器上所有证书的到期时间,如果离到期时间小于30天,或过期30天以内的,

     会自动调用西部数码SSL证书api接口,来检查相关的域名有没有新的证书颁发成功,如果有,则自动下载新证书进行替换,

     替换后会执行相关的命令来重启IIS/apache/ngix以使新证书生效。

3、如果通过IIS手动导入SSL证书时,证书存储必须选择  个人, 否则 westssl无法识别

V0%U$O29`N15MFDS`SCR`L6.jpg


-----------------------------------------------------------------------------------------------------------------

用westssl来批量购买证书的流程:(注:可以输入westssl.exe -h来显示帮助提示,接iisue命令表示申请新证书)

D:\cert>westssl.exe issue    

缺少必要参数!

申请证书

Usage:

  westssl issue [flags]


Flags:

  -c, --config string   Config file (default "config.ini")

      --dns             SSL证书DNS验证方式 [file,dns 验证必须二选一]

  -d, --domain string   [必填]申请SSL证书域名;此参数支持3种模式:

                        1) 单域名.

                        2) 多个域名,必须用逗号(,)分隔.

                        3) 域名批量购买,必须是域名列表文件完整路径,要购买的域名放在这个文件中一行一个.

      --file            SSL证书文件验证方式 [file,dns 验证必须二选一]

  -h, --help            help for issue

  -t, --type string     [必填]常见证书类型:

                        1) 通用型DV: dv-350

                        2) 试用90天DV: free-trial


                        更多产品型号请访问API接口查询 https://console-docs.apipost.cn/preview/4e5d940c9be19cda/73e3028374812fc5?target_id=9d27cd1e-6bfa-4665-9a8f-e421b7707a1c



D:\cert>westssl.exe issue   --dns  -t free-trial -d mytest123.com

或者 :

D:\cert>westssl.exe issue   --dns  -t free-trial -d D:\cert\mydomains.txt   把要购买的域名都放在这个txt文件中批量购买。


-----------------------------------------------------------------------------------------------------------------

用westssl来批量下载购买的证书

D:\cert>westssl.exe online

在线SSL证书下载


Usage:

  westssl online [flags]


Flags:

  -c, --config string   Config file (default "config.ini")

      --domain string   下载域名对应证书:

                        1、多个域名必须用逗号(,)分隔.

                        2、all 表示下载所有证书.

                        3、证书批量下载列表文件完整路径,要下载的证书域名放在这个文件中一行一个.

  -h, --help            help for online

      --show            查看在线证书列表


D:\cert>westssl.exe online --domain mytest123.com

或者 :

D:\cert>westssl.exe online --domain D:\cert\mydomains.txt   把要下载的证书域名都放在这个txt文件中批量下载。



D:\cert>westssl.exe online --show  可查看在线的证书列表及查看验证参数值


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

常见问题 :

api result: token 时间超时:请检查服务器时间是否为北京时间 .



编辑:西部数码
日期:2023-11-02

收藏 】 【 打印 】   
您可对文档进行评分哟~

勾选遇到的问题提交给我们,收到反馈后保证及时修正更新!

提交反馈需要先登陆会员帐号

上一篇:wordpress如何存储远程附件到fss
下一篇:西部数码的域名如何实现DDNS功能(动态解析)
若文档内容对您没有帮助,不能解决问题? 您还可以 咨询在线客服提交工单搜索常见问题 ,我们将竭诚为您服务。
  >> 相关文章
 
分享至: