通过Let’s Encrypt申请免费SSL证书方法

overme6个月前 (10-17)网页设计381
Let’s Encrypt简介
Let’s Encrypt作为一个公共且免费SSL的项目逐渐被广大用户传播和使用,是由Mozilla、Cisco、Akamai、IdenTrust、EFF等组织人员发起,主要的目的也是为了推进网站从HTTP向HTTPS过度的进程,目前已经有越来越多的商家加入和赞助支持。

acme.sh 实现了 acme 协议, 可以从 let‘s encrypt 生成免费的证书.

安装acme.sh
推荐使用root用户安装
sudo su root

安装命令
curl  https://get.acme.sh | sh

生成ssl证书
使用webroot方式

acme.sh  –issue -d blog.lomot.cn  –webroot  /var/www/blog.lomot.cn/

或者可以使用nginx方式,具体还有其他的方法参考acme.sh项目的github

acme.sh  –issue -d blog.lomot.cn  –nginx

copy证书

acme.sh –installcert -d blog.lomot.cn –key-file /etc/nginx/ssl/blog.lomot.cn.key –fullchain-file /etc/nginx/ssl/blog.lomot.cn.cer –reloadcmd “service nginx force-reload”

应用证书
这里只给出nginx的方法:

例如网址是m.bishuqi.com 在/etc/nginx/nginx.conf
中添加如下

  1. server {
  2.         listen 80;
  3.         server_name m.bishuqi.com;
  4.         rewrite ^(.*)$  https://$host$1 permanent;
  5.     }
  6.     server {
  7.         listen 443;
  8.         server_name m.bishuqi.com;
  9.         ssl on;
  10.         ssl_certificate  /etc/nginx/ssl/m.bishuqi.com.cer;
  11.         ssl_certificate_key /etc/nginx/ssl/m.bishuqi.com.key;
  12.         ssl_session_timeout 5m;
  13.         ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
  14.         ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
  15.         ssl_prefer_server_ciphers on;
  16.         location / {
  17.             proxy_set_header   X-Real-IP $remote_addr;
  18.             proxy_set_header   Host      $http_host;
  19.             proxy_pass         http://localhost:3000;
  20.             proxy_set_header REMOTE-HOST $remote_addr;
  21.             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  22.         }
  23.     }

复制代码

很多集成环境搭建工具,虚拟机设置时都集成了Let’s encrypt SSL证书加密。比如Oneinstack-一键PHP/JAVA安装工具

Lets encrypt 报警处理 acme v1->V2

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。