文档章节

Let’s Encrypt免费搭建HTTPS网站

问题终结者
 问题终结者
发布于 2017/09/05 15:33
字数 708
阅读 9
收藏 0
点赞 0
评论 0
导读 HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。

环境:阿里云服务器CentOS7.3,Nignx,Let’s Encrypt做免费的HTTPS证书。

Let’s Encrypt官网:https://letsencrypt.org/

安装

1、服务器开放端口:443,80(服务器防火墙和阿里云控制台都要开放这两个端口,如果没有开放后面设置域名时,会报错连接域名超时的)

2、安装一个nginx,并且测试下可以访问吗,访问个主页试试

3、准备做完了我们开始安装,从服务器上面获取证书:

$ git clone https://github.com/letsencrypt/letsencrypt.git

$ cd letsencrypt 

$ sudo ./letsencrypt-auto certonly

根据该向导,选用standalone模式填写自己的邮箱域名等等

4、然后我们就能在/etc/letsencrypt/live/mydomain下面看到privkey.pem和fullchain.pem文件

配置

5、我们修改nginx的配置文件,屏蔽http配置文件,设置https配置文件让它支持https协议,默认nginx配置文件路径/etc/nginx/nginx.conf:

server {
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name www.linuxidc.com;
root /usr/share/nginx/html;

ssl_certificate "/etc/letsencrypt/live/www.linuxidc.com/fullchain.pem";
ssl_certificate_key "/etc/letsencrypt/live/www.linuxidc.com/privkey.pem";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;

# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;

location / {
}

location ~ \.php$ {
root /usr/share/nginx/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

error_page 404 /404.html;
location = /40x.html {
}

error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}

其实nginx配置文件后面有https的模板,默认屏蔽了

访问

6、然后我们重启下nginx,systemctl stop nginx.service和systemctl start nginx.service,用http协议访问网站的某个页面不行,用https协议访问成功,https://www.linuxidc.com/indexs.html

7、前面我们怕冲突把http的配置给屏蔽了,现在我们要实现访问http时自动跳转到https,例如访问baidu.com就会自动跳转到https://www.baidu.com

我们再加一个server实现跳转

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

然后重启nginx

8、 最后我们看下颁发的证书,右击页面->检查->security->View certificate,我们看下证书的有效期是3个月,letsencrypt是支持自动获取证书的,也就是说你可以设置在证书失效前例如一个月自动再请求新的证书,这样我们以后就不用担心证书失效了

9、实现定时更新证书,我们可以用linux自带的定时器crontab

$ crontab -e

输入:

30 2 1 * * /usr/bin/certbot renew >> /var/log/le-renew.log
35 2 1 * * /usr/bin/systemctl reload nginx

保持退出,上面的意思是在每个月的1号2点30分自动更新证书,在每个月的1号2点35分重新加载nginx

原文来自: http://www.linuxprobe.com/build-websites.html

本文转载自:

共有 人打赏支持
问题终结者
粉丝 9
博文 585
码字总数 69949
作品 0
运维
用Certbot自动生成免费的Let's Encrypt Https证书

一、怎样遇到Let's Encrypt 青橘子(qjuzi.com)需要搭建一个健壮的后端,希望采用安全的HTTPS协议,多方寻找,申请过免费证书,就在要准备购买阿里代理的证书时,发现了Let's Encrypt。 二、什...

花有信 ⋅ 2017/11/03 ⋅ 0

Let’s Encrypt 推动了 HTTPS 的普及

如今的互联网暗潮涌动,陷阱无数,HTTPS 可以帮助你抵御部分陷阱。然而 HTTPS 的生态系统严重依赖于CA,而 CA有着多个令人诟病的问题:证书昂贵;不透明;安全问题严重,比如被入侵签发假证书...

达尔文 ⋅ 2016/11/05 ⋅ 11

利用SSL For Free工具3分钟获取Let’s Encrypt免费SSL证书【转】

利用SSL For Free工具3分钟获取Let’s Encrypt免费SSL证书【转】 和煦的点滴2016-07-30315 阅读 ApacheNginxssl 随着网站SSL证书的应用流行,我们越来越多的网站开始安装和尝试安装使用SSL证...

和煦的点滴 ⋅ 2016/07/30 ⋅ 0

免费配置HTTPS 证书

免费配置HTTPS 证书 PHP/Python/C/C++/Lua/Golang/Erlang代码库2018-01-061 阅读 配置免费证书https 使用 Certbot 工具让你的网站秒配 HTTPS 证书。 Certbot Certbot is an easy-to-use clie...

PHP/Python/C/C++/Lua/Golang/Erlang代码库 ⋅ 01/06 ⋅ 0

https的第三步之配置nginx

背景 由于前两步需要去阿里云或者又拍云上购买证书才可以 但是对于需要在对应可行性进行分析&配置更新上 决定先使用Let’s Encrypt进行证书的签名和部署【免费蛋糕不用白不用~】 Let's Encr...

Mr_Qi ⋅ 02/15 ⋅ 0

Linux 基金会将托管 Let's Encrypt 项目

Linux基金会宣布它将托管Let's Encrypt项目和互联网安全研究组(ISRG)。Let’s Encrypt CA项目由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起,向网站自动签发和管理免费证书,加速将W...

oschina ⋅ 2015/04/11 ⋅ 13

让你的网站秒配 HTTPS 证书

原谅我当一次标题党 ^_^ 网站为什么要配置 HTTPS,以及配置 HTTPS 有什么优点就不再解释了,我们直奔主题,使用 Certbot 工具让你的网站秒配 HTTPS 证书。 Certbot 介绍 Certbot is an easy...

angkee ⋅ 2017/08/31 ⋅ 0

使用 Let's Encrypt 保护你的网站

未加密的 HTTP 会话暴露于滥用之中,用 Let's Encrypt 把它们保护起来。 曾几何时,通过证书授权机构搭建基本的 HTTPS 网站需要每年花费数百美元,而且搭建的过程复杂且容易出错。现在我们免...

作者: Carla Schroder ⋅ 04/23 ⋅ 0

Let’s Encrypt 颁发了第一个证书

Let’s Encrypt 项目宣布颁发了第一个证书。Let’s Encrypt 项目旨在让每个网站都能使用 HTTPS 加密,该项目获得了 Mozilla、思科、Akamai、IdenTrust 和 EFF 等组织的支持,由 Linux 基金会...

oschina ⋅ 2015/09/16 ⋅ 21

生成线上用https证书,支持通配符和多域名,初学Let’s Encrypt用于IIS,纯本地手动

自简书发布的上篇《生成本地测试用https证书,支持通配符和多域名,初学OpenSSL》以来,本地测试用https用的妥妥的。 线上一直用的腾讯云的免费证书(每个域名都要一个证书(滑稽),今天线上...

高坚果兄弟 ⋅ 06/09 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Jenkins实践3 之脚本

#!/bin/sh# export PROJ_PATH=项目路径# export TOMCAT_PATH=tomcat路径killTomcat(){pid=`ps -ef | grep tomcat | grep java|awk '{print $2}'`echo "tom...

晨猫 ⋅ 今天 ⋅ 0

Spring Bean的生命周期

前言 Spring Bean 的生命周期在整个 Spring 中占有很重要的位置,掌握这些可以加深对 Spring 的理解。 首先看下生命周期图: 再谈生命周期之前有一点需要先明确: Spring 只帮我们管理单例模...

素雷 ⋅ 今天 ⋅ 0

zblog2.3版本的asp系统是否可以超越卢松松博客的流量[图]

最近访问zblog官网,发现zlbog-asp2.3版本已经进入测试阶段了,虽然正式版还没有发布,想必也不久了。那么作为aps纵横江湖十多年的今天,blog2.2版本应该已经成熟了,为什么还要发布这个2.3...

原创小博客 ⋅ 今天 ⋅ 0

聊聊spring cloud的HystrixCircuitBreakerConfiguration

序 本文主要研究一下spring cloud的HystrixCircuitBreakerConfiguration HystrixCircuitBreakerConfiguration spring-cloud-netflix-core-2.0.0.RELEASE-sources.jar!/org/springframework/......

go4it ⋅ 今天 ⋅ 0

二分查找

二分查找,也称折半查找、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。搜素过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于...

人觉非常君 ⋅ 今天 ⋅ 0

VS中使用X64汇编

需要注意的是,在X86项目中,可以使用__asm{}来嵌入汇编代码,但是在X64项目中,再也不能使用__asm{}来编写嵌入式汇编程序了,必须使用专门的.asm汇编文件来编写相应的汇编代码,然后在其它地...

simpower ⋅ 今天 ⋅ 0

ThreadPoolExecutor

ThreadPoolExecutor public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, ......

4rnold ⋅ 昨天 ⋅ 0

Java正无穷大、负无穷大以及NaN

问题来源:用Java代码写了一个计算公式,包含除法和对数和取反,在页面上出现了-infinity,不知道这是什么问题,网上找答案才明白意思是负的无穷大。 思考:为什么会出现这种情况呢?这是哪里...

young_chen ⋅ 昨天 ⋅ 0

前台对中文编码,后台解码

前台:encodeURI(sbzt) 后台:String param = URLDecoder.decode(sbzt,"UTF-8");

west_coast ⋅ 昨天 ⋅ 0

实验楼—MySQL基础课程-挑战3实验报告

按照文档要求创建数据库 sudo sercice mysql startwget http://labfile.oss.aliyuncs.com/courses/9/createdb2.sqlvim /home/shiyanlou/createdb2.sql#查看下数据库代码 代码创建了grade......

zhangjin7 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部