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

本文涉及的产品
.cn 域名,1个 12个月
简介: 今天分享一个非常给力的 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 配置就完成了。

相关文章
|
16天前
|
安全 应用服务中间件 Linux
判断一个网站是否使用HTTPS协议
判断一个网站是否使用HTTPS协议
28 4
|
16天前
|
存储 安全 搜索推荐
应该使用HTTPS的一些网站
应该使用HTTPS的一些网站
20 3
|
1月前
|
安全 应用服务中间件 网络安全
49.3k star,本地 SSL 证书生成神器,轻松解决 HTTPS 配置痛点
mkcert是一款由Filippo Valsorda开发的免费开源工具,专为生成受信任的本地SSL/TLS证书而设计。它通过简单的命令自动生成并安装本地信任的证书,使本地环境中的HTTPS配置变得轻松无比。mkcert支持多个操作系统,已获得49.2K的GitHub Star,成为开发者首选的本地SSL工具。
|
24天前
|
安全 网络协议 网络安全
怎么给ip地址配置https访问
为了配置公网IP地址的HTTPS访问,首先需明确需求并选择受信任的证书颁发机构(如JoySSL)。接着,在JoySSL官网注册并登录,填写特定注册码230922以获取免费IP证书的测试权限。提交证书申请时,填写IP地址及相关验证信息,并完成IP地址验证。验证通过后,下载证书文件。最后,使用浏览器访问IP地址,检查安全连接标志,确保无证书错误。通过以上步骤,可成功配置IP地址的HTTPS访问,提升数据传输安全性和可信度。
|
2月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
2月前
|
Docker 容器
docker nginx-proxy 添加自定义https网站
docker nginx-proxy 添加自定义https网站
40 4
|
3月前
|
应用服务中间件 网络安全 Apache
HTTPS配置
HTTPS配置
141 11
|
2月前
|
安全 应用服务中间件 Shell
网站在后台启用了https协议之后重新登录就不进去后台的解决方法
网站在后台启用了https协议之后重新登录就不进去后台的解决方法
https网站访问http出现block:mixed-content
https网站访问http出现block:mixed-content
792 0
https网站访问http出现block:mixed-content
|
Java 应用服务中间件 网络安全