https

使用Let's Encrypt轻松实现站点https

2016-07-11  本文已影响1054人  明月的味道

大家知道https的站点,都是需要CA机构来颁发证书的。如果不是CA机构颁发的证书,在使用浏览器浏览的时候会报证书错误。

但是https的证书一般来说是要付费购买的,今天我们使用Let's Encrypt免费实现站点的https功能。文章以我自己的网站为例:www.athrob.com (OS:CentOS 6,使用Nginx)

关于Let's Encrypt,大家自行百度或Google。

letsencrypt官方主页:https://letsencrypt.org/
关于letsencrypt的原理请参考:https://letsencrypt.org/how-it-works/


0x00    如何使用

简单的五条命令即可:
[1] sudo yum install epel-release
[2] wget https://dl.eff.org/certbot-auto
[3] chmod a+x certbot-auto
[4] ./certbot-auto
[5] ./certbot-auto certonly --standalone --email admin@example.com -d example.com -d www.example.com

备注:
1.你需要对webserver有完全的访问权限
2.能够正常访问该站点

3.有效期一般是三个月,到期需要重新renew一下

执行完第5条命令,看到如下信息,说明证书已经颁发完成:

Certificate Complete

证书公钥路径:/etc/letsencrypt/live/athrob.com/fullchain.pem

证书私钥路径:/etc/letsencrypt/live/athrob.com/privkey.pem

其中athrob.com这个文件夹为站点名称,不同的站点文件夹名称是不一样的。


0x01    Nginx配置

#监听80端口,实现80端口到443端口的流量跳转

server {
  listen    80;
  server_name    athrob.com;
  return   301 https://$server_name$request_uri;
}

#nginx配置https信息,监听443端口

server {
    listen       443 ssl;
    server_name  athrob.com;

#  ssl                  on;
    ssl_certificate      /etc/letsencrypt/live/athrob.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/athrob.com/privkey.pem;
    ssl_session_timeout  5m;

}

备注:使用Apache的请自行查资料配置


0x02    结果

最终的结果,如下图:

https-website


0x03    其他

如果是使用其他OS或者Apache的,可以参考官网:https://certbot.eff.org/

不足之处,请批评指正。

如有问题,请私信联系。

谢谢!

上一篇下一篇

猜你喜欢

热点阅读