Let‘s Encrypt

这篇具有很好参考价值的文章主要介绍了Let‘s Encrypt。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、Let's Encrypt简介

        Let's Encrypt —— 是一个由非营利性组织互联网安全研究小组(ISRG)提供的免费、自动化和开放的证书颁发机构(CA),简单的说,就是为网站提供免费的 SSL/TLS 证书。互联网安全研究小组(ISRG):ISRG是美国加利福尼亚州的一家公益公司,成立于2013年5月,第一个项目是Let's Encrypt证书颁发机构。

        Let’s Encrypt 使用 ACME 协议来验证您对给定域名的控制权并向您颁发证书。要获得 Let’s Encrypt 证书,您需要选择一个要使用的 ACME 客户端软件。Let’s Encrypt 不控制或审查第三方客户端,也不能保证其安全性或可靠性。官方推荐使用 Certbot 客户端来签发证书,官网:https://certbot.eff.org/

ACME协议:

  • Automatic Certificate Management Environment=ACME,自动认证管理环境协议
  • ACME协议的基本思路是:
    • 在你服务器上生成一次性的随机特征数据(nonce)
    • 然后通过Let’s Encrypt的服务器核对这个数据
    • 核对成功发放证书

使用前提: 

  • 域名,它会生成指定域名的证书
  • 在域名指向的服务器上能访问https
  • Linux环境

2、环境准备

Certbot的两种工作方式:

Standalone 方式:

        certbot 会自己运行一个 web server 来进行验证。如果我们自己的服务器上已经有 web server 正在运行 (比如 Nginx 或 Apache ),用 standalone 方式的话需要先关掉它,以免冲突。

Web root 方式:

        certbot 会利用既有的 web server,在其 web root目录下创建隐藏文件,Let’s Encrypt 服务端会通过域名来访问这些隐藏文件,以确认你的确拥有对应域名的控制权。

安装Nginx,Nginx位于第三方的yum源里面,而不在Centos官方yum源里面

#安装RHEL
sudo yum install epel-release
#yum更新
yum update
yum install -y nginx

安装wget

yum -y install wget

下载Certbot客户端

#下载
wget https://dl.eff.org/certbot-auto
#添加执行权限
chmod a+x ./certbot-auto

编辑nginx的配置文件

server {
    listen 80 default_server;
    listen [::]:80 default_server;
    #1.配置合法域名
    server_name yuanjing.com;
    #2.配置应用根目录
    root /usr/share/nginx/html;
}

3、生成并配置证书

使用certbot-auto命令,生成证书

#域名必须真实有效
./certbot-auto certonly --webroot --email yuanjing@lagou.com -w /usr/share/nginx/html/ -d [填写合法域名的地址]

生成的证书放在/etc/letsencrypt/live/[网站域名]下

例如:/etc/letsencrypt/live/yuanjing.com

文件名 内容
cert.pem 服务端证书
chain.pem 浏览器需要的所有证书但不包括服务端证书,比如根证书和中间证书
fullchain.pem 包括了cert.pem和chain.pem的内容
privkey.pem 证书的私钥

一般情况下fullchain.pem和privkey.pem就够用了

[centos@yuanjing ~]$ tree /etc/letsencrypt/
......
├── live
│ └── yuanjing.com (别名,最终,看自己域名)
│ ├── cert.pem -> ../../archive/yuanjing.com/cert1.pem
│ ├── chain.pem -> ../../archive/yuanjing.com/chain1.pem
│ ├── fullchain.pem ->
../../archive/yuanjing.com/fullchain1.pem
│ ├── privkey.pem ->
../../archive/yuanjing.com/privkey1.pem
│ └── README
......

配置nginx支持https访问

server {
    listen 443 ssl http2;
    server_name yuanjing.com; # 设置域名
    ssl_certificate  "/etc/letsencrypt/live/yuanjing.com/fullchain.pem"; # 证书
    ssl_certificate_key  "/etc/letsencrypt/live/yuanjing.com/privkey.pem"; # 私钥

http 跳转到 https

在网站在访问http时都会将http请求重定向到https,只需在nginx中配置下。配置如下

server {
    listen 80 default_server;
    server_name yuanjing.com www.yuanjing.com;
    return 301 https://$server_name$request_uri; # 这个是固定的
}

重启Nginx后生效

nginx -s reload 

4、更新证书

默认证书有效期是3个月,所以需要续期。

设置每月1日的凌晨3点就会执行一次所有域名的续期操作文章来源地址https://www.toymoban.com/news/detail-493460.html

#创建定时任务
sudo crontab -e
#设置定时策略
#/home/ubuntu/soft/certbot-auto:certbot所在的目录
0 3 1 * * /home/ubuntu/soft/certbot-auto renew --renew-hook "sudo nginx -s reload"
#查看一下是否存在刚才添加的定时命令
sudo crontab -l

到了这里,关于Let‘s Encrypt的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 申请Let‘s Encrypt免费SSL证书、自动化续签证书

    安装证书的环境为 Centos + Nginx ,如果没有安装Nginx则需要先安装。 1、开放 80 和 443 端口 2、安装 certbot 使用certbot工具能够很方便的申请和续签let’s encript证书。 3、执行命令 站点目录:html文件保存位置,只需要到文件夹即可。 比如index.html在/www/a/b/index.html,则这里只要取

    2024年02月08日
    浏览(56)
  • 最新版 Let’s Encrypt免费证书申请步骤,保姆级教程

    最近将域名迁到了google domain,就研究了一下Let’s Encrypt的域名证书配置。发现网上找到的教程在官方说明中已经废弃,所以自己写一个流程记录一下。 步骤方法官方文档见:https://eff-certbot.readthedocs.io/en/stable/install.html#installation snapd官方文档见:https://certbot.eff.org/instructions

    2024年02月07日
    浏览(46)
  • SSL证书系列--又拍云Let’s Encrypt免费DV SSL证书使用教程

    原文网址:SSL证书系列--又拍云Let’s Encrypt免费DV SSL证书使用教程_IT利刃出鞘的博客-CSDN博客 本文介绍如何使用又拍云部署Let’s Encrypt免费DV SSL证书。 了解和关注SSL证书的朋友,似乎没有理由不知道 Let’s Encrypt 这个免费、自动化、开放的证书签发服务。         它由 I

    2024年02月09日
    浏览(44)
  • 轻松配置 https:Let‘s Encrypt 介绍及 Nginx Proxy Manager 实用操作教程

    一般我们在本地进行 web 开发时用的都是 http 协议,而部署到服务器上之后为了安全都要配置 https,以保证客户端和服务器之间的通信内容得到加密,不会被泄露或篡改。 本文将介绍 https 协议的基本知识(如果有基础可以跳过),以及如何使用 Let’s Encrypt 给你的服务优雅地

    2024年03月11日
    浏览(45)
  • 宝塔面板站点SSL,Let‘s Encrypt 证书申请报错:Invalid version. The only valid version for X509Req is 0.

    Linux正式版 7.9.10 CentOS 7.3.1611 x86_64(Py3.7.9) 新服务器 , 新装宝塔 , 新增站点 ,ssl选择Let’s Encrypt,点击申请证书 报错: 文件验证和DNS验证都报这个错。 试过修复面板(无效),试过回退到7.9.8版本(无效) 您好,您这个报错是因为面板依赖的不兼容导致的证书申请失败,

    2024年02月09日
    浏览(44)
  • encrypt-js 前端 的加密解密

    1.    跟后端人员约定好偏移量 encrypt是 加密的方法 decrypt是解密的方法 定义一个 工具包 import {encrypt} from \\\"./aes.js\\\";  引入方法 直接使用 let data=encrypt(加密的内容)

    2024年04月17日
    浏览(38)
  • 勒索花样繁多,“Sophos Encrypt”披马甲进行勒索攻击

      近日,网络安全供应商Sophos发表声明,称Sophos被一款名为 “Sophos Encrypt”新型勒索软件 冒充,该勒索软件进行攻击时会冒用Sophos品牌名称,并将用户重要文件进行加密以勒索赎金。   现在的勒索软件类型多样,令企业防不胜防,面对这种“出其不意”式勒索攻击,“未雨

    2024年02月17日
    浏览(38)
  • tx H5_1.0.19算法 tx算法 encrypt_msg 腾讯encrypt_msg算法mobile_save接口中的msg值算法。

    tx充值QB页面的mobile_save接口中的encrypt_msg值算法。 本帖学习研究探讨 目标网站地址 http://pay.qq.com/h5/ 版本 base_key_version=H5_1.0.21 encrypt_way=web_new_encrypt 目的是拿到最终的支付链接。 https://api.unipay.qq.com/v1/r/1450000490/mobile_save 可以看到 不管是QQ支付还是微信支付,最终的支付链接是

    2024年02月08日
    浏览(128)
  • openssl 加密(encrypt)、解密(decrypt)、签名(sign)、验证(verify)

    上述方式可以确认身份,如果我用这个公钥能解密,那一定是你发送的,因为私钥只有你有 [kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl -encrypt -inkey public.key -pubin -in test -out en-test [kyzjj@yyzc-zjjcs04 openssl]$ [kyzjj@yyzc-zjjcs04 openssl]$ openssl rsautl -decrypt -inkey private.key -in en-test hello world [kyzjj@yyzc

    2024年02月11日
    浏览(41)
  • php7使用openssl_encrypt函数进行AES加密

    前言 手上有个api对接需求,要用到AES加密,要用到openssl_encrypt函数,记录一下,鉴权要求大概如下。 将明文先base64加密,后取前16位 判断字符串的字节型数据长度是否为16倍整,如不是则进行补充(PKCS#7标准) 对字符串进行AES加密后base64加密,其中 iv=A-16-Byte-String 介绍 参数

    2023年04月08日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包