是时候支持HTTPS了:免费SSL证书letsencrypt配置教程

标签: Web HTTPS | 发表时间:2016-11-26 08:20 | 作者:Tim
分享到:
出处:https://timyang.net

今天抽空将 blog 增加了 HTTPS 支持,并停止了原来的 HTTP 服务。

由于证书仅网站域名需要,因此使用了免费的 Let’s Encrypt 证书服务。

根据维基百科的说明,Let’s Encrypt 是一个于2015年三季度推出的数字证书认证机构,将通过旨在消除当前手动创建和安装证书的复杂过程的自动化流程,为安全网站提供免费的SSL/TLS证书。Let’s Encrypt 是由互联网安全研究小组(ISRG,一个公益组织)提供的服务。主要赞助商包括电子前哨基金会,Mozilla 基金会,Akamai 以及思科。

2015年12月3日,该服务进入公测阶段,正式面向公众。

2016年4月12日,该项目正式离开Beta阶段。

到2016年9月9日,Let’s Encrypt 已经发放 1000 万张证书。因此对于大部分中小型网站来说,是一个值得考虑的选择。

letsencrypt

HTTPS 启用及配置的主要步骤如下,假设你已经有一个正常运行的 HTTP 网站。

1. 打开 https://certbot.eff.org/ 选择对应操作系统与 Web 服务器,选完后出现响应的平台说明。由于我的系统运行在 nginx 及 Ubuntu,选完之后出现的说明地址是 https://certbot.eff.org/#ubuntuxenial-nginx

2. 执行命令,并根据需要修改相应域名参数。

$ sudo apt-get install letsencrypt
$ letsencrypt certonly --webroot -w /var/www/timyang.net -d timyang.net -d www.timyang.net

3. 修改 nginx
将 80 端口相关配置改成 443 端口,并增加相关配置

# listen       80;
listen 443 ssl;
server_name timyang.net www.timyang.net;

ssl_certificate /etc/letsencrypt/live/timyang.net/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/timyang.net/privkey.pem;

再增加 80 端口自动跳转

server {
    listen 80;
    server_name timyang.net www.timyang.net;
    return 301 https://$host$request_uri;
}

4. 重启 nginx,并用 chrome 访问,如果 URL 地址之前出现锁标记,则说明设置成功。
如果页面中还包含有嵌入的 HTTP 元素,chrome 会仍然显示 i 标记,通过点击 i 之后的元素说明逐个修复即可。

timyang-https

另外注意 Let’s Encrypt 每次只有 90 天有效期,但可以通过脚本进行更新

测试运行

$ sudo letsencrypt renew --dry-run --agree-tos

如果运行成功,建议将正式更新脚本加到 cron 脚本中,一劳永逸。

$ sudo letsencrypt renew

虽然 Let’s Encrypt 是一个免费的服务,但对 letsencrypt 使用感到满意的朋友,还可以去他们网站进行赞助。

Similar Posts:

相关 [https 免费 ssl] 推荐:

全球可信并且唯一免费的HTTPS(SSL)证书颁发机构:StartSSL

- - 行业应用 - ITeye博客
HTTPS(全称:Hypertext Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版. 即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容请看SSL.   它是一个URI scheme(抽象标识符体系),句法类同http:体系.

是时候支持HTTPS了:免费SSL证书letsencrypt配置教程

- - 后端技术 by Tim Yang
今天抽空将 blog 增加了 HTTPS 支持,并停止了原来的 HTTP 服务. 由于证书仅网站域名需要,因此使用了免费的 Let’s Encrypt 证书服务. 根据维基百科的说明,Let’s Encrypt 是一个于2015年三季度推出的数字证书认证机构,将通过旨在消除当前手动创建和安装证书的复杂过程的自动化流程,为安全网站提供免费的SSL/TLS证书.

維基百科全面支援 HTTPS (SSL)

- yanwei - 牛博山寨 编辑推荐
維基百科在官方的 Blog 上宣佈,所有的服務都支援 HTTPS (SSL):「Native HTTPS support enabled for all Wikimedia Foundation wikis」,也就是說,像是「https://zh.wikipedia.org/wiki/Wikipedia:首页」這樣的網址都支援了.

HTTPS、SSL与数字证书介绍

- - 忘我的追寻
在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了. 本文追本溯源围绕这个模式谈一谈. HTTPS:在HTTP(超文本传输协议)基础上提出的一种安全的HTTP协议,因此可以称为安全的超文本传输协议. HTTP协议直接放置在TCP协议之上,而HTTPS提出在HTTP和TCP中间加上一层加密层.

聊聊HTTPS和SSL/TLS协议

- - 外刊IT评论
要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS、SSL、TLS)的含义. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”). 大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别). 考虑到很多技术菜鸟可能不了解上述背景,俺先用最简短的文字描述一下.

Axis2-1.6.2 HTTPS/SSL非常慢,解决思路

- - 编程语言 - ITeye博客
最近有个项目需要由axis1.4升级到axis2-1.6.2,原因是由于axis1版本无法控制连接超时时间,只支持设置readtimeout.故需要升级. 服务器是Windows 2008 R2 + IIS+ C#,SSL双向认证 . 客户端是Windows 7 + Axis2-1.6.2. 项目是基于HTTPS访问Web service,axis1连接正常,速度正常,升级到axis2后.

Web 主机管理(SSL加密的HTTPS) -- Webmin

- 李帅 - Wow! Ubuntu
Webmi n是目前功能最强大的基于Web的UNIX系统管理工具. 管理员可通过浏览器访问 Webmin 的各种管理功能并完成相应的管理动作. Webmin 让你能够在远程使用支持HTTPS(SSL 上的 HTTP)协议的 Web 浏览器通过Web界面管理你的主机. 如果公司由VPN的用户,最适合不过了,即使外地出差,也能够访问在公司的linux主机.

免费openssl 生成ssl证书[ssl证书生成]

- - 企业架构 - ITeye博客
[免费openssl生成ssl证书]. 1 概述 ............................................................................................................1. 2 什么是x509证书链 .....................................................................................1.

扫盲 HTTPS 和 SSL/TLS 协议[1]:背景知识、协议的需求、设计的难点

- - 细节的力量
★HTTPS 协议的需求是啥. ★设计 HTTPS 协议的主要难点.   要说清楚 HTTPS 协议的实现原理,至少需要如下几个背景知识. 大致了解几个基本术语(HTTPS、SSL、TLS)的含义. 大致了解 HTTP 和 TCP 的关系(尤其是“短连接”VS“长连接”). 大致了解加密算法的概念(尤其是“对称加密与非对称加密”的区别).