Lets Encrypt 通过脚本快速创建证书

下载到本地

wget https://raw.githubusercontent.com/xdtianyu/scripts/master/lets-encrypt/letsencrypt.conf
wget https://raw.githubusercontent.com/xdtianyu/scripts/master/lets-encrypt/letsencrypt.sh
chmod +x letsencrypt.sh

修改配置文件

ACCOUNT_KEY="letsencrypt-account.key"
DOMAIN_KEY="example.com.key"
DOMAIN_DIR="/var/www/example.com"
DOMAINS="DNS:example.com,DNS:whatever.example.com"
#ECC=TRUE
#LIGHTTPD=TRUE

执行过程中会自动生成需要的 key 文件。其中  ACCOUNT_KEY  为账户密钥,  DOMAIN_KEY  为域名私钥,  DOMAIN_DIR  为域名指向的目录, DOMAINS  为要签的域名列表, 需要  ECC  证书时取消  #ECC=TRUE  的注释,需要为  lighttpd  生成  pem  文件时,取消  #LIGHTTPD=TRUE  的注释。

DOMAINS="DNS:example.com,DNS:whatever.example.com"   域名前面必须加DNS:


注意

需要已经绑定域名到 /var/www/example.com 目录,即通过 http://example.com http://whatever.example.com 可以访问到 /var/www/example.com 目录,用于域名的验证。 

意思就是生成证书的时候还需要访问你服务器的80端口进行验证。

验证路径为:http://example.com/.well-known/acme-challenge/

一般通过NGINX来配置:

location /.well-known/acme-challenge/ {
      alias   /var/www/example.com/.well-known/acme-challenge/;
}

运行( 运行之前必须要先把nginx配好

./letsencrypt.sh letsencrypt.conf


将会生成如下几个文件

lets-encrypt-x1-cross-signed.pem
example.chained.crt          # 即网上搜索教程里常见的 fullchain.pem
example.com.key              # 即网上搜索教程里常见的 privkey.pem 
example.crt
example.csr









你可能感兴趣的:(java,tomcat)