取经自思否:https://segmentfault.com/a/1190000015231137

https 的网站 搜索引擎 会优先收录,所以就抽时间记录下配置博客的过程,各种找资料,终于给我找到了一篇好的指引

ACME

使用 LetEncrypt 证书作为博客的 https 实现方式。

acme.sh 实现了 acme 协议, 可以从 letsencrypt 生成免费的证书.

github https://github.com/Neilpang/acme.sh

主要步骤:

  1. 安装 acme.sh
  2. 生成证书
  3. copy 证书到 nginx/apache 或者其他服务
  4. 更新证书
  5. 更新 acme.sh
  6. 测试 https

1. 安装 acme.sh

安装很简单, 一个命令:

curl https://get.acme.sh | sh

普通用户和 root 用户都可以安装使用. 安装过程进行了以下几步:

把 acme.sh 安装到你的 home 目录下:

cd ~/.acme.sh/

并创建 一个 bash 的 alias, 方便你的使用: alias acme.sh=~/.acme.sh/acme.sh

自动为你创建 cronjob, 每天 0:00 点自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书.

2. 生成证书 并且完成验证

acme.sh 实现了 acme 协议支持的所有验证协议. 一般有两种方式验证: http 和 dns 验证.

这是使用http 验证

cd ~/.acme.sh/
yum install socat

如果你还没有运行任何 web 服务, 80 端口是空闲的, 那么 acme.sh 还能假装自己是一个webserver, 临时听在80 端口, 完成验证:

sh acme.sh --issue -d www.souyunku.com --standalone

3. copy/安装 证书

前面证书生成以后, 接下来需要把证书 copy 到真正需要用它的地方.

注意, 默认生成的证书都放在安装目录下: ~/.acme.sh/, 请不要直接使用此目录下的文件, 例如: 不要直接让 nginx/apache的配置文件使用这下面的文件. 这里面的文件都是内部使用, 而且目录结构可能会变化.

mkdir -p /certs
cd /root/.acme.sh/www.souyunku.com
cp www.souyunku.com.cer /certs
cp www.souyunku.com.key /certs

配置Nginx

vim /usr/local/nginx/conf/nginx.conf

配置证书

server {
listen 443;
ssl on;
ssl_certificate /certs/www.souyunku.com.cer;
ssl_certificate_key /certs/www.souyunku.com.key;
}

http重定向到https

server {
listen 80;
server_name www.souyunku.com;
rewrite ^(.*) https://$server_name$1 permanent;
}

每次修改nginx配置文件后都要进行检查

/usr/local/nginx/sbin/nginx -t

4. 更新证书

目前证书在 60 天以后会自动更新, 你无需任何操作. 今后有可能会缩短这个时间, 不过都是自动的, 你不用关心.

5. 更新 acme.sh

目前由于 acme 协议和 letsencrypt CA 都在频繁的更新, 因此 acme.sh 也经常更新以保持同步.

升级 acme.sh 到最新版 :

acme.sh --upgrade

如果你不想手动升级, 可以开启自动升级:

acme.sh --upgrade --auto-upgrade

之后, acme.sh 就会自动保持更新了.

你也可以随时关闭自动更新:

acme.sh --upgrade --auto-upgrade 0

6. 测试 https

启动Nginx

 
/usr/local/nginx/sbin/nginx

浏览器 访问 www.xxx.com 会自动跳转到 https://www.xxx.com

配置步骤

点击菜单:融合CDN-->域名管理-->配置--> HTTPS 配置

点击 SSL证书管理 -https://portal.qiniu.com/certificate/ssl#cert,您可以在SSL证书服务页面申请或上传自有证书。

  • 内容 ( PEM格式 ) 对应证书内容 *.cre 后缀
  • 私钥 ( PEM格式 ) 对应证书内容 *.key 后缀

最后点击:强制 HTTPS 访问

开启后用户的 HTTP 请求会强制跳转到 HTTPS 协议进行访问。

给网站配置免费的HTTS证书的更多相关文章

  1. 给网站添加免费Https SSL证书

    基于阿里云的云盾证书服务,系统是centos6.8,web服务器是nginx1.8.0,简单记录下踩坑情况. 申请证书 登录阿里云控制台→安全(云盾)→证书服务→购买证书(https://common ...

  2. linux系统下使用nginx反向代理asp.net core,并配置免费的https证书

    反向代理是为动态 Web 应用提供服务的常见设置. 反向代理终止 HTTP 请求,并将其转发到 ASP.NET Core 应用. 1.在asp.net core项目中的Startup的Configur ...

  3. 【转载】网站配置Https证书系列(二):IIS服务器给网站配置Https证书

    针对网站的Https证书,即SSL证书,腾讯云.阿里云都提供了免费的SSL证书申请,SSL证书申请下来后,就需要将SSL证书配置到网站中,如果网站使用的Web服务器是IIS服务器,则需要在IIS服务器 ...

  4. startssl,免费的ssl证书申请及注意事项

    免费的ssl证书,https://www.startssl.com/ 安装到IIS和Nginx有所不同.原文 http://blog.newnaw.com/?p=1232 ------------转自 ...

  5. 获取免费的https证书

    可以通过网站获取免费的https证书 首先到https://freessl.org注册一个账号 然后就可以开始创建免费证书了 获取的证书里面通常只有pem后缀文件 nodejs使用的时候需要crt文件 ...

  6. 超详细网站博客域名和二级域名、子域名升级HTTPS免费申请SSL证书配置nginx指南

    随着互联网的飞速发展,我们的工作生活已经离不开互联网,HTTP虽然使用极为广泛, 但是存在不小的安全缺陷, 主要是其数据的明文传送和消息完整性检测的缺乏, 而这两点恰好是网络支付,网络交易等网站应用中 ...

  7. 【转载】网站配置Https证书系列(一):腾讯云申请免费的SSL证书的流程步骤(即https安全连接使用的证书)

    很多网站为了安全性考虑都会上https安全连接,此时就需要考虑使用SSL证书,其实在腾讯云这边提供有免费的SSL证书申请,登录腾讯云管理控制台后,进入SSL证书管理页面,里面有个申请免费证书.腾讯云申 ...

  8. Tomcat9使用免费的Https证书加密网站

    1.概述 Apache Tomcat是一款优秀的Java Web容器,对于各个站长来说,可以很方便的使用Tomcat将自己的网站博客放在公网的服务器上,分享自己的心得以及个人博客. 那么在公网中的访问 ...

  9. Certbot让网站拥有免费https证书

    网站使用http协议,在chrome浏览器中总是报不安全,看着就让人不爽,自己建的网站,不安全总是会让自己心慌慌.看到有头有脸的网站都是https开头,心中自然也想装逼一把,让自己的网站高端大气上档次 ...

随机推荐

  1. 数据结构【查找】—平衡二叉树AVL

    /*自己看了半天也没看懂代码,下次再补充说明*/ 解释: 平衡二叉树(Self-Balancing Binary Search Tree 或Height-Balanced Binary Search ...

  2. python 基本运算符

    一.格式化输出 简易名片的制作 name="小龙女" phone=15464623646 firm="神雕侠侣" pro="神仙姐姐" pr ...

  3. vue中$router.push打开新窗口

    在vue中使用 this.$router.push({ path:  '/home' }) 默认是替代本窗口 如果想新开一个窗口,可以使用下面的方式: let routeData = this.$ro ...

  4. 【NOI2019模拟】搬砖

    [NOI2019模拟]搬砖 Description 小火车很穷,只好去搬砖了. 小火车被工头要求搭建\(n\)座塔,第i个高度为\(H_i\),也就是由\(H_i\)块砖头组成.每次小火车可以携带至多 ...

  5. 设计模式のStatePattern(状态模式)----行为模式

    一.产生背景 在面向对象软件设计时,常常碰到某一个对象由于状态的不同而有不同的行为.如果用if else或是switch case等方法处理,对象操作及对象的状态就耦合在一起,碰到复杂的情况就会造成代 ...

  6. 阿里云windows server 2012 TIME_WAIT CLOSE_WAIT

    新申请的阿里云windows server 2012 R2上部署安装了socket服务器,但客户端连接后老是断开(心跳包没有),服务假死(服务不断也走),客户端申请连接会也会死在cmd下输入指令 ne ...

  7. python六十八课——网络编程之UDP协议

    1.1 概述 UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接.简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据,同样接收端在收到 ...

  8. centos7下kubernetes(4.kubernetes组件)

    Kubenetes cluster 由master和node组成 Master是kubenetes的大脑.运行着以下进程:kube-apiserver.kube-scheduler.kube-cont ...

  9. centos7下安装docker(17.2docker监控---weave scope)

    weave scope的最大的特点是会自动生成一张docker 容器地图,让我们能够直观的理解,监控和控制地图 先来感受一下(盗图) 1.安装 执行如下脚本安装运行weave scope  curl ...

  10. Springboot监控之一:SpringBoot四大神器之Actuator

    介绍 Spring Boot有四大神器,分别是auto-configuration.starters.cli.actuator,本文主要讲actuator.actuator是spring boot提供 ...