Https网站如何申请免费的SSL证书及操作使用指南

前言

在当今互联网环境下,HTTPS已成为网站安全的标配,它通过SSL/TLS协议为网站数据传输提供加密,保障用户信息的安全。申请并部署免费SSL证书,不仅能够提升网站的专业形象,还能增强用户信任。本文将详细介绍如何在知名免费SSL证书提供商Let's Encrypt申请免费SSL证书,并指导如何在Nginx和Apache服务器上安装和使用证书。

这里推荐:

OHTTPS - 免费HTTPS证书、自动化更新、自动化部署、自动化监控

ohttps.com提供了类似于acme.sh的功能,不过提供了友好的管理界面,可申请Let's Encrypt免费通配符类型证书,还提供了证书吊销、到期前提醒、自动更新、自动部署功能。

另外比acme.sh增加了一些非常实用的功能,主要包括可自动部署至阿里云、腾讯云、七牛云的负载均衡、内容分发CDN、SSL证书列表等,并可自动部署至多个nginx容器中。

如果你有在证书更新后自动部署至多个不同节点的需求,使用ohttps.com就对了,在这里强烈推荐大家使用ohttps.com申请和管理Let's Encrypt颁发的免费HTTPS证书。申请链接:

https://ohttps.com

 

操作步骤 

1. 选择SSL证书提供商

首先,您需要选择一个可靠的SSL证书提供商。目前,有许多提供免费SSL证书的服务商,其中最受欢迎的是Let's Encrypt。Let's Encrypt是一个非营利组织,它提供免费的SSL证书,并且这些证书被广泛认可和接受。

2. 申请免费SSL证书

使用Let's Encrypt申请证书

Let's Encrypt提供了一个名为Certbot的自动化工具,可以帮助您轻松申请和管理SSL证书。

Certbot简介

Certbot是EFF(Electronic Frontier Foundation)开发的一个开源软件工具,旨在自动化获取和更新Let's Encrypt SSL证书的过程。Certbot支持多种操作系统和Web服务器,包括Apache和Nginx,使其成为一个非常灵活和强大的工具。

以下是使用Certbot申请免费SSL证书的步骤:

  1. 安装Certbot: 您需要先在服务器上安装Certbot。根据您的服务器操作系统和Web服务器类型,安装方法会有所不同。例如,如果您使用的是Ubuntu和Apache,可以使用以下命令安装Certbot:

    #如果服务器是apache
    sudo apt update
    sudo apt install certbot python3-certbot-apache
    #在Ubuntu上安装Certbot,服务器是nginx
    sudo apt update
    sudo apt install certbot python3-certbot-nginx
  2. 使用Certbot获取SSL证书

    安装Certbot后,您可以使用以下命令来获取SSL证书:

    使用Apache插件获取证书

    sudo certbot --apache
    

    使用Nginx插件获取证书

    sudo certbot --nginx
    

    在执行上述命令时,Certbot会引导您完成一系列设置步骤,包括输入您的电子邮件地址和同意服务条款。Certbot还会自动配置您的Web服务器以使用新的SSL证书。

  3. 验证证书: 证书获取成功后,Certbot会自动配置您的Web服务器以使用SSL。您可以通过访问您的网站并查看浏览器地址栏中的锁形图标来验证SSL证书是否已正确安装。

3. 使用SSL证书

配置Web服务器

一旦您获得了SSL证书,您需要配置您的Web服务器以使用它。以下是一些常见的Web服务器配置示例:

Apache

如果您使用的是Apache服务器,Certbot通常会自动为您配置SSL。您可以通过编辑Apache配置文件来手动配置SSL,例如:

<VirtualHost *:443>ServerName www.example.comDocumentRoot /var/www/htmlSSLEngine onSSLCertificateFile /etc/letsencrypt/live/www.example.com/fullchain.pemSSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
</VirtualHost>
Nginx

如果您使用的是Nginx服务器,您可以编辑Nginx配置文件来配置SSL,例如:

server {listen 80;server_name www.example.com;return 301 https://$host$request_uri;
}server {listen 443 ssl;server_name www.example.com;ssl_certificate /etc/letsencrypt/live/www.example.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/www.example.com/privkey.pem;root /var/www/html;index index.html index.htm;location / {try_files $uri $uri/ =404;}
}

自动更新证书

Let's Encrypt颁发的SSL证书有效期为90天。为了确保证书始终有效,您需要设置自动更新。Certbot提供了一个简单的命令来实现这一点:

sudo certbot renew --dry-run

您可以将此命令添加到服务器的cron作业中,以确保证书定期更新。例如,您可以编辑cron作业文件:

sudo crontab -e

然后添加以下行: 

0 0 * * * /usr/bin/certbot renew --quiet

这行命令将在每天午夜运行,检查证书是否需要更新,并在需要时自动更新证书。 

更便捷的方式(okhttps)

上述命令行方式需要熟悉使用,如果想要更便捷的方式,可以在okhttps或FreeSSL.cn网站上申请。界面操作更简单直观。

举例:

在FreeSSL.cn申请免费SSL证书的基本步骤如下:

访问FreeSSL网站: 打开浏览器,访问 FreeSSL.cn。

1.开始申请:

输入您想要为其申请SSL证书的域名。

选择您需要的证书类型,比如单域名或多域名证书。

点击“创建”或“创建免费的SSL证书”。

2.提供联系信息:

输入您的邮箱地址,这将用于接收证书相关的信息和通知。

核实申请信息无误后,继续下一步。

3.域名验证(DCV):

选择验证方式,常见的有TXT记录验证、CNAME记录验证或文件上传验证。

TXT记录验证:按照提示,在您的域名DNS设置中添加一条TXT类型的记录,内容由FreeSSL提供。
CNAME记录验证:某些情况下可能需要添加CNAME记录,同样根据提供的值设置。

文件上传:上传FreeSSL提供的特定文件至您网站的根目录。

完成验证设置后,点击验证按钮,等待验证通过。

4.证书下载与安装:

验证成功后,您将能够下载SSL证书。通常会包括证书文件(.crt或.pem)、私钥文件(.key)以及可能的中间证书链(.ca-bundle或单独的文件)。申请完成。

最后根据您的服务器类型(如Apache、Nginx、IIS等),按照相应的教程安装使用这些证书文件。

如何使用证书

如果云服务器使用的有宝塔等便捷web管理工具,则添加使用证书很简单。

如果手动安装,以Nginx为例,使用证书的基本步骤如下:

备份原有配置:在修改Nginx配置文件之前,先做好备份。

编辑Nginx配置文件:

找到您的Nginx站点配置文件,通常位于 /etc/nginx/sites-available/your_domain.conf 或相似路径。修改或添加以下内容:

     server {listen 443 ssl;server_name your_domain.com www.your_domain.com;ssl_certificate /path/to/your_certificate.crt;ssl_certificate_key /path/to/your_private_key.key;# 如果有中间证书,也需要包含ssl_trusted_certificate /path/to/your_intermediate.pem;# 其他SSL设置,如协议版本、密码套件等ssl_protocols TLSv1.2 TLSv1.3;ssl_prefer_server_ciphers on;ssl_ciphers "YOUR_CIPHER_SUITE";}

替换上述路径为实际存放证书和私钥的路径。

测试配置:

运行 sudo nginx -t 测试配置是否正确。

重启Nginx:

如果配置测试通过,运行 sudo systemctl restart nginx 或 sudo service nginx restart 重启Nginx服务。

检查HTTPS:

访问 https://your_domain.com 检查SSL证书是否已正确安装并生效。

请根据实际情况调整上述步骤中的具体路径和配置项。

以下为我的nginx配置(我的域名:yangqq.site):

server
{listen 80;listen 443 ssl http2;server_name yangqq.site;index index.html index.htm default.htm default.html;root /www/wwwroot/imovie/imovie;#SSL-START SSL相关配置#error_page 404/404.html;#HTTP_TO_HTTPS_STARTif ($server_port !~ 443){rewrite ^(/.*)$ https://$host$1 permanent;}#HTTP_TO_HTTPS_ENDssl_certificate    /www/server/panel/vhost/cert/imovie/fullchain.pem;ssl_certificate_key    /www/server/panel/vhost/cert/imovie/privkey.pem;ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;ssl_prefer_server_ciphers on;ssl_session_cache shared:SSL:10m;ssl_session_timeout 10m;add_header Strict-Transport-Security "max-age=31536000";error_page 497  https://$host$request_uri;#SSL-END#ERROR-PAGE-START  错误页相关配置#error_page 404 /404.html;#error_page 502 /502.html;#ERROR-PAGE-END#REWRITE-START 伪静态相关配置include /www/server/panel/vhost/rewrite/go_imovie.conf;#REWRITE-END#禁止访问的文件或目录location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md|package.json|package-lock.json|\.env) {return 404;}#一键申请SSL证书验证目录相关设置location /.well-known/ {root /www/wwwroot/java_node_ssl;}#禁止在证书验证目录放入敏感文件if ( $uri ~ "^/\.well-known/.*\.(php|jsp|py|js|css|lua|ts|go|zip|tar\.gz|rar|7z|sql|bak)$" ) {return 403;}# HTTP反向代理相关配置开始 >>>location ~ /purge(/.*) {proxy_cache_purge cache_one 127.0.0.1$request_uri$is_args$args;}##代理转向指向我的golang后台服务端口8000location / {proxy_pass http://127.0.0.1:8000;proxy_set_header Host 127.0.0.1:$server_port;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header REMOTE-HOST $remote_addr;add_header X-Cache $upstream_cache_status;proxy_set_header X-Host $host:$server_port;proxy_set_header X-Scheme $scheme;proxy_connect_timeout 30s;proxy_read_timeout 86400s;proxy_send_timeout 30s;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";}# HTTP反向代理相关配置结束 <<<access_log  /www/wwwlogs/imovie.log;error_log  /www/wwwlogs/imovie.error.log;
}

其他资源

快速上手 | OHTTPS

免费SSL证书申请,并设置自动续期_免费ssl证书自动续期-CSDN博客

这 6 大免费申请 HTTPS 证书的方法!没人会告诉你-CSDN博客

设置 A 记录 - DNSPod 服务与支持

如何申请免费SSL证书,并部署到Nginx?_let's encrypt免费证书-CSDN博客

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

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

相关文章

StreamSets: 数据采集工具详解

欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;欢迎订阅相关专栏&#xff1a; 欢迎关注微信公众号&#xff1a;野老杂谈 ⭐️ 全网最全IT互联网公司面试宝典&#xff1a;收集整理全网各大IT互联网公司技术、项目、HR面试真题. ⭐️ AIGC时代的创新与未来&a…

Golang语法规范和风格指南(一)——简单指南

1. 前引 一个语言的规范的学习是重要的&#xff0c;直接关系到你的代码是否易于维护和理解&#xff0c;同时学习好对应的语言规范可以在前期学习阶段有效规避该语言语法和未知编程风格的冲突。 这里是 Google 提供的规范&#xff0c;有助于大家在开始学习阶段对 Golang 进行一…

Tensorflow入门实战 T07-Vgg16网络进行咖啡豆识别

本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制 1、 前言 这周学习的主要内容是&#xff0c;使用tensorflow编写代码&#xff0c;使用vgg-16网络模型&#xff0c;完成咖啡豆的识别。 2、完整代码 imp…

【密码学基础】对随机不经意传输(Random Oblivious Transfer)的理解

ROT在offline阶段生成大量的OT对&#xff0c;在online阶段通过one-pad方式高效加密&#xff0c;并且只需要简单的异或运算就能实现OT过程&#xff08;去随机化&#xff09;。 在ROT中&#xff0c;有一个关键点是&#xff1a;需要考虑offline阶段的选择比特和online阶段的选择比…

C++ 视觉开发 六.特征值匹配

以图片识别匹配的案例来分析特征值检测与匹配方法。 目录 一.感知哈希算法(Perceptual Hash Algorithm) 二.特征值检测步骤 1.减小尺寸 2.简化色彩 3.计算像素点均值 4.构造感知哈希位信息 5.构造一维感知哈希值 三.实现程序 1.感知哈希值计算函数 2.计算距离函数 3…

vscode 生成项目目录结构 directory-tree 实用教程

1. 安装插件 directory-tree 有中文介绍&#xff0c;极其友好&#xff01; 2. 用 vscode 打开目标项目 3. 快捷键 Ctrl Shift p&#xff0c;输入 Directory Tree 后回车 会在 README.md 文件的底部生成项目目录&#xff08;若项目中没有 README.md 文件&#xff0c;则会自动创…

用NanoID换掉 UUID,好处是?【送源码】

当我们在分布式环境中存储一些数据的时候&#xff0c;不得不面对的一个选择&#xff0c;就是ID生成器。 使用一个唯一的字符串&#xff0c;来标识一条完整的记录。 这时候&#xff0c;不能使用md5或者sha1来对整个记录做摘要&#xff0c;因为我们后续还要改动这个记录。也不能…

【C++】日期类

鼠鼠实现了一个日期类&#xff0c;用来练习印证前几篇博客介绍的内容&#xff01;&#xff01; 目录 1.日期类的定义 2.得到某年某月的天数 3.检查日期是否合法 4.&#xff08;全缺省&#xff09;构造函数 5.拷贝构造函数 6.析构函数 7.赋值运算符重载 8.>运算符重…

高效PD,稳定传输,LDR6023CQ芯片,打造顶级直播体验

在当今市场&#xff0c;一款备受瞩目的直播神器——无线领夹麦克风&#xff08;MIC&#xff09;&#xff0c;正风靡于网红直播、在线教育、专业采访、高清视频录制及视频会议等多个领域。麦克风&#xff0c;这一昔日课堂上的常见设备&#xff0c;已随着科技的飞速发展而焕然一新…

数字信号处理及MATLAB仿真(2)——离散系统

上回书说到如何来编写一些简单的离散时间序列&#xff0c;今天咱们就来谈谈一些关于常系数差分方程的操作吧。 说到这里咱们对于常系数差分方程可能最关心的就是怎么去求解了。 其中最关键的部分就是filter函数&#xff0c;可以用来计算系统在输入信号为x的输出信号y。大家学过…

ASUS/华硕枪神5 G533Q G733Q系列 原厂win10系统 工厂文件 带F12 ASUS Recovery恢复

华硕工厂文件恢复系统 &#xff0c;安装结束后带隐藏分区&#xff0c;一键恢复&#xff0c;以及机器所有驱动软件。 系统版本&#xff1a;Windows10 原厂系统下载网址&#xff1a;http://www.bioxt.cn 需准备一个20G以上u盘进行恢复 请注意&#xff1a;仅支持以上型号专用…

JAVA--JSON转换工具类

JSON转换工具类 import com.alibaba.fastjson.JSONObject; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackso…

NoSQL 非关系型数据库 Redis 的使用:

redis是基于内存型的NoSQL 非关系型数据库&#xff0c;本内容只针对有基础的小伙伴&#xff0c; 因为楼主不会做更多的解释&#xff0c;而是记录更多的技术接口使用&#xff0c;毕竟楼主不是做教学的&#xff0c;没有教学经验。 关于redis的介绍请自行搜索查阅。 使用redis数据…

h5 video 标签播放经过 java 使用 ws.schild( jave、ffmpeg ) 压缩后的 mp4 视频只有声音无画面的问题排查记录

1. 引入 ws.schild MAVEN 依赖&#xff1a; <dependency><groupId>ws.schild</groupId><artifactId>jave-all-deps</artifactId><version>3.5.0</version></dependency><dependency><groupId>ws.schild</grou…

idm下载慢怎么回事 idm批量导入下载使用方法

IDM (Internet Download Manager)是一款兼容性大&#xff0c;支持多种语言的下载管理软件&#xff0c;它可以自动检测并下载网页上的内容&#xff0c;这正是这一优点&#xff0c;使得它受到了广大用户的喜爱。在日常使用互联网的过程中&#xff0c;快速下载文件对我们来说非常重…

Victor CMS v1.0 SQL 注入漏洞(CVE-2022-26201)

前言 CVE-2022-26201 是 Victor CMS v1.0 中发现的一个 SQL 注入漏洞。该漏洞允许攻击者通过特制的 SQL 查询注入到应用程序中&#xff0c;从而访问或操作数据库中的数据。以下是详细信息&#xff1a; 漏洞描述&#xff1a; 类型&#xff1a;SQL 注入 (SQL Injection)影响版本…

LLM - 神经网络的训练过程

1. 对于回归问题&#xff0c;用损失函数来计算预测值和真实值的差异&#xff0c;一种常用的公式是如下图所示(Mean Square Error)&#xff0c;如果损失函数的值越小说明神经网络学习越准确&#xff0c;所以神经网络训练目标是减小损失函数的值&#xff0c; 2. 对于分类问题&…

并发、多线程和HTTP连接之间有什么关系?

一、并发的概念 并发是系统同时处理多个任务或事件的能力。在计算中&#xff0c;这意味着系统能够在同一时间段内处理多个任务&#xff0c;而不是严格按照顺序一个接一个地执行它们。并发提高了系统的效率和资源利用率&#xff0c;从而更好地满足用户的需求。在现代应用程序中&…

SwiftUI中List的liststyle样式及使用详解添加、移动、删除、自定义滑动

SwiftUI中的List可是个好东西&#xff0c;它用于显示可滚动列表的视图容器&#xff0c;类似于UITableView。在List中可以显示静态或动态的数据&#xff0c;并支持垂直滚动。List是一个数据驱动的视图&#xff0c;当数据发生变化时&#xff0c;列表会自动更新。针对List&#xf…

神领物流项目第一天

文章目录 聚焦快递领域首先第一个是验证码模块流程登录接口权限管家 聚焦快递领域 首先第一个是验证码模块流程 首先生成验证码的流程 可以使用工具类去生成验证码 LineCaptcha lineCaptcha CaptchaUtil.createLineCaptcha(160, 60, 4, 26);// 获取值然后存入redis中 strin…