免费实现https访问网站

Let's Encrypt免费证书签发过程包含以下三个阶段:

  1. 在本地服务器上安装Certbot,Certbot是签发/更新证书的客户端程序;

  2. 运行Certbot获取SSL/TLS证书,证书有效期为3个月;

  3. 设置定时脚本每周运行一次Certbot更新证书。如果证书有效期小于30天,Certbot会更新证书;

实际运行

  • 安装 certbot

yum install -y epel-release certbot
  • 申请证书

使用方法:certbot certonly --webroot -w [Web站点目录] -d [站点域名] -m [联系人email地址] --agree-tos

sudo certbot certonly --webroot -w ~/gitbook.prlrr.com -d adsryen.cn -m [email protected] --agree-tos

pip install --upgrade --force-reinstall 'requests==2.6.0' urllib3

证书位置:

tree /etc/letsencrypt/live/adsryen.cn
/etc/letsencrypt/live/adsryen.cn
├── cert.pem -> ../../archive/adsryen.cn/cert1.pem
├── chain.pem -> ../../archive/adsryen.cn/chain1.pem
├── fullchain.pem -> ../../archive/adsryen.cn/fullchain1.pem
├── privkey.pem -> ../../archive/adsryen.cn/privkey1.pem
└── README
  • 查看命令有效期

  • 定时自动更新

配置crontab,每月1号5时更新证书,并重启docker容器

  • 生成 PFS 键值

  • docker 启动 nginx

最佳实践

  • 添加 epel 源

  • 安装 Certbot 工具

  • 申请证书

  • 配置 dns 解析

  • 验证 dns 解析

  • 生成提示

  • 查看命令有效期

  • 设置定时任务自动更新

配置 crontab,每月1好5时更新证书,并重启docker容器

  • 生成 PFS 键值

  • 配置 nginx

  • 启动 nginx

  • 端口转发

  • 访问效果

  • https://adsryen.cn/

  • https://www.adsryen.cn/

  • https://blog.adsryen.cn/

宿主机 nginx

  • nginx 默认目录

  • 添加安装源

安装该rpm后,我们就能在/etc/yum.repos.d/ 目录中看到一个名为nginx.repo 的文件。

  • 安装 nginx

  • 启动 nginx

  • 查看开机自启

  • 设置开机自启动

  • 关闭开机自启

  • 查看 nginx 效果

  • 启动 nginx

  • 测试配置文件

  • 优雅重启

  • 查看nginx 进程号

  • 停止 nginx

  • /etc/nginx/nginx.conf

  • /etc/nginx/conf.d/default.conf

  • 启动 docker 容器 nginx

参考文档

最后更新于

这有帮助吗?