Caddy2 申请腾讯云SSL证书

本文详细介绍了在CentOS 8上使用Caddy配置SSL证书的过程,包括安装Caddy、修改默认页面、通过DNSPOD申请并安装证书,以及注意事项。适合Caddy新手理解复杂配置步骤。
s);
}ccaddii

caddy的证书nginx的 ssl证书配置不一样

配置过程比较复杂

第一步: 安装Caddy(CentOS 8.x)

dnf install 'dnf-command(copr)'
dnf copr enable @caddy/caddy
dnf install caddy

第二步:修改默认访问页面 启动服务

mkdir /opt/web -p
echo "<h1>Hello Caddy</h1>" > /opt/web/index.html

vi /etc/caddy/Caddyfile
www.sh-investment.xyz:80 {
        encode gzip
        file_server {
            root  /opt/web
            index index.html
        }
}

systemctl enable --now caddy

 第三步 实现https访问

安装dnspod包:caddy add-package github.com/caddy-dns/dnspod

安装申请证书脚本

curl https://get.acme.sh | sh

OK, Close and reopen your terminal to start using acme.sh
Installing alias to '/root/.cshrc'
Installing alias to '/root/.tcshrc'
Installing cron job
Good, bash is found, so change the shebang to use bash as preferred.
OK
Install success!

安装提示成功(网络原因 需要多次尝试才会成功)

注册邮箱  ./acme.sh --register-account -m l.hao.2012@qq.com

成功后修改Caddyfile配置后保存

www.sh-investment.xyz:443 {
        encode gzip
        file_server {
            root  /opt/web
            index index.html
        }
        tls l.hao.2012@qq.com
}

获取腾讯的dnspod的token

 申请证书

export DP_Id="307280"
export DP_Key="abe5f00be2f8e7cbd0cd"

 ./acme.sh --issue  --dns dns_dp -d www.sh-investment.xyz


Your cert is in: /root/.acme.sh/www.sh-investment.xyz/www.sh-investment.xyz.cer
Your cert key is in: /root/.acme.sh/www.sh-investment.xyz/www.sh-investment.xyz.key
The intermediate CA cert is in: /root/.acme.sh/www.sh-investment.xyz/ca.cer
And the full chain certs is there: /root/.acme.sh/www.sh-investment.xyz/fullchain.cer

 证书申请成功(也是多次尝试才会成功 出现手动dns验证提示需要在控制台中需加入一条txt验证)

caddy reload 重新加载配置

访问测试

 相比nginx Caddy2在证书配置方面 还是比较复杂的

在使用 Docker 部署 Caddy申请 SSL 证书时,Caddy自动化 HTTPS 功能能够简化证书申请和管理流程。以下是一个完整的部署流程,涵盖了配置 Caddy 以实现自动 SSL 证书申请的方法。 ### 1. 准备工作 在部署前,确保本地环境已安装以下组件: - Docker 服务并确认其运行状态正常 - Docker Compose(如果使用 `docker-compose` 部署) - 域名并配置了 DNS 解析,确保域名指向服务器的 IP 地址 ### 2. 创建部署目录 创建一个目录用于存放 Caddy 的配置文件和持久化数据,例如: ```bash mkdir -p ~/caddy && cd ~/caddy ``` ### 3. 编写 Caddy 配置文件 创建一个 `Caddyfile` 文件,内容如下: ```caddyfile yourdomain.com { reverse_proxy / http://your_backend_service:port tls admin@yourdomain.com } ``` 其中: - `yourdomain.com` 替换为你的实际域名 - `admin@yourdomain.com` 是用于接收 Let's Encrypt 通知的邮箱地址 - `reverse_proxy` 配置反向代理规则(可选) Caddy自动从 Let's Encrypt 获取并续订 SSL 证书[^4]。 ### 4. 使用 Docker 部署 Caddy #### 4.1 使用 `docker run` 命令 ```bash docker run -d \ --name caddy \ -p 80:80 \ -p 443:443 \ -v $(pwd)/Caddyfile:/etc/caddy/Caddyfile \ -v caddy_data:/data \ caddy:latest ``` - `-p 80:80` 和 `-p 443:443` 映射 HTTP 和 HTTPS 端口 - `-v $(pwd)/Caddyfile:/etc/caddy/Caddyfile` 挂载配置文件 - `-v caddy_data:/data` 持久化 SSL 证书和配置数据 #### 4.2 使用 `docker-compose` 创建 `docker-compose.yaml` 文件: ```yaml version: '3.8' services: caddy: image: caddy:latest container_name: caddy ports: - "80:80" - "443:443" volumes: - ./Caddyfile:/etc/caddy/Caddyfile - caddy_data:/data restart: unless-stopped volumes: caddy_data: ``` 启动容器: ```bash docker-compose up -d ``` ### 5. 自动SSL 证书管理 Caddy 默认使用 Let's Encrypt 提供的免费 SSL 证书,并自动完成申请、配置和续订流程。只需确保: - 域名解析正确指向服务器 - 80 和 443 端口未被防火墙阻挡 - 邮箱地址有效,用于接收证书到期通知[^4] ### 6. 验证部署 访问 `https://yourdomain.com`,浏览器应显示安全锁标志,表示 HTTPS 已启用。可使用以下命令检查容器状态和端口监听情况: ```bash docker ps docker exec -it caddy ss -tuln ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

恒云客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值