Replies: 4 comments 1 reply
-
你用了证书自动申请证书 可以直接推送到网站证书目录吧 这样就省去了这些中间步骤 |
Beta Was this translation helpful? Give feedback.
0 replies
-
有理,也不是不行hhh( 但这样网站多的话,要添加好多推送任务,想着推送一遍一劳永逸,后边新增网站也不用重新添加推送任务😂😂 |
Beta Was this translation helpful? Give feedback.
0 replies
-
附议,这个功能很需要。目前1panel也没有设计接口和apikey无法手动实现 |
Beta Was this translation helpful? Give feedback.
1 reply
-
我实现了一个,方便后面搜到这的人用,我分享一下: #!/bin/bash
# 定义用户名和密码
USERNAME="****"
PASSWORD="****"
# 安全入口 EntranceCode(Base64 )
ENTRANCE_CODE="****"
# 1Panel API 地址
LOGIN_URL="https://****.cn/api/v1/auth/login"
UPLOAD_URL="https://****.cn/api/v1/websites/ssl/upload"
# 定义证书相关信息
PRIVATE_KEY_PATH="/etc/cert/****/cert.key"
CERTIFICATE_PATH="/etc/cert/****/cert.crt"
SSL_ID=1
DESCRIPTION="sync from certd:tx4"
# 构建登录请求的 JSON 数据
LOGIN_DATA=$(cat <<EOF
{
"name": "$USERNAME",
"password": "$PASSWORD",
"language":"zh",
"authMethod": "jwt"
}
EOF
)
# 使用 curl 发送登录请求
RESPONSE=$(curl -s -X POST "$LOGIN_URL" \
-H "Content-Type: application/json" \
-H "EntranceCode: $ENTRANCE_CODE" \
-d "$LOGIN_DATA")
# 解析返回的 token
TOKEN=$(echo $RESPONSE | grep -Po '(?<="token":")[^"]*')
# 检查是否登录成功
if [ -n "$TOKEN" ]; then
echo "登录成功,token: $TOKEN"
# 读取私钥和证书内容
# PRIVATE_KEY_CONTENT=$(cat "$PRIVATE_KEY_PATH")
# CERTIFICATE_CONTENT=$(cat "$CERTIFICATE_PATH")
# 构建上传证书的请求数据
UPLOAD_DATA=$(cat <<EOF
{
"privateKey": "",
"certificate": "",
"privateKeyPath": "$PRIVATE_KEY_PATH",
"certificatePath": "$CERTIFICATE_PATH",
"type": "local",
"sslID": $SSL_ID,
"description": "$DESCRIPTION"
}
EOF
)
# 发送证书上传请求
UPLOAD_RESPONSE=$(curl -s -X POST "$UPLOAD_URL" \
-H "PanelAuthorization: $TOKEN" \
-H "Content-Type: application/json" \
-d "$UPLOAD_DATA")
# 输出上传结果
echo "证书上传响应: $UPLOAD_RESPONSE"
else
echo "登录失败,请检查用户名或密码"
echo "失败响应: $RESPONSE"
fi
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
1Panel 版本
专业版 v1.10.14-lts
请描述您的需求或者改进建议
由于1panel暂无精力适配华为云dns账号,因此使用certd程序自动化申请证书,可以推送到服务器本地
1panel这边也能选择本地文件,但是当本地证书文件更新,1panel要想更新还需要再次选择证书路径才能获取最新证书信息,不能自动获取本地新的证书文件
需求&改进建议:
在选择手动上传且选择为本地文件时,此更新按钮点击后可立即获取新的本地证书文件
在证书详情界面显示本地证书路径,以及可以配置 自动化任务:定时自动获取本地证书文件,以达到自动更新
请描述你建议的实现方案
在选择手动上传且选择为服务器文件时,更新按钮点击后可立即获取新的本地证书文件
在证书详情界面显示本地证书路径,以及可以配置 自动化任务:定时自动获取本地证书文件,以达到自动更新
附加信息
No response
Beta Was this translation helpful? Give feedback.
All reactions