给网站配置免费的HTTS证书

最近看到网上说 https 的网站 Google 会优先收录,所以就抽时间记录下配置博客的过程。

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 用户都可以安装使用. 安装过程进行了以下几步:

  1. 把 acme.sh 安装到你的?home?目录下:
cd ~/.acme.sh/

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

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

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

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

这是使用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.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

  • 作者:鹏磊
  • 出处:http://www.ymq.io/2018/06/08/certs-https
  • 版权归作者所有,转载请注明出处
  • Wechat:关注公众号,"搜云库",专注于开发技术的研究与知识分享

原文地址:http://blog.51cto.com/8888940/2126601

时间: 2024-10-28 20:15:23

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

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

免费的ssl证书,https://www.startssl.com/ 安装到IIS和Nginx有所不同.原文 http://blog.newnaw.com/?p=1232 ------------转自 http://blog.newnaw.com/?p=1232 ----------------------- 重点部分标红 如果网站需要提供https加密访问方式,那么必须拥有一个有效的ssl证书来向客户端证明自己的身份.而ssl证书通常由第三方机构签发,有Domain Validation (D

为微信小程序开发做准备,在Centos 6.8下利用letsencrypt.sh脚本为nginx 配置免费https证书

原文链接: http://phpecshop.blog.51cto.com/6296699/1891737 最近在做微信小程序商城开发的时候,阅读官方api文档发现要求https,的路程. wx.request(OBJECT) wx.request发起的是 HTTPS 请求. 于是开始了在Centos 6.8下利用letsencrypt.sh脚本为nginx 配置免费https(Let's Encrypt SSL证书) 1.下载letsencrypt.sh # wget https://raw.

nginx配置免费ssl证书支持https安全访问

1.自行颁发不受浏览器信任的SSL证书: HTTPS的SSL证书可以自行颁发,Linux下的颁发步骤如下: openssl genrsa -des3 -out www.aaa.com.key 1024 openssl req -new -key www.aaa.com.key -out www.aaa.com.csr openssl rsa -in www.aaa.com.key -out www.aaa.com_nopass.key Nginx.conf的SSL证书配置,使用www.aaa.c

【原创】免费申请SSL证书【用于HTTPS,即是把网站从HTTP改为HTTPS,加密传输数据,保护敏感数据】

今天公司有个网站需要改用https访问,所以就用到SSL证书.由于沃通(以前我是在这里申请的)暂停了免费的SSL证书之后,其网站推荐了新的一个网站来申请证书,所以,今天因为刚好又要申请一个证书,所以,我就到这个网站申请了证书,趁着有一点点小空隙的时间,然后最近也没新写博文了,有些手痒痒.所以,就写了一下这个申请流程,流程就是如下: 1,打开进入网站:https://www.startssl.com/ 2,如果还没有账号的,那就先注册,方式如下: 然后他就会给你填写的有限发送验证码,这时候,进入你

Mozilla、思科和EFF将为网站免费提供SSL证书

 Mozilla.思科.Akamai.IdenTrust.EFF和密歇根大学研究人员 宣布了  Let’s Encrypt CA项目,计划为网站提供免费SSL证书,加速将Web从HTTP过渡到HTTPS.Let’s Encrypt CA项目计划从 2015年夏天 开始向任何需要加密证书的网站自动发行和管理免费证书. 部署HTTPS的最大障碍是HTTPS所需证书的复杂性.官僚主义和费用,Let’s Encrypt项目的目标是解决这些问题,将证书安装的时间减少到20到30秒.Let’s Encryp

Tomcat SSL配置及Tomcat CA证书安装

Tomcat既可以作为独立的Servlet容器,也可以作为其他HTTP服务器附加的Servlet容器.如果Tomcat在非独立模式下工作, 通常不必配置SSL,由它从属的HTTP服务器来实现和客户的SSL通信.Tomcat和HTTP服务器之间的通信无须采用加密机制,HTTP服务器将解 密后的数据传给Tomcat,并把Tomcat发来的数据加密后传给客户. 如果Tomcat作为独立的Java Web服务器,则可以根据安全需要,为Tomcat配置SSL,它包含以下两个步骤: (1) 准备安全证书.

在CentOS6,CentOS7安装 Let'sEncrypt 免费SSL安全证书

相对来说,个人网站建立SSL是昂贵的,而且往往过程繁琐.一个标准的2048位证书费用至少150美元/年,网站除了要支付一笔昂贵的费用.重新配置Web服务器,并需要解决大量的配置错误.这让广大中小网站望而生畏. 然而,Let's Encrypt免费证书的开放,极大推进了国内 HTTPS 的进程.Let's Encrypt 真正的意义在于,它推动了 HTTPS 在小型网站和个人网站中的应用,加速全面 HTTPS 时代的到来.Let's Encrypt 的最大贡献是它的 ACME 协议,第一份全自动服

【Other】申请免费的SSL证书及部署Https协议

序: 如今的开发中我们会注意到很多的网站都从http协议变成了https,不谈技术,但从外观就比较招我喜爱.故今天研究一下. 0x01:简谈http与https两者的区别. http:http为超文本传输协议,数据传输以明文的方式传输. https:https为http + ssl组成的加密传输的网络协议,与http相比较为安全.(盗一张图) 优缺点:优点 -> https在传输中对数据进行密文发送,大大降低了中间人拦截/篡改数据. 缺点 -> https并非绝对安全,由于数据进行了加密在性能

nginx安装Lets Encrypt SSL免费HTTPS加密证书

Linux Nginx网站:Certbot安装配置Lets Encrypt SSL免费HTTPS加密证书 原文地址:https://renwole.com/archives/157 实验环境:CentOS Linux release 7.2内核版本:Linux version 3.10.0-514.26.2.el7.x86_64Nginx版本: Nginx-1.13.0 Let's Encrypt是一个免费的.自动化.开放的证书颁发机构.由Mozilla.Cisco.Chrome.faceboo