使用Let’s Encrypt轻松配置https站点
使用Let’s Encrypt轻松配置https站点
蓝猫163 发表于2年前
使用Let’s Encrypt轻松配置https站点
  • 发表于 2年前
  • 阅读 35
  • 收藏 1
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

使用Let’s Encrypt轻松配置https站点

https不仅能提高网站安全,更是被搜索引擎纳入排名的因素之一。

2015年10月份,微博上偶然看到Let's Encrypt 推出了beta版,作为一个曾经被https虐出血的码农来说,这无疑是一个重磅消息。并且在全站Https的大趋势下,Let's Encrypt 脱颖而出,无疑会对传统SSL证书提供商造成不小的打击,并将Https的应用和推广上升到一个空前火热的阶段。

Let’s Encrypt是由ISRG(Internet Security Research Group)提供的免费SSL项目,现由Linux基金会托管,他的来头很大,由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起,现在已经得到Google、Facebook等大公司的支持和赞助,目的就是向网站免费签发和管理证书,并且通过其自身的自动化过程,消除了购买、安装证书的复杂性,只需几行命令,就可以完成证书的生成并投入使用,甚至十几分钟就可以让自己的http站点华丽转变成Https站点。

Let's Encrypt背后的力量: 它是在mozilla, akamai, cisco, chrome,facebook等很多互联网以及传统it公司赞助下开发完成的,技术实力可见一斑。

下面从实战的角度,为大家详细地介绍Let's Encrypt的使用过程

  1. 安装Let's Encrypt

第一步:执行以下命令

 git clone https://github.com/letsencrypt/letsencrypt
 cd letsencrypt
 ./letsencrypt-auto certonly --email xxx@xx.com 

1、如果提示git命令无效的话,需要安装一下GIt,直接执行命令 yum install git-all 完成安装,

2、如果是RedHat/CentOs6系统的话,需要提前安装EPEL(Extra Packages for Enterprise Linux),执行命令 yum install epel-release

3、 整个过程需要主机连接外网,否则会导致报以下错误
复制代码

IMPORTANT NOTES:     
 - The following errors were reported by the server:         
   Domain: on-img.com        
   Type:   urn:acme:error:connection
   Detail: Failed to connect to host for DVSNI challenge         

   Domain: www.on-img.com        
   Type:   urn:acme:error:connection        
   Detail: Failed to connect to host for DVSNI challenge

复制代码
4、Let's encrypt 是由python编写的开源项目,基于python2.7环境,如果系统安装的是python2.6,会提示升级
也可以执行以下命令(官方不推荐)

./letsencrypt-auto certonly --email xxx@xx.com --debug

第二步:接下来提示输入域名 多个用空格隔开

出现以下提示说明证书生成成功

2、使用证书进入/etc/letsencrypt/live/on-img.com/下,on-img.com是第二部中填写的域名,到时候换成自己的域名即可。
  cert.pem 服务器证书
  privkey.pem 是证书私钥
  如果是云服务器+负载均衡的话,直接添加以上证书,绑定负载均衡,直接访问https:// xxx.com
  如果是自己配置的Nginx的,需要以下配置

server
{
listen 443 ssl;   /
server_name xxx.com;     //这里是你的域名
index index.html index.htm index.php default.html default.htm default.php;
root /opt/wwwroot/        //网站目录
ssl_certificate /etc/letsencrypt/live/xxx.com/fullchain.pem;    //前面生成的证书,改一下里面的域名就行,不建议更换路径
ssl_certificate_key /etc/letsencrypt/live/xxx.com/privkey.pem;   //前面生成的密钥,改一下里面的域名就行,不建议更换路径 
........
}

最后 别忘了重载Nginx
执行 /etc/init.d/nginx reload 使其生效。

以上配置无误,就直接可以使用https,我的测试环境是 虚拟主机 + 负载均衡,整体搭建到上线使用,不到二十分钟,各大浏览器测试均正常。

最后一点是证书的有效期问题,官方默认的有效期是3个月,请确保到期之前更新一下证书。

实例验证,使用chrome打开java教程,点击地址栏左侧的图标可以看到证书的签名信息由let's encrypt提供。

你还在等什么呢?

  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 10
博文 14
码字总数 20906
作品 1
×
蓝猫163
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: