# 安装所需工具
apt update
apt install -y socat curl wget
# 安装acme.sh
curl https://get.acme.sh | sh -s email=xiaoding@kbbei.com
# 重新加载环境变量
source ~/.bashrc
# 删除已存在的证书文件
rm -f /root/frp/cert.pem /root/frp/key.pem
# 移除acme.sh中的证书记录
acme.sh --remove -d kbbei.com
acme.sh --remove -d "*.kbbei.com "
# 清除acme.sh的域名配置
rm -rf ~/.acme.sh/kbbei.com
rm -rf ~/.acme.sh/*.kbbei.com
# 设置腾讯云API密钥(需要先在腾讯云控制台获取SecretId和SecretKey)
export DP_Id="bfa2b440b09d11ef8f4fdb396f4b4302"
export DP_Key="81847f1a22e040e7b405708f51bf41d8"
# 设置腾讯云DNS API的标识符
https://console.cloud.tencent.com/taidc/api
secretId:bfa2b440b09d11ef8f4fdb396f4b4302
secretKey:81847f1a22e040e7b405708f51bf41d8
userId:674d952860db7708b27658ad
# 或者使用dig命令查询
dig TXT _acme-challenge.kbbei.com @8.8.8.8
# 等待解析生效检查
nslookup -type=TXT _acme-challenge.kbbei.com
在申请证书之前,可以先验证DNS记录是否正确设置:
# 验证DNS记录是否生效
dig _acme-challenge.kbbei.com TXT
# 等待DNS记录生效(通常需要等待1-5分钟)
# 查看网卡状态
ip addr
# 重启网卡方法1(使用netplan)
sudo netplan apply
# 重启网卡方法2(使用systemd)
sudo systemctl restart systemd-networkd
# 重启网卡方法3(针对特定网卡)
sudo ip link set dev [网卡名] down
sudo ip link set dev [网卡名] up
# 验证网络连接
ping -c 4 kbbei.com
apt-get install idn
# 使用DNS方式验证域名所有权(腾讯云DNS)
# 先清理已有证书
acme.sh --remove -d kbbei.com
acme.sh --remove -d "*.kbbei.com"
rm -rf ~/.acme.sh/kbbei.com*
# 重新申请证书(添加debug参数)
acme.sh --issue --dns dns_dp -d kbbei.com -d "*.kbbei.com" --force
# 说明:
# dns_dp 是腾讯云DNS API的标识符
# --force 参数用于强制重新申请证书
# --debug 参数用于显示详细的调试信息
Adding TXT value: KXPGUraeHDzW0v4MuJ4pwmIbzo6RYz1uyI0E4Tou1bA for domain: _acme-challenge.kbbei.com
# 创建证书存放目录
mkdir -p /root/frp
# 安装证书到指定目录(PEM格式)
acme.sh --install-cert -d kbbei.com \
--key-file /root/frp/key.pem \
--fullchain-file /root/frp/cert.pem \
--reloadcmd "systemctl restart frpc"
# 查看证书内容
openssl x509 -in /root/frp/cert.pem -text -noout
# 验证私钥
openssl rsa -in /root/frp/key.pem -check
acme.sh会自动创建一个cron任务,每天检查并在需要时自动更新证书,无需手动操作。
可以通过以下命令查看cron任务:
crontab -l
your-secret-id
和your-secret-key
为腾讯云API密钥(在腾讯云控制台 -> 访问密钥 -> API密钥管理中获取)如果遇到问题,可以查看以下日志:
```bash
acme.sh --log
ls -l /root/frp/cert.pem /root/frp/key.pem
dig _acme-challenge.kbbei.com TXT