Skip to content
VDS · Weby a webové servery

Bezplatný certifikát Let's Encrypt

Ako vydať a automaticky obnovovať HTTPS certifikát na VPS pomocou certbot, vrátane prípadu, keď je port 80 už obsadený.

Aktualizované 23. augusta 2026

Na to, aby prehliadač nezobrazoval „Not secure“ a formuláre a platby vôbec fungovali, potrebuješ certifikát. Let's Encrypt ti ho vydá zadarmo na 90 dní s automatickým obnovovaním.

Príprava

Skontroluj tri veci, inak vydanie zlyhá:

dig +short example.ru        # should return your machine's address
ss -tulpn | grep -E ':80|:443'
  • A záznam domény smeruje na adresu na karte „Overview“ v ovládacom paneli na /hosting/vds/m/<id>;
  • port 80 je dostupný zvonku — Let's Encrypt ho používa na overenie vlastníctva domény;
  • beží webový server: Nginx alebo Apache.

Ak používaš Caddy, nemusíš robiť nič — certifikáty si vydáva sám.

Vydanie

apt install -y certbot python3-certbot-nginx      # Debian, Ubuntu
dnf install -y certbot python3-certbot-nginx      # AlmaLinux, CentOS Stream

certbot --nginx -d example.ru -d www.example.ru

Pri Apache je postup rovnaký, len s python3-certbot-apache a prepínačom --apache. Certbot sám pridá do konfigurácie blok s certifikátom a presmerovanie z HTTP na HTTPS.

Skontroluj výsledok:

certbot certificates
curl -I https://example.ru

Automatické obnovovanie

Balík nainštaluje systémový časovač, ktorý sa stará aj o obnovovanie. Uisti sa, že je časovač aktívny, a spusti testovacie obnovenie:

systemctl list-timers | grep certbot
certbot renew --dry-run

Skúšobný beh je povinný. Odhalí situáciu, keď sa obnovovanie o dva mesiace pokazí — napríklad premenuješ konfiguráciu stránky a certbot už nevie, kam umiestniť overovací súbor.

Keď je port 80 obsadený

Ak na porte 80 beží aplikácia a nemôžeš tam dať webový server, použi samostatný režim:

certbot certonly --standalone --preferred-challenges http -d example.ru

Certbot si na čas overovania spustí vlastný dočasný server. Aby to fungovalo, budeš musieť aplikáciu zastaviť: --pre-hook a --post-hook to zvládnu automaticky.

Po vydaní nájdeš certifikáty v /etc/letsencrypt/live/example.ru/: fullchain.pem a privkey.pem.

Časté chyby

PríznakPríčina
Timeout during connectPort 80 blokuje firewall alebo doména smeruje na iný stroj
too many certificates already issuedDosiahol si týždenný limit pre doménu — počkaj alebo ladí s --staging
Stránka po vydaní servíruje starý certifikátNereštartoval si webový server: systemctl reload nginx
Certifikát vypršalČasovač je vypnutý — skontroluj systemctl enable --now certbot.timer

Adresár /etc/letsencrypt je súčasťou tvojich dát. Automatické zálohy stroja neexistujú, takže ho zahrň do zálohy spolu s konfiguráciami webového servera.