Глава 5 · 5.1
Caddy: уебсайт с автоматичен https
Caddy е уеб сървър, който сам заявява сертификат от Let's Encrypt и го подновява навреме. Не е необходимо да настройвате certbot. Затова за нов сървър Caddy е най-лесният избор.
Какво трябва да е готово?
- A и AAAA записите на Вашето име сочат към Вашия VPS (вижте A и AAAA запис в Моите домейни).
- Портове 80 и 443 са отворени във Вашата защитна стена (вижте Защитна стена с ufw (или nftables)). Let's Encrypt проверява през порт 80 дали наистина управлявате името.
- На порт 80 или 443 не работи друг уеб сървър, например nginx или Apache.
Инсталиране на Caddy
anna@web1:~$ sudo apt install caddy
anna@web1:~$ systemctl status caddy
Caddy е наличен в хранилището с пакети на Debian и Ubuntu и стартира веднага като услуга. Ако искате винаги най-новата версия, използвайте хранилището на самия Caddy, според caddyserver.com/docs/install.
Вашият първи сайт
Поставете файловете си в папка, например /srv/www/example.com, и отворете файла с настройки:
anna@web1:~$ sudo mkdir -p /srv/www/example.com
anna@web1:~$ echo '<h1>Het werkt</h1>' | sudo tee /srv/www/example.com/index.html
anna@web1:~$ sudo nano /etc/caddy/Caddyfile
Заменете съдържанието с:
example.com, www.example.com {
root * /srv/www/example.com
file_server
encode zstd gzip
}
anna@web1:~$ caddy validate --config /etc/caddy/Caddyfile
anna@web1:~$ sudo systemctl reload caddy
Отворете https://example.com. Caddy получава сертификата при първото посещение или до няколко секунди след презареждането и автоматично пренасочва http към https.
Не работи?
anna@web1:~$ journalctl -u caddy --since "10 minutes ago"
Най-честите причини: DNS все още не сочи към Вашия VPS, порт 80 е затворен или на порт 80 вече работи нещо друго. Повече в Уебсайтът е недостъпен, 502 Bad Gateway или грешка в сертификата.
Съвет: Поставете в началото на Caddyfile блок с Вашия имейл адрес. Така Let's Encrypt ще може да се свърже с Вас, ако има проблем с Вашите сертификати:
{
email beheer@example.com
}