Easy HTTPs 安全证书, SSL安全证书, Let's Encrypt, Let's Encrypt怎么使用, 如何从Let's Encrypt获得证书 Easy HTTPs 安全证书, SSL安全证书, Let's Encrypt, Let's Encrypt怎么使用, 如何从Let's Encrypt获得证书 images/s3eshare.jpg

无论是企业网站还是个人博客,我们都不想在用户浏览是出现莫名其妙的广告,这时候HTTPS/SSL的作用就体现出来了。

本文主要介绍免费的Let's encrypt签发HTTPS/SSL证书的使用,也就是免费免费的Let's Encrypt SSL证书的使用教程。

Let's encrypt简介

 Let’s Encrypt是由ISRG(Internet Security Research Group)提供的免费SSL项目。Let’s Encrypt现由Linux基金会托管,他的来头很大,由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起,现在已经得到Google、Facebook等大公司的支持和赞助,目的就是向网站免费签发和管理证书,让自己的http站点华丽转变成Https站点。

获得Let's encrypt证书

用户可自行到Let's encrypt注册、认证、配置、下载、安装,需要有一定的经验和英文阅读能力,同时需要做大量的配置工作。

也可以通过小软件来快速申请Let's encrypt证书。

Easy HTTPs软件,是上海哲涛科技研发的快速申请Let's encrypt安全证书的软件。通过Easy HTTPs软件管理Let's Encrypt证书,完全可视化引导式操作、所有操作步骤全中文提示和指引。同时完全基于B/S架构,开发人员仅需要输入域名和验证域名即可完成SSL安全证书签发、更新和下载,所签证书为受信任的证书,为用户网站数据提供安全保护。

https://easy.zhetao.com/ztcam.oms?omsv=wiki

接下来介绍申请Let's encrypt证书的过程:

 

  1. 安装Certbot客户端
yum install certbot
  1. 获取证书
$ certbot certonly --webroot -w /var/www/example -d example.com -d www.example.com

这个命令会为 http://example.com 和 http://www.example.com 这两个域名生成一个证书,使用 --webroot 模式会在 /var/www/example 中创建 .well-known 文件夹,这个文件夹里面包含了一些验证文件,certbot 会通过访问 http://example.com/.well-known/acme-challenge 来验证你的域名是否绑定的这个服务器。这个命令在大多数情况下都可以满足需求,

但是有些时候我们的一些服务并没有根目录,例如一些微服务,这时候使用 --webroot 就走不通了。certbot 还有另外一种模式 --standalone , 这种模式不需要指定网站根目录,他会自动启用服务器的443端口,来验证域名的归属。我们有其他服务(例如nginx)占用了443端口,就必须先停止这些服务,在证书生成完毕后,再启用。

certbot certonly --standalone -d example.com -d www.example.com

证书生成完毕后,我们可以在 /etc/letsencrypt/live/ 目录下看到对应域名的文件夹,里面存放了指向证书的一些快捷方式。

这时候我们的第一生成证书已经完成了,接下来就是配置我们的web服务器,启用HTTPS。

Nginx 配置启用 HTTPS

博客系统使用的是Nginx 服务器来转发请求,这里贴一下我的Nginx配置。

    server {
        server_name diamondfsd.com www.diamondfsd.com;
        listen 443;
        ssl on;
        ssl_certificate /etc/letsencrypt/live/diamondfsd.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/diamondfsd.com/privkey.pem;

        location / {
           proxy_pass http://127.0.0.1:3999;
           proxy_http_version 1.1;
           proxy_set_header X_FORWARDED_PROTO https;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_set_header Host $host;
        }
    }
    server {
        server_name api.diamondfsd.com;
        listen 443;
        ssl on;
        ssl_certificate /etc/letsencrypt/live/api.diamondfsd.com/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/api.diamondfsd.com/privkey.pem;

        location / {
           proxy_pass http://127.0.0.1:4999;
           proxy_http_version 1.1;
           proxy_set_header X_FORWARDED_PROTO https;
           proxy_set_header X-Real-IP $remote_addr;
           proxy_set_header X-Forwarded-For $remote_addr;
           proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
           proxy_set_header Host $host;

        }
    }

主要是监听 443 端口,启用 SSL,并配置 SSL 的证书路径(公钥,私钥的路径)。
通过这些配置 我们就已经成功的完成了 Https 的启用。

邮箱帐号:
发验证码
全名:
密码:
重复密码:
《阅读 Easy HTTPs 服务条款》《阅读 Let's Encrypt 服务条款》
提 交 注 册
X
邮箱帐号:
密码:
登 录
还没有帐号,点击注册
忘记密码?点击此找回!
X
帐号:
提交找回密码
X
X
确 定
X