nginx服务器使用免费的https证书

let's encrypt + nginx https配置

1、cd  /opt/letsencrypt 没有该目录的,mkdir创建目录

2、 sudo git clone https://github.com/certbot/certbot   没有git命令的安装git,测试有没有安装git命令 git --version, git安装命令yum install git,再用git --version查看安装git版本号

3、 nginx server 配置域名验证,把下面脚本配置到/etc/nginx/conf.d/目录下的conf文件中,同时在/mnt目录创建nginx_cert_180509目录,以日期命名
location ^~ /.well-known/acme-challenge/ {
     default_type "text/plain";
    root  /mnt/nginx_cert_180509;
}
location = /.well-known/acme-challenge/ {
   return 404;
}

4、加入https监听端口
 listen        443 ssl;

5、加入域名配置(多个域名用空格隔开)
server_name      youdan.com    www.youdan.com ;

6、重启nginx服务器,重启前用nginx -t命令检测配置文件的正确性,确认无误后,执行
nginx -s reload

7、 导入Linux环境变量,分别执行
  export DOMAINS=" youdan.com , www.youdan.com "
  export DIR=/mnt/ nginx_cert_180509

8、 cd到  /opt/letsencrypt/certbot/目录下, 执行命令申请证书
./certbot  certonly --server https://acme-v01.api.letsencrypt.org/directory -a webroot --webroot-path=$DIR -d $DOMAINS
注意:期间会提示输入邮箱,必须输入才能往下执行,如果提示无法访问到上面配置的域名,请重启nginx并检测域名的正确可访问性

9、执行完以上命令后,会在目录/etc/letsencrypt/live/ ws.youdan.com  下面生成fullchain.pem和privkey.pem文件,把这两个文件配置到nginx配置文件中,代码如下
#let's encrypt
ssl_certificate /etc/letsencrypt/live/ ws.youdan.com /fullchain.pem ;
ssl_certificate_key /etc/letsencrypt/live/ws.youdan.com/privkey.pem;

10、配置好nginx后,验证nginx -t,并重启 nginx -s reload,至此,可使用https协议访问域名网站了。

11、 创建自动检查更新脚本,并加入crontab
cd 到 /mnt/crontab_scrpit/目录,没有创建该目录,创建文件renewCerts.sh,
vim  renewCerts.sh编辑文件内容,插入以下脚本
#!/bin/sh
# This script renews all the Let's Encrypt certificates with a validity < 30 days
 
if ! /opt/letsencrypt/letsencrypt-auto renew > /var/log/letsencrypt/renew.log 2>&1 ; then
    echo Automated renewal failed:
    cat /var/log/letsencrypt/renew.log
    exit 1
fi
nginx -t && nginx -s reload
退出保存,用cat renewCerts.sh 命令查看是否已经保存成功

12、编辑系统计划任务 sudo crontab -e
在打开的文件中加入以下代码保存退出即可
@daily /mnt/crontab_scrpit/ renewCerts.sh
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值