前置条件

需要安装 acme.sh或者 cert-bot之类的来生成证书

API

一共需要用到3个api

1:Login

URL:http://群晖IP:端口/webapi/auth.cgi?api=SYNO.API.Auth&version=6&method=login&format=sid&account=群晖用户名&passwd=群晖密码&enable_syno_token=yes

方法:GET

Response:

{
    "data": {
        "is_portal_port": false,
        "sid": "3yDmBLhOK_noX8Sii**********3VzPlAnjzD0Kcm0EIX-F38HRvD66fmnMIs_0CMKc",
        "synotoken": "pvsGE*****Ec"
    },
    "success": true
}

2:获取原有的证书信息

URL:http://IP:PORT/webapi/entry.cgi

方法:POST

Header: X-SYNO-TOKEN:上一步里获取的token

Body:

keyvalue
apiSYNO.Core.Certificate.CRT
methodlist
version1
_sid上一步获取的SID

Response

{
"data": {
"certificates": [
...

3:导入证书

URL:http://IP:PORT/webapi/entry.cgi?api=SYNO.Core.Certificate&method=import&version=1&SynoToken=获取的token&_sid=获取的SID

BODY:

keyvalue
keySSL私钥文件
certSSL公钥文件
id上一步的证书ID
desc描述
as_defaultboolen,是否作为默认证书

Response

{"data":{"id":"lKMp6F","restart_httpd":false},"success":true}
最后修改:2024 年 11 月 08 日
如果觉得我的文章对你有用,请随意赞赏