从HTTP切换到HTTPS的完整指南

现在HTTPS是每个网站的必备条件:用户在提供详细信息时希望他们的信息是安全的; Chrome和Firefox将那些有提交表单页面但是不是HTTPS的网站明确标记为不安全的; 这是一个SEO排名因素 ; 一般而言,这对用户隐私有严重的影响。其实,现在有很多方法可以让你免费获取HTTPS证书,所以切换到HTTPS只是一个你愿不愿意的问题。

 

设置HTTPS对于没有经验的用户可能有点吓人 - 它与需要许多步骤,也需要具体的加密和服务器配置知识,听起来很复杂的样子。。。。。

 

在本指南中,我将解释各个组件和步骤,并将清楚地介绍设置的各个阶段。我将尽力将本指南写的简单易懂,特别是如果你的托管服务提供商也提供HTTPS证书 - 你可以快速方便地从控制面板执行所有操作。

 

我已经在cPanel,Apache HTTP服务器的管理员,Linux和Unix上的nginx以及Windows上的Internet Information Server中包含了共享托管计划的所有者的详细说明。

 

让我们荡起双桨,从基础开始吧~~~~

 

HTTP Vs. HTTPS Vs. HTTP / 2 Vs. SSL对 TLS:什么是什么?

 

很多首字母缩略词用于描述客户端和服务器之间的通信过程。这些往往让不熟悉其中原理的人看着很晕。。。。。

 

超文本传输协议(HTTP)是让客户端和服务器能够进行通信的基本通信协议。它涵盖了请求和响应,会话,缓存,身份验证等等。协调工作以及超文本标记语言(HTML)的工作始于1 9 8 9年,由Tim Berners-Lee爵士及其在CERN的团队开发。协议的第一个官方版本(HTTP 1.0)于1996年发布,不久之后是1997年发布的目前广泛采用的版本(HTTP 1.1)。

 

该协议在浏览器和服务器之间以明文形式传输信息,允许信息通过的网络查看传输的信息。这是一个安全隐患,因此引入了HTTP Secure(HTTPS),允许客户端和服务器首先建立一个加密的通信通道,然后通过它传递明文HTTP消息,有效地保护他们免受。

 

使用传输层安全(TLS)协议(以前称为安全套接层(SSL))创建加密通道。术语SSL和TLS通常可互换使用,SSL 3.0被TLS 1.0替代。SSL是Netscape开发的协议,而TLS是IETF标准。在撰写本文时,所有版本的SSL(1.0,2.0,3.0)由于各种安全问题而被淘汰,并将在当前浏览器中产生警告,并且TLS版本(1.0,1.1,1.2)正在使用,目前有1.3个草稿。

 

所以,在1996年和1997年的某个时候,我们得到了目前稳定版本的互联网(HTTP 1.1,有或没有SSL和TLS),这个版本仍然支持着大多数网站。以前,HTTP用于非敏感流量(例如阅读新闻),HTTPS用于敏感流量(例如身份验证和电子商务); 然而,随着隐私越来越受到关注,网络浏览器(如Google Chrome)会将HTTP网站标记为“不是私有”,并将来会引入HTTP警告。

 

越来越多的网站正在采用的HTTP协议的升级版本--HTTP / 2的增加了新功能(压缩,复用,优先级排序),以减少延迟并提高性能和安全性。

 

在HTTP版本1.1中,安全连接是可选的(你可能拥有彼此独立的HTTP和/或HTTPS),而在HTTP / 2中它实际上是必需的 - 即使该标准定义了HTTP / 2(带或不带TLS),大多数浏览器厂商表示,他们只会通过TLS实现对HTTP / 2的支持。

 

HTTPS提供什么?

 

为什么首先要用HTTPS?它主要有三个原因:

 

保密性

保护双方在互联网等公共媒体之间的沟通。例如,没有HTTPS,使用接入点的用户在线购物时,运行Wi-Fi接入点的人可能会看到信用卡等私人信息。

 

诚信

这就确保信息完整而不变地到达目的地。例如,我们的Wi-Fi朋友可以向我们的网站添加额外的广告,降低图像的质量以节省带宽或更改我们阅读的文章的内容。HTTPS确保网站无法修改。

 

认证

这确保网站的一致性。例如,运行Wi-Fi接入点的同一个人可以将浏览器发送到假网站。HTTPS确保一个说它是example.com的网站就是example.com。一些证书甚至检查该网站后面的法定身份,所以你可以放心yourbank.com是YourBank,Inc的网站.

 

 

密码学

 

保密性,完整性和身份验证不是HTTPS特有的:它们是密码学的核心概念。我们再来看一下他们。

 

保密

 

保密性是隐私,即保护信息免受未经授权的第三方的阅读。该过程通常涉及将明文信息的可读(即可听和可见)形式转化为密文,不可读的版本。这个过程称为加密。将不可读的密文转回可读明文的相反过程称为解密。有许多方法 - 密码函数(或算法) - 来加密和解密信息。

 

为了让双方能够沟通,他们应该就两件事情达成一致:

  • 他们将在他们的沟通中使用哪种算法(密码函数)
  • 将在方法中使用哪些参数,密码或规则(即秘密)。

 

有两种主要的加密方式:

  • 对称

       双方共享一个共同的秘密密钥

  • 不对称

       一方有一对秘密和公钥,公钥基础设施(PKI)的基础。

 

对称类的方法依赖于具有共享密钥的双方,发送者用于加密信息,而接收者又使用相同的方法和密钥进行解密(见下图)。这些方法的问题是双方如何相互协商(即交换)秘密但是不需要双方在物理上连接,双方需要有一个安全的沟通渠道。


 

非对称方法来解决这类问题-基于公钥和私钥的。明文使用其中一个密钥进行加密,只能使用其他互补密钥进行解密。

 

那么它是如何工作的呢?我们假设我们有两方愿意相互交流 - 爱丽丝和鲍勃(这些都一些教程和安全手册里面的虚构人物的名字,所以我们也将遵守这里的传统) 。他们都有一对钥匙:私钥和公钥。私钥只对其各自的所有者是已知的; 任何人都可以使用公钥。

 

如果爱丽丝想向鲍勃发消息,她将获得他的公开密钥,加密明文并向他发送密文。然后他会使用自己的私钥来解密它。

 

如果Bob想向Alice发送回复,他将获取公钥,加密明文并发送密文。然后,Alice将使用自己的私钥对其进行解密。

更多请点击这里:http://igeekbar.com/igeekbar/post/229.htm

 

何时使用对称,何时使用非对称加密?非对称加密用于交换客户端和服务器之间的秘密。在现实生活中,我们通常不需要双向非对称通信 - 如果其中一方(我们简称为服务器,为简单起见)就有一套密钥,所以它可以接收一个加密消息。它真正保护信息的安全性只有一个方向 - 从客户端到服务器,因为用公钥加密的信息只能使用私钥解密; 因此,只有服务器可以解密它。另一个方向不受保护 - 用服务器的私钥加密的信息可以由任何人的公钥解密。

猜你喜欢

转载自gbin1.iteye.com/blog/2384797