给网站配置免费的HTTS证书
最近看到网上说 https
的网站 Google
会优先收录,所以就抽时间记录下配置博客的过程。
ACME
使用 LetEncrypt
证书作为博客的 https
实现方式。
acme.sh 实现了 acme
协议, 可以从 letsencrypt
生成免费的证书.
github https://github.com/Neilpang/acme.sh
主要步骤:
安装 acme.sh
生成证书
copy 证书到 nginx/apache 或者其他服务
更新证书
更新 acme.sh
测试 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
2). 自动为你创建 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 /certscd /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.souyunku.com 会自动跳转到 https://www.souyunku.com
最后说一点,由于博客使用了七牛云的 http
协议的 cdn
导致博客内的静态资源不可用,最后又把七牛云的静态资源配置了 https
配置步骤
点击菜单:融合CDN–>域名管理–>配置–> HTTPS 配置
点击 SSL证书管理 - https://portal.qiniu.com/certificate/ssl#cert,您可以在SSL证书服务页面申请或上传自有证书。
内容 ( PEM格式 ) 对应证书内容 *.cre 后缀
私钥 ( PEM格式 ) 对应证书内容 *.key 后缀
最后点击:强制 HTTPS 访问
开启后用户的 HTTP 请求会强制跳转到 HTTPS 协议进行访问。
Contact
作者:鹏磊
版权归作者所有,转载请注明出处
Wechat:关注公众号,”搜云库”,专注于开发技术的研究与知识分享
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
分布式服务框架Dubbo疯狂更新!阿里开源要搞大事情?
阿里妹导读:最近,开源社区发生了一件大事——使用最广的开源服务框架之一Dubbo低调重启维护,并且3个月连续发布了3个维护版本。这3个维护版本不仅解决了社区关心的一系列问题和需求,还让整个社区的活跃度得到了大幅提升。 Dubbo启动维护后,阿里中间件(Aliware)组建了由专职人员和RPC技术专家组成的虚拟维护团队。通过这篇文章,Dubbo的虚拟维护团队将和大家分享一些Dubbo启动维护的历程、取得的成绩以及后续的规划,具体包括Dubbo社区的建设情况、当前的版本维护主线、近期roadmap及后续计划等。 Dubbo是阿里巴巴于2012年开源的分布式服务治理框架,目前已是国内影响力最大、使用最广泛的开源服务框架之一,在Github上的fork、start数均已破万。 在过去几年,Dubbo开源社区虽然一直有陆续维护,但是由于Dubbo用户群体庞大,基础维护根本无法完全满足社区的旺盛需求。随着整个阿里中间件内部技术的迅速发展,如今不仅能够保证集团及客户的系统高效运行,还能抽调更多精力将技术赋能给全社会。开源就是阿里巴巴集团在技术层面赋能的重要领域。 目前,阿里集团正以更高的姿态、更...
- 下一篇
MySQL 查询缓存
MySQL查询缓存提高单台节点的性能无外乎就那么几种方式,缓存是首当其冲的,因为内存的性能比磁盘高的太多。缓存也是一种典型的空间换时间的策略,缓存的实现也有太多的方式,从静态页面缓存到服务端动态缓存,再到数据库级别缓存等等。随着大数据的到来也产生了太多太多的内存数据库。缓存的工具也多种多样,随口一说就能说出很多,像 Redis,Memcached, Hbase 等,就连 MySQL 也有一个 memory 引擎数据就是直接存储到内存中,所以缓存无处不在。 视频链接:http://www.roncoo.com/course/view/658088f6e77541f5835b61800314083e 缓存的形式也多种多样,上面说的算是比较传统的缓存,其实各种的消息队列何尝又不是一种缓存机制。用到缓存的还有一个对于我们开发者都比较熟悉的,就是谷歌的低成本之道,据说谷歌最初的时候为了降低成本,提高性能,所有的机器中都没有装有硬盘,而是直接使用内存,数据靠多个节点的冗余来避免数据丢失。 缓存也是有缺陷,既然是缓存,那么针对的对象都是一些不变或者变化不大的对象,如果数据是经常变化的那么对其缓存反而...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Hadoop3单机部署,实现最简伪集群