Ubuntu上申请Let’s Encrypt 泛域名SSL证书

Let’s Encrypt是一个开源的证书颁发机构(CA),致力于提供免费的SSL/TLS证书,以加强网站的安全性。它促进了在互联网上实现加密通信的重要性。Let’s Encrypt的官网是:https://letsencrypt.org/

首先需要安装certbot​,没有安装的需要先去看这篇文章。Ubuntu申请Let's Encrypt单域名证书,观看前三步就行。

使用DNS校验获取证书

 sudo certbot certonly --manual   --preferred-challenges dns   --server https://acme-v02.api.letsencrypt.org/directory   -d *.yourdomin.com   --force-renewal

在域名服务商添加解析

设置主机名称为_acme-challenge​,解析类型为TXT,记录值为上面的命令给出的记录值。你需要在自己的域名服务商那儿添加解析记录,例如:

image

耐心等待DNS解析,大约2~3分钟。然后回到终端按空格。然后就可以看到证书的目录:

image

在Nginx上使用证书

# HTTP 配置 (80 端口)
server {
    listen 80;
    listen 443 ssl;
    server_name blog.qbyte.top www.qbyte.top;
    
    
    # SSL 证书路径(需替换为实际路径)
    ssl_certificate /etc/letsencrypt/live/yourdomin.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourdomin.com/privkey.pem;
    ssl_session_timeout 5m;
    #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    #请按照以下协议配置
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    client_max_body_size 8192m;
    
    location / {
        proxy_set_header HOST $http_host;
        proxy_set_header Range $http_range;
        proxy_set_header If-Range $http_if_range;
        proxy_redirect off;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://127.0.0.1:8090;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        client_max_body_size 8192m;
    }
}

image

图片内容是需要编写的。

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐