Certbot给网站域名申请免费SSL证书 及Nginx配置

2023-10-13 05:40

本文主要是介绍Certbot给网站域名申请免费SSL证书 及Nginx配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Certbot 官网: https://certbot.eff.org/

前提是自己已经安装好nginx,并配置好自己的域名。

1.安装snap

官网要求用snap工具安装,那就先安装相关依赖包,和snap软件。

yum -y install epel-release          	#安装依赖
yum -y install snapd					#安装snap
systemctl enable --now snapd.socket		#启动snap通信套接字
ln -s /var/lib/snapd/snap /snap			#创建如下软连接,为了启用classic snap的支持

如果少一步,安装cerbot会报错。如:没有创建软连接,在安装cerbob报以下错误;
error: cannot install "certbot": classic confinement requires snaps under /snap or symlink from /snap to /var/lib/snapd/snap

这几步下来一般是不会出错的,这样sanp就安装好了



2.安装certbot

  • 升级更新snap
snap install core
snap refresh core
  • 如果之前装过certbot的话要先卸载
sudo yum remove certbot
  • 安装Certbo
snap install --classic certbot
  • 配置Certbot命令行,执行如下命令以确保Certbot命令行可用
ln -s /snap/bin/certbot /usr/bin/certbot
  • 运行Certbot(二选一)
    1:运行此命令获取证书,并让Certbot自动编辑Nginx配置以提供服务,只需一步即可打开HTTPS访问
certbot --nginx
  	2:仅获得证书。如果你希望手动配置nginx,输入如下命令
certbot certonly --nginx

注:Certbot默认nginx配置文件在 /etc/nginx/nginx.conf/usr/local/etc/nginx/nginx.conf,若你的nginx配置文件不在此处(以/usr/local/nginx/conf/nginx.conf为例),需在命令后加上 --nginx-server-root /usr/local/nginx/conf



3. 配置域名ssl证书

用第一种方法给域名配置证书:

certbot --nginx

按要求添加邮箱,域名
在这里插入图片描述

最后有Could not automatically find a matching server block for Set the server_name dirinstaller.报错,是因为在nginx配置文件没有配置域名信息。

进入vim nginx/conf/nginx.conf,找到server_name的部分,改成自己的域名信息

 server {listen       80;server_name  ywbj.cc www.ywbj.cc;}}

再次运行

certbot --nginx

在这里插入图片描述

配置成功,没有报错,这时访问你的网站,就会是https了。
在这里插入图片描述
或者在查看nginx配置文件,已经多了SSL相关信息
多的部分如下:

    listen 443 ssl; # managed by Certbotssl_certificate /etc/letsencrypt/live/ywbj.cc/fullchain.pem; # managed by Certbotssl_certificate_key /etc/letsencrypt/live/ywbj.cc/privkey.pem; # managed by Certbotinclude /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbotssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
server {if ($host = www.ywbj.cc) {return 301 https://$host$request_uri;} # managed by Certbotif ($host = ywbj.cc) {return 301 https://$host$request_uri;} # managed by Certbotlisten       80;server_name  ywbj.cc www.ywbj.cc;return 404; # managed by Certbot


4.配置自动续签

虽然是免费的,但certbot只有90天的有效期,但它有自动续期的命令,无需再次运行certbot重新签证书。通过运行以下命令,可以测试证书的续订是否正常。

certbot renew --dry-run

如果没有报错,则自动续期命令是正常运行的。

最后所以我们设置个定时任务,让这个续期命令到期自动执行。
certbot renew --force-renewal强制续签,否则没到期,无法续签的。

#进入编辑定时任务
crontab -e 
#添加以下,每隔两个月的,凌晨1点0分,强制续签
0 1 * /2 * /usr/bin/certbot renew --force-renewal

配置完成!!

这篇关于Certbot给网站域名申请免费SSL证书 及Nginx配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/weixin_52270081/article/details/118094851
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/201149

相关文章

Nginx路由匹配规则及优先级详解

《Nginx路由匹配规则及优先级详解》Nginx作为一个高性能的Web服务器和反向代理服务器,广泛用于负载均衡、请求转发等场景,在配置Nginx时,路由匹配规则是非常重要的概念,本文将详细介绍Ngin... 目录引言一、 Nginx的路由匹配规则概述二、 Nginx的路由匹配规则类型2.1 精确匹配(=)2

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

SpringBoot中HTTP连接池的配置与优化

《SpringBoot中HTTP连接池的配置与优化》这篇文章主要为大家详细介绍了SpringBoot中HTTP连接池的配置与优化的相关知识,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录一、HTTP连接池的核心价值二、Spring Boot集成方案方案1:Apache HttpCl

Maven 插件配置分层架构深度解析

《Maven插件配置分层架构深度解析》:本文主要介绍Maven插件配置分层架构深度解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Maven 插件配置分层架构深度解析引言:当构建逻辑遇上复杂配置第一章 Maven插件配置的三重境界1.1 插件配置的拓扑

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

Nginx 访问 /root/下 403 Forbidden问题解决

《Nginx访问/root/下403Forbidden问题解决》在使用Nginx作为Web服务器时,可能会遇到403Forbidden错误,文中通过示例代码介绍的非常详细,对大家的学习或者工作... 目录解决 Nginx 访问 /root/test/1.html 403 Forbidden 问题问题复现Ng

Nginx部署React项目时重定向循环问题的解决方案

《Nginx部署React项目时重定向循环问题的解决方案》Nginx在处理React项目请求时出现重定向循环,通常是由于`try_files`配置错误或`root`路径配置不当导致的,本文给大家详细介... 目录问题原因1. try_files 配置错误2. root 路径错误解决方法1. 检查 try_f

VSCode中配置node.js的实现示例

《VSCode中配置node.js的实现示例》本文主要介绍了VSCode中配置node.js的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录一.node.js下载安装教程二.配置npm三.配置环境变量四.VSCode配置五.心得一.no

Gradle在国内配置镜像加速的实现步骤

《Gradle在国内配置镜像加速的实现步骤》在国内使用Gradle构建项目时,最大的痛点就是依赖下载贼慢,甚至卡死,下面教你如何配置国内镜像加速Gradle下载依赖,主要是通过改写repositori... 目录引言一、修改 build.gradle 或 settings.gradle 的 reposito

使用easy connect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题

《使用easyconnect之后,maven无法使用,原来需要配置-Djava.net.preferIPv4Stack=true问题》:本文主要介绍使用easyconnect之后,maven无法... 目录使用easGWowCy connect之后,maven无法使用,原来需要配置-DJava.net.pr