使用certbot实现免费ssl证书申请和自动续期工具安装和配置

使用certbot实现免费ssl证书申请和自动续期工具安装和配置

有如下两种方式实现,第一种全自动,通过certbot nginx插件读取nginx配置,管理nginx实现ssl证书的申请、部署和续期;第二种通过手动申请证书,手动管理nginx ssl证书,通过crontab定时任务实现证书的自动续期;

1、自动申请/部署ssl证书到nginx
  • 安装 certbot 以及 certbot nginx 插件

    sudo yum install -y epel-release
    sudo yum install -y certbot
    sudo yum install -y python3-certbot-nginx
    
  • 执行配置自动申请证书并配置,中途会询问你的邮箱,如实填写即可
    sudo certbot --nginx

  • 自动续约
    sudo certbot renew --dry-run

  • 查看证书有效期

    openssl x509 -noout -dates -in /etc/letsencrypt/live/{域名}/cert.pem

2. 手动申请、配置、定时任务续期
  • 安装certbot

    yum install -y epel-release
    yum install -y certbot
    
  • 手动申请方式
    sudo certbot certonly --webroot -w 根路径地址 -d xxx.cn -d www.xxx.cn -m xxx@pddon.com --agree-tos

    申请成功后,会在/etc/letsencrypt/live/{域名}/下生成证书一些文件。

  • 打开nginx配置文件并添加ssl证书地址

    vi /etc/nginx/nginx.conf

    server {
            listen       443 ssl http2 default_server;
            listen       [::]:443 ssl http2 default_server;
            server_name  xxx.cn www.xxx.cn;
            root         /usr/share/nginx/html;
            ssl_certificate /etc/letsencrypt/live/xxx.cn/fullchain.pem; # managed by Certbot
            ssl_certificate_key /etc/letsencrypt/live/xxx.cn/privkey.pem; # managed by Certbot
            ssl_session_cache shared:SSL:1m;
            ssl_session_timeout  10m;
            ssl_ciphers PROFILE=SYSTEM;
            ssl_prefer_server_ciphers on;
    
  • 更新证书

    certbot renew --dry-run #返回的信息
    certbot renew --quiet #不返回的信息,静默方式
    
  • 使用定时任务申请ssl续期

    crontab -e
    #每天5点执行一次
    0 05 * * * certbot renew --quiet && nginx -s reload
    
  • 查看证书有效期

    openssl x509 -noout -dates -in /etc/letsencrypt/live/{域名}/cert.pem

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值