当前位置: 首页 > news >正文

配置免费的SSL

1 引言

本文介绍了如何在 Linux 环境下使用免费的 Let’s Encrypt 为你的网站配置 SSL 证书的方法,以及如何在 Nginx 服务器中启用 SSL。对于需要在自己的网站上启用 HTTPS 的用户来说非常实用。

2 SSL 简介

SSL,全称为 Secure Sockets Layer,是一种网络安全协议,主要用于在互联网上对数据进行加密传输。SSL 通过使用加密算法对数据进行加密,确保数据在传输过程中的安全。同时,SSL 还提供了身份验证机制,可以验证服务器的身份以防止中间人攻击。

当你在浏览器的地址栏看到 http:// 变成 https://,或者地址栏前面出现一个锁的图标时,就表示你正在使用 SSL。“s” 即安全 “secure”。HTTPS 协议实际上就是在 HTTP 上加了一层 SSL/TLS 协议,使得数据传输更加安全。

SSL 证书是一种数字证书,它可以验证网站的身份,并提供 SSL 加密。当一个网站使用了 SSL 证书后,用户在访问这个网站时,浏览器会首先获取这个网站的 SSL 证书,然后验证这个证书的有效性。如果证书有效,浏览器就会生成一个随机的密钥,然后用证书中的公钥加密这个密钥,并发送给服务器。服务器收到密钥后,用自己的私钥解密,然后用这个密钥对数据进行加密,发送给浏览器。浏览器收到数据后,用同样的密钥解密,得到原始的数据。这样,即使数据在传输过程中被截获,攻击者也无法解密数据,从而保证了数据的安全。

在本文中,我们将使用 Let’s Encrypt 提供的免费 SSL 证书,用 Certbot 工具来为我们的网站配置 SSL。

3 设置方法

3.1 安装
$ sudo apt-get install certbot
$ sudo certbot certonly --standalone -d 你的域名

(交互过程中需要设置邮箱地址)

此后将产生:

Certificate is saved at: /etc/letsencrypt/live/你的域名/fullchain.pem
Key is saved at:         /etc/letsencrypt/live/你的域名/privkey.pem
3.2 配置 Nginx

编辑 /etc/nginx/nginx.conf

在其中提示 SSL 部分加入

ssl_certificate /etc/letsencrypt/live/你的域名/fullchain.pem; 
ssl_certificate_key /etc/letsencrypt/live/你的域名/privkey.pem;

打开 443 端口

还是把 nginx 中,把 80 端口相关内容复制一份,添加到设置中,并修改端口为 443:

        server {listen 443 ssl;…}server {listen 80;…

Let’s Encrypt 的证书有效期为 90 天,可以设置一个 cron 任务来自动续期证书。

$ echo "0 12 * * * root certbot renew --quiet" | sudo tee -a /etc/crontab > /dev/null

4 注意事项

当使用 https 访问时,需要输入域名,而不能输入 ip,否则会报错:域名和 SSL 认证不匹配。

http://www.lryc.cn/news/284784.html

相关文章:

  • (2)(2.1) Andruav Android Cellular(一)
  • [GN] Vue3.2 快速上手 ---- 核心语法(终章)_3
  • 在k8s上部署ClickHouse
  • 快速入门:使用 Gemini Embeddings 和 Elasticsearch 进行向量搜索
  • 【网络安全】-入门版
  • Elasticsearch各种高级文档操作3
  • 【算法题】66. 加一
  • 查看服务器资源使用情况
  • 锐浪报表 Grid++Report 明细表格标题重复打印
  • 编程笔记 html5cssjs 048 CSS链接
  • Spring DI
  • CorelDRAW Graphics Suite2024专业图形设计软件Mac/Windows版
  • 如何本地部署虚拟数字克隆人 SadTalker
  • 电容充电时间的计算
  • MicroPython核心(1):源码获取、编译构建
  • pyspark之Structured Streaming file文件案例1
  • 虚幻UE 特效-Niagara特效实战-雨天
  • k8s 集群搭建的一些坑
  • SpringMVC传递数据给前台
  • 国标GB28181安防视频监控EasyCVR级联后上级平台视频加载慢的原因排查
  • React16源码: React中的HostComponent HostText的源码实现
  • Unity3D代码混淆方案详解
  • 安科瑞应急疏散照明系统在歌舞娱乐等场所的应用
  • Go语言协程使用
  • JAVA如何创建对象
  • 《WebKit 技术内幕》之五(2): HTML解释器和DOM 模型
  • Spring Boot多环境配置
  • 常用的目标跟踪有哪些
  • python222网站实战(SpringBoot+SpringSecurity+MybatisPlus+thymeleaf+layui)-帖子详情页实现
  • 11、Kafka ------ Kafka 核心API 及 生产者API 讲解