记一次申请SSL证书流程

目的

申请域名证书 (DV SSL)

1. 使用acme 自动签发

1.1 下载acme脚本(可以不用这一步)

git clone https://github.com/acmesh-official/acme.sh

1.2 安装zcem

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

1.3 运行脚本自动签发

~/.acme.sh/acme.sh --issue -d 域名 --webroot web目录

签发成功如下

image.png

注:使用acme命令之前需要先注册帐务使用命令即可,填入自己的邮箱

https://github.com/acmesh-official/acme.sh/wiki/ZeroSSL.com-CA
image.png

1.4 签发成功后修改域名证书的存放位置
默认签发成功后的位置如:


image.png

使用以下命令修改存放位置以供使用

~/.acme.sh/acme.sh --install-cert -d 域名 \
--key-file       密钥存放目录  \
--fullchain-file 证书存放路径 

2. 配置

2.1 Apache 配置

2.2.1. 编辑网站配置文件,例如 /etc/apache2/sites-enabled/xxx.conf ,添加443端口和相关配置:

<VirtualHost *:443>
    ServerName tlanyan.pp.ua
    # 日志等其他配置

    # ssl配置
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/tlanyan.pp.ua/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/tlanyan.pp.ua/privkey.pem
</VirtualHost>

注:如果apache第一次使用ssl,需要开启 ssl mod,使用命令

a2enmod ssl

否则会报错:


image.png

2.2.2 重启apache服务

systemctl restart apache2.service

3. 查询ssl证书有效期

使用以下命令

# 2、查看到期时间
openssl x509 -in xxx.crt -noout -dates

Attention:

  1. When add ssl using acme first, you must make sure your server can be reached from port 80
    So, first you should set ngxin running and turn default port on
  2. You should set webroot using --webroot or -w
  3. Whenever, You CAN reference its opensource repo https://github.com/acmesh-official/acme.sh
  4. Anyway if failed, try add --server letsencrypt https://stackoverflow.org.cn/questions/68447907

参考

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容