SSL免费证书之Let’s Encrypt
官网:https://letsencrypt.org/zh-cn
官网建议使用Certbot的方式进行安装,所以首先我们需要安装Certbot
Certbot)

选择运行的机器与系统的对应信息,选择之后页面会进行跳转,我这边使用的是Centos8+NGINX, 会跳转到页面:Certbot - Centosrhel8 Nginx (eff.org)
1.需要登录服务器
2.安装snapd工具(Installing snap on CentOS | Snapcraft documentation)
1)查看Centos版本
cat /etc/centos-release
2)添加epel源
$ sudo dnf install epel-release
$ sudo dnf upgrade
3)安装snapd
sudo yum install snapd #加入systemd管理进程
sudo systemctl enable --now snapd.socket # 添加classic支持
sudo ln -s /var/lib/snapd/snap /snap
安装完成之后, 需要新打开一个终端, 重新进入, 即可使用snapd相关命令
3.安装snap之后,要升级到最新的版本
sudo snap install core; sudo snap refresh core
4.移除老的之前安装过的Certbot工具删除掉
sudo apt-get remove certbot sudo dnf remove certbot sudo yum remove certbot
5.安装Certbot
sudo snap install --classic certbot
创建软链接:
sudo ln -s /snap/bin/certbot /usr/bin/certbot
6.对nginx生成证书
certbot --nginx #如果配置不是默认的位置 (/etc/nginx or /usr/local/etc/nginx),需要手动指定配置文件所在目录
certbot certonly --nginx --nginx-server-root=/root/nginx/conf
正常的话,就顺利生成了证书与Key:

进行nginx配置:
server {
listen 80;
server_name xx.xx.com;
access_log /data/log/nginx/access_xx.xx.com_80.log main buffer=10k flush=5s;
error_log /data/log/nginx/error_xx.xx.com_80.log warn;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
server {
listen 443 ssl;
server_name xx.xx.com;
access_log /data/log/nginx/access_xx.xx.com_443.log main;
error_log /data/log/nginx/error_xx.xx.com_443.log warn;
ssl_certificate /etc/letsencrypt/live/xx.xx.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/xx.xx.com/privkey.pem;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
然后重新加载配置文件即可:
nginx -t nginx -s reload
7.测试证书到期自动更换
sudo certbot renew --dry-run
这个时候 就可以使用https访问一下啦~~~
注意点:
1.nginx需要支持SSL
nginx -V 查看是否加载模块: --with-http_ssl_module
参考:
SSL免费证书之Let’s Encrypt的更多相关文章
- Letsencrypt SSL免费证书申请(Docker)
最近需要SSL证书,又不想花钱买,正好看到linux基金会去年底上线了新的开源项目,免费推广SSL遂尝试. Let's Encrypt 介绍 Let’s Encrypt is a free, auto ...
- Java Web学习总结(31)——全站HTTPS化SSL免费证书使用
1 背景 谷歌从 2017 年起,Chrome 浏览器将也会把采用 HTTP 协议的网站标记为「不安全」网站:苹果从 2017 年 iOS App 将强制使用 HTTPS:在国内热火朝天的小程序也要求 ...
- Nginx+tomcat+ssl免费证书配置
0.说明 本文说描写叙述的方式是用nginx的443重定向到tomcat的8443,nginx的80port重定到tomcat的8080: 乱入:个人标记:caicongyang 1.nginx安装 ...
- 阿里云使用ssl免费证书
购买免费证书 购买之后 申请证书 该域名必须添加一条TXT记录 根据提示添加记录 下载证书 我用的nginx做的映射,所以下载nginx nginx安装自行百度 将下载的文件解压到nginx目录下(创 ...
- SSL免费证书申请以及nginx配置https流程记录
设置https需要ssl 证书,可以通过FreeSSL[https://freessl.org/]申请. 流程记录: 输入域名,如 http://www.youdias.xin 选择品牌,如Let's ...
- 免费证书申请——Let's Encrypt的申请与应用(IIS,Tomcat)
环境 Windows Server 2008 R2 Tomcat 8.5.31 JDK8 利用IIS+letsencrypt-win-simple.V1.9.1申请免费SSL证书 新建一个IIS空网站 ...
- Ubuntu 16.04配置SSL免费证书
主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613 本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache ...
- https(ssl) 免费证书
https://letsencrypt.org/getting-started/ https://certbot.eff.org/lets-encrypt/centosrhel7-nginx http ...
- HTTPS(SSL / TLS)免费证书申请及网站证书部署实战总结
服务器环境:windows server 2008 + tomcat7 废话不多说,先看部署效果: 一.免费证书申请 Let's Encrypt 简介:let's Encrypt 是一个免费的开 ...
- docker项目ssl 安全证书的种种
一,证书挂着宿主的nginx上 这个很简单,只需要修改宿主nginx的配置文件即可 server { ssl default; server_name www.abc.com; #项目域名 ssl_c ...
随机推荐
- 几步轻松定制私人AI助手
这两年大模型的发展持续火热,以至于许多资本和学者认为AI出现了泡沫,根本原因还是因为大模型目前还没有出现能够结合行业切实落地的应用. 我才不关注泡沫不泡沫呢,我只关注大模型能给我带来哪些帮助即可.大模 ...
- GitHub Copilot 典型使用场景实践
大家好,我是Edison. 近期我们一直在使用GitHub Copilot协助开发编码工作,总结了一些实际场景的用法,可能在目前网络中很多的博客中都没有提及到,本文一一分享给你. 简介:你的结对编程伙 ...
- Mongodb入门4
今天学习一下MongoDB数据库的索引. 因为养的鱼生病了,所以抽空晚上学习记录一下. 这里借用一下菜鸟教程的原文: 索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描 ...
- CSS & JS Effect – Styling Select
参考 YouTube – Custom select menu - CSS only 原装 select 的缺点 这是一个原装 select design 它最大的问题是没有 spacing. bor ...
- CSS – Font / Text 属性
前言 之前学 W3Schools 时记入过一些 W3Schools 学习笔记 (1) – CSS Fonts. 由于太简单就没有另外写一篇, 现在感觉内容比较整齐了, 所以整理一篇出来. 属性 fon ...
- Asp.net core 学习笔记之 Microsoft Graph API
早年如果我们要读写用户得 outlook 内容是比较麻烦的, 要用许多 smtp 之类的方式. 现在终于是有了 http 级的 API 可以 call 了. 不仅仅是 outlook, calenda ...
- ChatGPT转发工具-springboot
背景 国内服务器无法访问openAI接口,我想过有两种实现方式 代理工具类似 tinyproxy.nginx 开发一个转发客户端(java.python都可以实现),提供一个api接口 源码 gith ...
- 2024csps初赛记
对于此次初赛,教训有不少,有一些差点把自己整死. 第一点,铅笔只能用2B,不要尝试使用HB 2nd:一定要带涂卡笔和橡皮,不然就算借别人用了也会发现橡皮还不如手擦的干净(可能因为这个原因我都要丢几分) ...
- K8S命名空间处于Terminating状态,如何强制删除
一.现象 当删除命名空间后,发现该空间一直处于Terminating状态 [root@imanager-beta-arm-21756-5g5ap ~]# kubectl get ns NAME STA ...
- dwc3 usb debugfs(otg switch)
1. driver driver/usb/dwc3/debugfs.c dwc3 probe ->dwc3 debugfs init() 2. enable debugfs mount -t d ...