让网站成为 HTTPS 安全站点

简介: 本文首发于我的个人博客:尾尾部落HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。

本文首发于我的个人博客:尾尾部落

HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司(Netscape)进行,并内置于其浏览器Netscape Navigator中,提供了身份验证与加密通讯方法。现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。

简而言之,就是让你的网站有下图这个小绿标:


img_b86084204458ca86a19955acbb8d8af2.jpe
image

之前用过阿里云的 SSL 免费证书,但是期限只有一年,昨天过期了,看了其他收费的 SSL 证书,还是很贵的,在读小硕实在买不起,只能找找免费的 SSL 证书了。

我们可以从 Let’s Encrypt 获得网站域名的免费的证书。 Certbot是Let’s Encrypt推出的获取证书的客户端,可以让我们免费快速地获取Let’s Encrypt证书。

下面,一步一步教你申请部署ssl证书,并自动续期。

  1. 进入Certbot官网,并选择你的系统和软件。我这边是 NginxUbuntu 16.04 (xenial)

    img_dae9fa50244619d047b778316b92f3e3.jpe
    image

  2. 选择好之后,就会出现具体的部署教程,如下图


    img_5c19e922f57e702eb54d755a0f2c74e4.jpe
    image
安装

先安装python-certbot-nginx

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:certbot/certbot
$ sudo apt-get update
$ sudo apt-get install python-certbot-nginx 
开始

certbot有一个Nginx插件,运行它,按照提示一步一步操作就会自动帮你把证书部署好。
运行如下命令

$ sudo certbot --nginx

选择你要激活 HTTPS 的域名,输入序号即可


img_df9a534fb34c2f79bbeef6656a2e945a.jpe
image

选择直接通过 HTTPS 访问并删除 HTTP 的方式,或者保留 HTTP,如何你确定你网站中所有的链接都是按照HTTPS来配置的,那么你可以像我这样选择 2。


img_e148ea47417daf3daf937a181efc2744.jpe
image

之后,看到Congratulations!就表示部署成功了。
img_17520e8f5059a74bd25c0e1e5b33ab62.jpe
image
自动续期

由于Let的加密证书的有效期是90天,90 天之后证书就会过期,如果要续期就要重复一次上面的步骤,这太麻烦了,Certbot提供了一个自动续期的功能,只需运行如下命令即可:

$ sudo certbot renew --dry-run

至此,SSL证书的部署和自动续期的配置就完成,你的网站就不再是无证驾驶了。

目录
相关文章
|
2月前
|
安全 搜索推荐 前端开发
揭秘 HTTPS 加密协议:保护你的网上安全之道
揭秘 HTTPS 加密协议:保护你的网上安全之道
131 0
|
3月前
IIS上实现网站朝https://www的自动跳转
我们在做网站时时常有网站朝https://www的自动跳转的需求,以便在不输入www.子域名时也可以自动跳转到我们的当前站点,本文将介绍实现网站朝https://www的自动跳转的操作。
66 0
IIS上实现网站朝https://www的自动跳转
|
2月前
|
缓存 安全 应用服务中间件
HTTPS解密:安全通信的魔法之窗
HTTPS解密:安全通信的魔法之窗
41 0
|
3月前
|
API 数据安全/隐私保护
如何使用Postman 测试Https 网站?
如何使用Postman 测试Https 网站?
|
3月前
|
JSON 安全 网络安全
超详细的用户认证、权限、安全原理详解(认证、权限、JWT、RFC 7235、HTTPS、HSTS、PC端、服务端、移动端、第三方认证等等)
超详细的用户认证、权限、安全原理详解(认证、权限、JWT、RFC 7235、HTTPS、HSTS、PC端、服务端、移动端、第三方认证等等)
348 0
|
3月前
|
安全 JavaScript API
深入理解 HTTP 和 HTTPS:提升你的网站安全性(下)
深入理解 HTTP 和 HTTPS:提升你的网站安全性(下)
深入理解 HTTP 和 HTTPS:提升你的网站安全性(下)
|
3月前
|
缓存 安全 网络安全
深入理解 HTTP 和 HTTPS:提升你的网站安全性(上)
深入理解 HTTP 和 HTTPS:提升你的网站安全性(上)
深入理解 HTTP 和 HTTPS:提升你的网站安全性(上)
|
3月前
|
算法 安全 网络安全
HTTPS加密原理解析:保障通信安全的密码学算法
HTTPS加密原理解析:保障通信安全的密码学算法
54 0
|
3月前
|
缓存 前端开发 应用服务中间件
https证书已经部署到宝塔,但访问网站还显示不生效问题解决
https证书已经部署到宝塔,但访问网站还显示不生效问题解决
67 0
|
3月前
|
安全 网络协议 网络安全
HTTPS 存在哪些安全问题,有什么应对方案
HTTPS 是 HTTP 的安全版本,通过使用 SSL/TLS 协议对通信内容进行加密,提供了以下几个关键的安全特性:数据加密、身份认证和完整性保护。尽管 HTTPS 在很大程度上提高了安全性和数据传输的安全性,但仍然存在一些潜在的安全问题。以下是一些可能的问题以及相应的应对方案