Blog / linux非标准端口申请SSL证书,安装Caddy

linux非标准端口申请SSL证书,安装Caddy

linux非标准端口申请SSL证书,安装Caddy


以debian为例

安装caddy命令

sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg && curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list && sudo apt update && sudo apt install caddy -y && systemctl enable caddy

安装php

apt-get install -y php php7.4-fpm php7.4-curl php-mysql
usermod -a -G www-data caddy && systemctl start php7.4-fpm && systemctl enable php7.4-fpm && sudo apt-get install php7.4-sqlite3  -y

申请SSL证书

#非433端口申请证书
curl https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh | sh -s -- --install-online -m  [email protected](你的邮箱)

# 更改默认证书提供商为 letsencrypt
/root/.acme.sh/acme.sh --set-default-ca --server letsencrypt

##修改下面的域名下个命令运行后在 dns 后台增加 txt 解析
/root/.acme.sh/acme.sh --issue --dns -d xxx.com(你的域名) --yes-I-know-dns-manual-mode-enough-go-ahead-please

完成后会显示_acme-challenge开头的一个域名和对应的一串字符,到你的域名服务商增加一个txt type的解析,类似_acme-challenge.xx.com,字串填进去。

## 生成证书
/root/.acme.sh/acme.sh --renew -d vps88.ozersource.dynv6.net --yes-I-know-dns-manual-mode-enough-go-ahead-please

证书生成后,保存在/root/.acme.sh/你的域名_ecc/目录下(4个文件),将它全部复制到/var/lib/caddy下面,执行:

chown caddy.caddy /var/lib/caddy/*.cer
chown caddy.caddy /var/lib/caddy/*.key

最后修改/etc/caddyfile

#修改caddyfile
你的域名
{
    tls /var/lib/caddy/fullchain.cer /var/lib/caddy/你的域名.key 
   	encode gzip
      reverse_proxy localhost:443  #反代端口
    
 }

现在可以通过https://你的域名:端口(映射的)来访问了。

正常访问后,可以删除_acme-challenge开头的txt解析

  • 0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注