为你的网站安装免费的 SSL TLS 证书

文章目录

  • 前言
  • 准备工作
  • 证书申请
  • 证书安装
  • Nginx配置

前言

申请了很久的域名没有用起来怎么行呢?而访问安全需要获得一个可信的https证书颁发机构的认证,这其实是一个提升你网站可信度的方法,有很多的证书颁发机构,收费也高低不等,今天主要是介绍一个免费的https证书颁发机构ACME,以及如何给自己的网站进行认证。

准备工作

下载执行官方脚本

curl https://get.acme.sh | shsource ~/.bashrc

我这里是root用户执行的,在家目录中生成了.acme.sh这个文件夹:

[root@csv tmp 13:26:34]#ll /root/.acme.sh/
total 256
-rw-r--r-- 1 root root    450 Jun  7 16:33 account.conf
-rwxr-xr-x 1 root root 223427 Jun  6 15:16 acme.sh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.csh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.env
drwxr-xr-x 4 root root     66 Jun  6 15:33 ca
drwxr-xr-x 2 root root   4096 Jun  6 15:16 deploy
drwxr-xr-x 2 root root   8192 Jun  6 15:16 dnsapi
-rw-r--r-- 1 root root   1307 Jun  7 16:33 http.header
drwxr-xr-x 2 root root   4096 Jun  6 15:16 notify

编辑account.conf文件:

# 添加自己邮箱
ACCOUNT_EMAIL='xxx@**.com'# 添加阿里云Secret及秘钥
SAVED_Ali_Key='xxxxxxxxxx-key'
SAVED_Ali_Secret='xxxxxxxxx-secret'

阿里云Secret及秘钥的操作参考:创建阿里云AccessKey_访问控制(RAM)-阿里云帮助中心 (aliyun.com)

证书申请

执行脚本前请先关闭Nginx服务:

nginx -s stop

申请证书:

acme.sh --issue --set-default-ca --server letsencrypt -d templex.com -d *.templex.com

这时就会在当前目录下生成新的证书文件目录templex.com_ecc:

[root@csv tmp 13:26:34]#ll /root/.acme.sh/
total 256
-rw-r--r-- 1 root root    450 Jun  7 16:33 account.conf
-rwxr-xr-x 1 root root 223427 Jun  6 15:16 acme.sh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.csh
-rw-r--r-- 1 root root     78 Jun  6 15:16 acme.sh.env
drwxr-xr-x 4 root root     66 Jun  6 15:33 ca
drwxr-xr-x 2 root root   4096 Jun  6 15:16 deploy
drwxr-xr-x 2 root root   8192 Jun  6 15:16 dnsapi
-rw-r--r-- 1 root root   1307 Jun  7 16:33 http.header
drwxr-xr-x 2 root root   4096 Jun  6 15:16 notify
drwxr-xr-x 3 root root    196 Jun  6 15:41 templex.com_ecc# 证书文件
[root@csv .acme.sh 13:49:25]#ll templex.com_ecc/
total 28
drwxr-xr-x 2 root root    6 Jun  6 15:41 backup
-rw-r--r-- 1 root root 1827 Jun  6 15:35 ca.cer
-rw-r--r-- 1 root root 3344 Jun  6 15:35 fullchain.cer
-rw-r--r-- 1 root root 1517 Jun  6 15:35 templex.com.cer
-rw-r--r-- 1 root root  856 Jun  6 15:41 templex.com.conf
-rw-r--r-- 1 root root  497 Jun  6 15:34 templex.com.csr
-rw-r--r-- 1 root root  210 Jun  6 15:34 templex.com.csr.conf
-rw------- 1 root root  227 Jun  6 15:34 templex.com.key

设置证书自动更新:

acme.sh --upgrade --auto-upgrade

证书安装

新建证书存放目录并导出证书文件:

# 新建
mkdir -p /data/cert/templex.com/# 导出
acme.sh --install-cert -d templex.com --cert-file /data/cert/templex.com/templex.com.crt --key-file /data/cert/templex.com/templex.com.key --fullchain-file /data/cert/templex.com/fullchain.crt

Nginx配置

server {listen       443 ssl;server_name  abs.templex.com;ssl_certificate      /data/cert/templex.com/templex.com.crt;ssl_certificate_key  /data/cert/templex.com/templex.com.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;# location / {#     root   html;#     index  index.html index.htm;# }location / {proxy_pass http://xxx.xx.x.x:30000; }
}

最后重启Nginx,再次访问一下abs.templex.com,再也没有显示不安全的链接了,算是大功告成。

nginx -s reload
nginx

参考:

申请并部署免费的 SSL/TLS 证书 - 莱布尼茨 - 博客园 (cnblogs.com)

ACME.SH 申请SSL证书(免费、自动更新)_adding txt value:-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/24940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用Redis的队列模式实现消息的发送和订阅,适合分布式场景,Java实现代码

在Redis中,通常使用发布/订阅模式(Pub/Sub)来进行消息的实时通信。然而,标准的Redis发布/订阅模式并不直接支持确保一条消息只被一台机器消费。在这种模式下,所有订阅了特定频道的客户端都会收到发布的消息。 但是&…

Cesium项目报错An error occurred while rendering. Rendering has stopped.

一般就是本地打开会报错,改成用本地服务器打开 全局安装一个live-server sudo cnpm i live-server -g然后新增一个package.json文件 npm init -y然后在package.json的scripts中增加一个命令 "server": "live-server ./ --port8181 --hostlocalhos…

AI图书推荐:用ChatGPT来写非虚构类书籍

这本书《用ChatGPT来写非虚构类书籍 》(ChatGPT For KDP_ A manual from an experienced self-publisher to nonfiction authors for writing the book you were born to write with ChatGPT prompts mastering)是一本专为非虚构类书籍作者编写的指南&am…

实习记录2

1.flowable框架参数传递大概流程 通过传递xml,传递到后端,然后后端去解析 2.vue封装组件 在 Vue.js 中创建可复用的自定义组件是一个常见的需求,这样可以提高代码的复用性和可维护性。下面是一个简单的步骤指南,帮助你创建一个…

MLC工具是否适用AMD和ARM场景?如何测试内存性能?

MLC(Memory Latency Checker)主要是由Intel开发的工具,主要用于Intel平台上的内存性能测试,尤其是针对Intel处理器的内存延迟和带宽。尽管MLC主要针对Intel处理器设计,理论上它可以在任何支持Intel兼容指令集的系统上运…

嵌入式linux系统中利用I2C控制器应用开发详解

大家好,今天主要给大家分享一下,在linux系统上如何使用I2C进行应用开发详解。 l2C (Inter一Integrated Circuit BUS)是I2C BUS简称.中文为集成电路总线.是目前应用最广泛的总线之一。和IMX6ULL有些相关的是.刚好该总线是NXP前身的PHLIPS 设计。 第一:I2C协议概述 …

Spring框架IoC和AOP

Spring是一个开源的Java应用程序框架,旨在简化企业级应用程序的开发。它注重解决Java开发中的常见问题,如依赖注入、面向切面编程、事务管理等。Spring提供了一个轻量级的容器,用于管理和装配应用程序的对象。 Spring框架具有以下特点和优势…

xml 取值错误 #{} boolean 一直为 false

取值时 #{param.msgStatus} 一直是false&#xff0c;java代码里面显示true。 <select id"findPageOaReading" resultType"com.focusin.data.office.func.dto.ProcessMessageInfoDTO">select i.*, t.template_name procdefNamefrom process_message_…

西瓜书总结——决策树原理+ID3决策树的模拟实现

西瓜书总结——决策树原理ID3决策树的模拟实现 前言1. 决策树结构2. 决策树的生成&#xff08;注意区分属性和类别&#xff09;3. 划分选择3.1 信息熵和信息增益3.2 增益率3.3 基尼指数&#xff08;鸡你指数&#xff09; 4. 剪枝处理4.1 预剪枝4.2 后剪枝 5. 连续值与缺失值处理…

二分+模拟,CF1461D - Divide and Summarize

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 Problem - 1461D - Codeforces 二、解题报告 1、思路分析 我们发现每次分裂操作结果都是固定的 我们从初始序列分裂出两个确定的子序列&#xff0c;两个确定的子序列又分裂出4个确定的子序列 那么也就是说…

【Python】解决Python报错:ZeroDivisionError: division by zero

​​​​ 文章目录 引言1. 错误详解2. 常见的出错场景2.1 直接除零2.2 变量导致的间接除零 3. 解决方案3.1 检查除数3.2 使用异常处理 4. 预防措施4.1 数据验证4.2 编写防御性代码 结语 引言 在Python中&#xff0c;尝试将一个数字除以零时&#xff0c;会抛出ZeroDivisionErr…

安装 hbase(伪分布式)

目录 1、安装 jdk8 &#xff08;1&#xff09;选择 jdk 版本 &#xff08;2&#xff09;下载 jdk 并解压 &#xff08;3&#xff09;配置环境变量 2、安装hadoop &#xff08;1&#xff09;添加 hadoop 用户&#xff0c;配置免密登录 &#xff08;2&#xff09;下载 hado…

Duilib多标签选项卡拖拽效果:添加动画特效!

动画是小型界面库的“难题”、“通病” 几年前就有人分享了如何用direct UI制作多标签选项卡界面的方法。还有人出了一个简易的浏览器demo。但是他们的标签栏都没有Chrome浏览器那样的动画特效。 如何给界面添加布局是的动画特效呢&#xff1f; 动画使界面看起来高大上&#…

【录制,纯正人声】OBS录制软件,音频电流音,杂音解决办法,录制有噪声的解决办法

速度解决的方法 &#xff08;1&#xff09;用RNNoise去除噪声。RNNoise是一个开源的&#xff0c;效果不好的噪声去除器。使用方法就是点击滤镜&#xff0c;然后加噪声抑制RNNoise。【这方法不好用】 &#xff08;2&#xff09;用Krisp(https://krisp.ai/) 去除噪声。这个Kris…

探索C++ STL中的std::list:链式存储的艺术与实践

目录 ​编辑 引言 一、std::list详解 二、std::list的关键成员函数 三、示例代码 四、std::list与std::vector的对比 内存布局&#xff1a; 插入与删除&#xff1a; 迭代器稳定性&#xff1a; 五、应用场景 结语 引言 在C标准模板库(STL)中&#xff0c;std::list作…

skywalking学习

文章目录 前言一、skywalking单体安装部署1. 下载skywalking2. 部署oap和oap-ui服务3. 测试skywalking监控springboot应用 二、搭建swck(skywalking集群)1.安装k8s2.下载swck3.设置pod自动注入java agent 三、skywalking监控python四、skywalking监控cpp总结参考 前言 本文主要…

两段代码想编译其中一段

在Linux环境下&#xff0c;如果您的项目中包含两段代码且您只想编译其中一段&#xff0c;您可以采用多种方法来实现这个需求。具体分析如下&#xff1a; 1. **使用条件编译**&#xff1a;通过预处理指令来控制代码的编译。例如&#xff0c;您可以使用#ifdef、#ifndef、#if、#el…

SSL/TLS和HTTPS

HTTPS就是用了TLS包装的Socket进行通信的HTTP 混合加密 被称为混合加密。具体过程如下&#xff1a; 使用非对称加密协商对称密钥&#xff1a; 在通信的开始阶段&#xff0c;通常由客户端和服务器使用非对称加密算法&#xff08;如RSA&#xff09;来协商一个对称密钥。通常情…

vue3中的ref与reactive的区别

目录 1、两者的区别底层实现响应式引用与响应式对象 2、用法3、vue3中声明的数组/对象3.1 通过reactive 声明的Array/Object&#xff0c;给它重新分配一个全新的对象时&#xff0c;会出错、或失去响应式效果 3.2 解决方案 4、cosnt 说明5、Proxy 与 definePropertyref 浅层响应…

npm 异常:peer eslint@“>=1.6.0 <7.0.0“ from eslint-loader@2.2.1

node用16版本 npm install npm6.14.15 -g将版本降级到6