爱她吗 发表于 2017-12-23 19:46:26

nginx 配置https安全方式访问

  第一、Certbot官网以及选择部署版本
  官网地址:https://certbot.eff.org

  这里我们可以根据实际项目环境,选择系统和发行版本,然后可以跳转到安装向导。然后会跳转到Automated、Advanced安装向导。

  第二、Linux VPS利用Certbot部署SSL
  这里我环境采用的是Nginx,系统用的是CentOS6,我会在上一步选择好对应的后根据提示进行步骤安装。
  1、自动安装
  wget https://dl.eff.org/certbot-auto
  chmod a+x certbot-auto
  ./certbot-auto
  执行自动安装会下载和安装需要的环境组件等,总之我们执行就可以,遇到需要安装与否的输入y后回车。
  2、生成域名证书
  A - 单域名
  ./certbot-auto certonly --email admin@laobuluo.com --agree-tos --webroot -w /data/wwwroot/ssl.laobuluo.com -d ssl.laobuluo.com
  B - 多域名
  ./certbot-auto certonly --email admin@laobuluo.com --agree-tos --webroot -w /var/www/laozuo -d laozuo.org -d www.laozuo.org -w /var/www/laobuluo -d laobuluo.com -d www.laobuluo.com
  如果我们是多域名可以参考上面的进行多域名设置。域名进行修改和调整。

  我们在生成证书的时候会有一个窗口弹出,然后估计没检测到邮箱,然后我手工输入回车OK后可以看到生成完毕,我们可以看到证书是90天,到时候再续约90天。我们也可以用自动脚本自动续约的。
  3、找到我们的网站证书
  我们可以在上面生成完成看到证书被放到/etc/letsencrypt/live/ssl.laobuluo.com/目录中,这个我们根据自己网址的文档区别。里面可以看到有cert.pem 、chain.pem 、 fullchain.pem、privkey.pem四个文件。
  4、将SSL文件部署到网站中
  我们在获取到证书之后,就知道证书的路径,这里我们就不要动路径了,直接在网站Nginx配置文件或者APACHE文件中再调整,可以参考这篇文章,老左当时有进行设置过。
  ssl_certificate /etc/letsencrypt/live/ssl.laobuluo.com/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/ssl.laobuluo.com/privkey.pem;
  ssl_trusted_certificate /etc/letsencrypt/live/ssl.laobuluo.com/chain.pem;
  在Nginx站点配置文件中添加443端口server,然后设置SSL证书文件。设置后重启nginx看看是否成功,如果错误会有提示的。最后收尾工作,我们是否需要将所有的非HTTP跳转到HTTPS。
  第三、Let's Encrypt续约SSL证书
  ./certbot-auto renew --dry-run
  执行后会自动续约,不过这样是不是也麻烦?因为每个90天前几天又要来一次。我们可以设定到定时里。
页: [1]
查看完整版本: nginx 配置https安全方式访问