使用 Certbot 配置 HTTPS,让你的网站不再裸奔

简介: 今天分享一个非常给力的 SSL 证书生成网站,从此 HTTPS 不再是难事儿!

Certbot


不错,今天的主角就是给力的 Certbot,免费好用,真是我等 diaosi 的一大福音。

我们先打开其官网,整体浏览下

https://certbot.eff.org/lets-encrypt/centos6-nginx

我们可以看到,想使用 Certbot,需要一些条件

image.png

  1. 需要一个命令行服务器,一般就是 linux了。我这里使用的是 CentOS6。
  2. 我们需要已经部署了一个 http 服务,80 端口是监听状态的,我使用的是 Nginx 代理。
  3. 有执行 root 权限的用户。


具体安装


在使用官网上的安装步骤前,我们要先有 Nginx,并且已经成功启动,当然也要有绑定了公网 IP 的域名,因为 SSL 证书都是要绑定到具体域名的。

公网 IP,域名申请,Nginx 安装等,就不说啦,我们现在来看一下我这里 Nginx 的简单配置。

server {
    listen       443;
    server_name  www.kungfuworld.top;
    ssl on;
    root        /home/KungFuWorld/      ;
    access_log  /home/log/access.log;
    error_log   /home/log/error.log;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        proxy_pass       http://127.0.0.1:5000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        index  index.html index.htm;
    }
}
server {
    listen 80;
    server_name kungfuworld.top;
    rewrite ^(.*)$ https://$host$1 permanent;
    }

我配置的域名是 www.kungfuworld.top,后面在执行 Certbot 安装时,会自动扫描到这里配置的域名,从而根据这个域名来生成证书。

下面,就是一步步的按照官网的步骤来操作就好了


安装 Certbot

wget https://dl.eff.org/certbot-auto
sudo mv certbot-auto /usr/local/bin/certbot-auto
sudo chown root /usr/local/bin/certbot-auto
sudo chmod 0755 /usr/local/bin/certbot-auto


生成证书

sudo /usr/local/bin/certbot-auto certonly --nginx

中间会有一些需要用户交互的步骤,按照提示操作就好


配置 Nginx

ssl_certificate /etc/letsencrypt/live/kungfuworld.top/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/kungfuworld.top/privkey.pem;

在刚刚的 Nginx 配置文件中,增加上面的两条配置,就完成了证书的配置。

如果不出意外,该域名的 HTTPS 就可以访问了,而且是浏览器信任的证书。

image.png

自动更新

使用 Certbot 安装的证书,只有 90 天的有效期,还好其提供了方便的自动更新功能

/usr/local/bin/certbot-auto renew

我们可以创建一个 crontab 任务,来自动更新

0 4 */80 * * /usr/local/bin/certbot-auto renew &>> /dev/null

每隔 80 天在凌晨 4 点执行一次 renew 操作

至此,基于 Certbot 的 HTTPS 配置就完成了。

相关文章
|
2月前
|
人工智能 Ubuntu 前端开发
Dify部署全栈指南:AI从Ubuntu配置到HTTPS自动化的10倍秘籍
本文档介绍如何部署Dify后端服务及前端界面,涵盖系统环境要求、依赖安装、代码拉取、环境变量配置、服务启动、数据库管理及常见问题解决方案,适用于开发与生产环境部署。
668 1
|
6月前
|
应用服务中间件 Linux 网络安全
Centos 8.0中Nginx配置文件和https正书添加配置
这是一份Nginx配置文件,包含HTTP与HTTPS服务设置。主要功能如下:1) 将HTTP(80端口)请求重定向至HTTPS(443端口),增强安全性;2) 配置SSL证书,支持TLSv1.1至TLSv1.3协议;3) 使用uWSGI与后端应用通信(如Django);4) 静态文件托管路径设为`/root/code/static/`;5) 定制错误页面(404、50x)。适用于Web应用部署场景。
720 87
|
1月前
|
网络安全 开发工具 git
在GitLab CI中同步HTTPS仓库地址的yaml配置
最后,提交并推送 `.gitlab-ci.yml`文件到您的GitLab仓库。GitLab CI/CD将自动识别这个文件,并在每次推送到 `master`分支时执行定义的同步任务。
154 16
|
6月前
|
网络安全 开发者
如何解决HTTPS协议在WordPress升级后对网站不兼容的问题
以上就是解决WordPress升级后HTTPS协议对网站的不兼容问题的方法。希望能把这个棘手的问题看成是学校的管理问题一样来应对,将复杂的技术问题变得更加有趣和形象,并寻觅出解决问题的方式。希望你的网站能在新的学期得到更好的发展!
182 19
|
安全 应用服务中间件 Linux
判断一个网站是否使用HTTPS协议
判断一个网站是否使用HTTPS协议
2040 4
|
存储 安全 搜索推荐
应该使用HTTPS的一些网站
应该使用HTTPS的一些网站
564 3
|
安全 网络协议 网络安全
怎么给ip地址配置https访问
为了配置公网IP地址的HTTPS访问,首先需明确需求并选择受信任的证书颁发机构(如JoySSL)。接着,在JoySSL官网注册并登录,填写特定注册码230922以获取免费IP证书的测试权限。提交证书申请时,填写IP地址及相关验证信息,并完成IP地址验证。验证通过后,下载证书文件。最后,使用浏览器访问IP地址,检查安全连接标志,确保无证书错误。通过以上步骤,可成功配置IP地址的HTTPS访问,提升数据传输安全性和可信度。
https网站访问http出现block:mixed-content
https网站访问http出现block:mixed-content
1141 0
https网站访问http出现block:mixed-content
|
Java 应用服务中间件 网络安全
|
前端开发
https网站访问http出现block:mixed-content
https网站访问http出现block:mixed-content
585 0