Let's Encrypt https证书部署

前言

小程序,坑爹的小程序所有的接口必须是https的,本来想偷的懒现在是必须的要还上。先是去aliyun看了看https证书价格最最便宜一年也要1700,玩蛋去吧,我们无产阶级用不起。只能找一个替代方案,这个替代方案就是Let's Encrypt的免费证书,但是免费就是要手动了(每三个月需要生成一个新证书),这个年头有钱才有方便。

安利下帮朋友做的小站:传送门

0x1.环境介绍

我的Linux主机是阿里云,也是为了简单我没有选择Centos系统,而是应用了Ubuntu,没别的就是简单(不偷懒的技术人员不是好男人)。

其他标配选择,以下三个配置不讲了,PHP程序员都懂的:

  • Nginx
  • MySQL
  • PHP

0x2.配置证书

首先,我们需要安装一个https生成的客户端

sudo apt-get install letsencrypt

在你生成证书之前,请你先关闭你的nginx服务,防止对应的端口占用。这个操作我都是晚上做的,白天网站还是有人的。

sudo letsencrypt certonly --standalone

接下来会出现一个文字图形界面。输入你的电子邮箱地址。

输入邮箱地址

之后同意条款

同意条款

最后输入服务器的域名。在具有DNS记录的前提下,你还可以加上任何你想要的二级域名。多个域名需要用空格分割开,稍等片刻后,客户端会完成身份验证。相关证书会放到 /etc/letsencrypt 文件夹下。

输入域名空格分割

把example.com替换成为你自己的域名。保存后记得启动nginx服务器

http {
    server {
        listen 80; 
        listen [::]:80;
        server_name example.com www.example.com;
    
        listen 443 ssl;
        ssl_certificate /etc/letsencrypt/live/example.com/cert.pem;
        ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
        
        location / {
            root /var/www/html;
        }
        ...
    }
    ...
}

0x3.证书更新

这个证书虽然说是免费,但是时间只有三个月,所以必须每三个月更新一次证书,否则证书过期。好在别人已经有脚本了,不怕搞事情。

wget https://dl.eff.org/certbot-auto
chmod a+x certbot-auto

这个证书自动更新程序,假设我放在 /data/ 文件夹中,那么我们的运行路径就是 /data/certbot-auto。这样我们可以写脚本了去跑crontab了。

接下来,创建一个shell脚本 refresh.sh

touch refresh.sh
chmod a+x refresh.sh

然后 vi refresh.sh 输入以下内容

#!/bin/bash
# 先停止 Nginx, 释放端口
sudo service nginx stop
# 更新证书
sudo /data/certbot-auto renew --force-renew
# 启动 Nginx
sudo service nginx start

最后当然是 crontab -e 你说三个月过期,我两个月更新一次不过分吧

# 每隔两个月一号23:59执行
59 23 1 */2 * /data/refresh.sh

所有的设置完毕,希望这个总结对大家有用。

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

推荐阅读更多精彩内容

  • 我知道愤怒的源头在哪里。 那是被权威压抑扭曲的内在小孩。 一旦自我意识觉醒,愤怒就会爆发。 这是好事。 我跟父亲和...
    自我觉察日记本阅读 1,703评论 0 2
  • 生活总是一地鸡毛,有钱的日子不一定好过,但是没钱的日子肯定难过。 我叫林利君,今年35岁,是家里的最小的孩子,和大...
    金鱼茵茵阅读 4,048评论 0 0
  • 1.以前安稳是为了你 后来潇洒是为了我自己 2.初见你的时候绝对不知道后来这么喜欢你 3.学会咽下所有的失望 才会...
    ppx121lyx阅读 1,651评论 0 1
  • 同学们好,我来自山东菏泽。你们的新同学 ,姜广增,首先我很开心能够在26班与大家相遇,也很幸运我的青春时光能...
    only小姜阅读 2,669评论 0 1