|
|
|
|
移动端

免费享用Let's Encrypt来保护你的网站

早在过去,借助证书机构安装基本的HTTPS每年要花数百美元,而且这个过程很困难,安装起来容易出错。现在我们有了Let's Encrypt可以免费享用,而且整个过程只需要几分钟。

作者:布加迪编译来源:51CTO.com|2018-04-08 09:00

开发者盛宴来袭!7月28日51CTO首届开发者大赛决赛带来技术创新分享

【51CTO.com快译】早在过去,借助证书机构安装基本的HTTPS每年要花数百美元,而且这个过程很困难,安装起来容易出错。现在我们有了Let's Encrypt可以免费享用,而且整个过程只需要几分钟。

免费享用Let\

为什么要加密?

为什么要加密你的网站?因为未加密的HTTP会话面临多种滥用现象:

  • 窃听你的用户
  • 获取用户登录信息
  • 注入广告和“重要”信息
  • 注入间谍软件
  • 注入SEO垃圾邮件和链接
  • 注入加密货币矿工

如何挫败不法分子的邪恶欲望?最有效的防御机制是HTTPS。不妨先看一下HTTPS的工作原理。

信任链

你可以在网站与允许访问的所有人之间建立非对称加密。这是一种很有效的保护:GPG和OpenSSH是用于非对称加密的常见工具。这些工具依赖公钥/私钥密钥对。你可以随意共享公钥,而私钥必须受到保护,永远不得共享。公钥负责加密,私钥负责解密。

然而,这个涉及多步骤的过程却无法扩展以支持随机的上网冲浪,因为它需要在建立会话之前交换公钥,你还得生成和管理密钥对。HTTPS会话使公钥分配实现了自动化,购物和银行等敏感网站由第三方证书机构(CA)来验证,比如Comodo、Verisign或Thawte。

你在访问HTTPS网站时,它会向你的Web浏览器提供数字证书。该证书验证你的会话已经过强加密,并提供网站的信息,比如组织名称、颁发证书的组织以及证书机构的名称。你只要点击Web浏览器地址栏中的小挂锁,即可查看所有这些信息和数字证书(见图1)。

击Web浏览器地址栏中的挂锁,即可查看相关信息

图1:点击Web浏览器地址栏中的挂锁,即可查看相关信息

各大Web浏览器(包括Opera、Firefox、Chromium和Chrome)都依赖证书机构来验证网站数字证书的真实性。小挂锁让安全状态一目了然:绿色代表SSL强加密和已验证的身份。Web浏览器还会警告你防范恶意网站和SSL证书配置不正确的网站,并将这些自签名证书视作不可信的证书。

那么Web浏览器怎么知道该信任谁呢?浏览器包含一个根存储区(root store),这其实是一批根证书,存储在/usr/share/ca-certificates/mozilla/中。网站证书针对根存储区加以验证。你的根存储区由软件包管理器来维护,就像Linux系统上的任何其他软件那样。在Ubuntu上,它们由ca-certificates软件包提供。根存储区本身由Mozilla for Linux来维护。

正如你所见,需要一套复杂的基础设施来完成所有这些工作。如果你执行任何敏感的在线交易(例如购物或银行业务),其实是信任大批未知的人来保护自己。

无处不在的加密

Let's Encrypt是一家全球证书机构,类似商业证书机构。Let's Encrypt由非营利性互联网安全研究组织(ISRG)创建,目的是为了更容易保护网站。我认为用它来保护购物和银行网站不够安全,但适用于保护没有金融交易的博客、新闻及信息网站。

至少有三种方法可使用Let's Encrypt。最好的方法是使用电子边界基金会(EFF)维护的Certbot客户软件(https://certbot.eff.org/)。这需要通过shell访问你的网站。

如果你在共享主机上,那么可能没有shell访问权限。在这种情况下,最容易的方法是使用支持Let's Encrypt的主机。

如果你的主机不支持Let's Encrypt,但支持自定义证书,那么你可以使用Certbot手动创建并上传证书。这是个复杂的过程,所以你需要吃透说明文档。

安装好了证书后,可使用SSL Server Test(https://www.ssllabs.com/ssltest/)来测试你的网站。

Let's Encrypt数字证书有效期90天。你安装Certbot时,它还会安装计划任务(cron job),以便自动续期,它还包含一个命令来测试这种自动续期是否有效。你可以使用现有的私钥或证书签名请求(CSR),它支持通配符证书。

局限性

Let's Encrypt存在一些限制:它只执行域名验证,即它向控制域名的任何人颁发证书。这是基本的SSL。它不支持组织验证(OV)或扩展验证(EV),原因是无法使身份验证实现自动化。我不会信任使用Let's Encrypt的银行或购物网站,它们应该花大量的钱来购置包括身份验证的整套软件包。

作为由非营利组织维护的一项免费服务,它没有商业支持,只有说明文档和社区支持,不过两者都很好。

互联网充满了邪恶。一切都应该加密。不妨用Let's Encrypt(https://letsencrypt.org/)来保护访问你网站的那些人。

原文标题:Protect Your Websites with Let's Encrypt,作者:Carla Schroder

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

【编辑推荐】

  1. 警惕来自这七大加密货币挖掘工具和僵尸网络的威胁
  2. 如何使用Hashcat暴力破解Linux磁盘加密
  3. 2018年头号网络威胁非法加密货币挖矿,竟让用户察觉不到它的存在
  4. 黑客破解密码的几种方式
  5. 不想免费当“挖矿机”,那你要会针对加密货币挖矿攻击的这七种防护方法
【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

网络工程师教程(第2版)

本书是全国计算机技术与软件专业技术资格(水平)考试的指定用书。按照新的网络工程师考试大纲的规定,本书包含了数据通信基础知识、网络体...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊