Let‘s Encrypt永久免费SSL证书攻略

    Let's Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,目前证书默认是90天有效期,但是我们可以使用acme.sh自动续期。废话少说,攻略送上。

 一、安装ACME
 1.1、下载安装acme.sh

curl https://get.acme.sh | sh

可能需要重启才能直接执行acme.sh。

1.2、设置acme.sh自动升级

acme.sh --upgrade --auto-upgrade

二、生成证书 

  2.1、DNS验证方式之阿里云
    (1) 获取阿里云AccessKey ID和AccessKey Secret
    https://help.aliyun.com/knowledge_detail/38738.html

    (2)设置阿里云AccessKey ID和AccessKey Secret

export Ali_Key="Key_XXX"
export Ali_Secret="Secret_XXX"

    (3) 生成证书

acme.sh --issue --dns dns_ali -d domain.com -d *.domain.com

  2.2、DNS验证方式之DNSPod(腾讯云)
    (1) 登录DNSPod使用腾讯云账号,或在腾讯云域名解析处修改DNS地址转向DNSPod

    (2) 获取DNSPod的密钥
    https://console.dnspod.cn/account/token

    (3)设置DNSPod的密钥

export DP_Id="ID_XXX"
export DP_Key="Token_XXX"

    (4) 生成证书 

acme.sh --issue --dns dns_dp -d domain.com -d *.domain.com

  2.3、证书配置
    (1)生成的证书默认存放路径:~/acme.sh/domain/,建议安装后使用

mkdir /etc/apache2/cert/domain.com/
acme.sh --install-cert -d domain.com --cert-file /etc/apache2/cert/domain.com/domain.com.crt --key-file /etc/apache2/cert/domain.com/domain.com.key --fullchain-file /etc/apache2/cert/domain.com/fullchain.crt --reloadcmd "service apache2 force-reload"

    (2)Apache应用证书


	
		ServerName domain.com
		DocumentRoot /var/www/htdocs/public/
		
			DirectoryIndex index.html index.php
			Options FollowSymLinks
			AllowOverride All
			RewriteEngine On
		
		ErrorLog ${APACHE_LOG_DIR}/error.log
		CustomLog ${APACHE_LOG_DIR}/access.log combined

		SSLEngine on
		SSLCertificateFile /etc/apache2/cert/domain.com/domain.com.crt
		SSLCertificateKeyFile /etc/apache2/cert/domain.com/domain.com.key
		#SSLCertificateChainFile /etc/apache2/cert/domain.com/fullchain.crt
	

    (2)Nginx应用证书

server {
	server_name domain.com *.domain.com;
	isten 443 http2 ssl;
	ssl_certificate /etc/apache2/cert/domain.com/domain.com.crt;
	ssl_certificate_key /etc/apache2/cert/domain.com/domain.com.key;
	ssl_trusted_certificate /etc/apache2/cert/domain.com/fullchain.crt;
	location / {
	}
}

你可能感兴趣的:(服务器维护)