Published on

acme.sh使用记录

Authors
  • avatar
    Name
    peterlee
    Twitter
  1. 安装acme.sh
curl https://get.acme.sh | sh -s email=my@example.com
  1. 自动验证(DNS API)

登录到 DNSPod.cn,拿到你的 DNSPod API Key 和 ID 并设置:

export DP_Id="xxxx"
export DP_Key="xxxxx"
  1. 设置默认证书商
acme.sh --set-default-ca --server letsencrypt
  1. 创建证书
acme.sh --issue -d bangejia.cn -d *.bangejia.cn --dns dns_dp --server letsencrypt

DP_Id 和 DP_Key 将保存在 ~/.acme.sh/account.conf 中,并在需要时自动获取,无需手动再设置。

  1. 安装证书
acme.sh --install-cert -d bangejia.cn  \
--key-file       /www/ssl/bangejia.cn/key.pem  \
--fullchain-file  /www/ssl/bangejia.cn/cert.pem \
--reloadcmd     "service nginx reload"
  1. nginx证书配置
    listen 443 ssl http2 ;
    ssl_certificate /www/ssl/bangejia.cn/cert.pem;
    ssl_certificate_key /www/ssl/bangejia.cn/key.pem;
    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_prefer_server_ciphers on;
    ssl_session_cache shared:SSL:10m;
    ssl_session_timeout 10m;
    add_header Strict-Transport-Security "max-age=31536000";
    error_page 497  https://$host$request_uri;

查看已安装证书信息 acme.sh --info -d bangejia.cn

更新续期证书 acme.sh --renew -d bangejia.cn --force