Skip to content
VDS · Sajtovi i veb serveri

Besplatan Let's Encrypt sertifikat

Kako da izdaš i automatski obnavljaš HTTPS sertifikat na VPS-u pomoću certbot-a, uključujući slučaj kada je port 80 već zauzet.

Ažurirano 23. avgust 2026.

Potreban ti je sertifikat da browser ne bi prikazivao „Not secure” i da obrasci i plaćanja uopšte rade. Let's Encrypt izdaje jedan besplatno na 90 dana uz automatsku obnovu.

Priprema

Proveri tri stvari, inače će izdavanje pasti:

dig +short example.ru        # should return your machine's address
ss -tulpn | grep -E ':80|:443'
  • A zapis domena pokazuje na adresu na kartici „Overview” u panelu na /hosting/vds/m/<id>;
  • port 80 je dostupan spolja — Let's Encrypt ga koristi da potvrdi vlasništvo nad domenom;
  • veb server radi: Nginx ili Apache.

Ako koristiš Caddy, ne moraš ništa da radiš — sam izdaje sertifikate.

Izdavanje

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

Za Apache je isti put sa python3-certbot-apache i zastavicom --apache. Certbot sam dodaje blok sa sertifikatom i preusmerenje sa HTTP na HTTPS u konfiguraciju.

Proveri rezultat:

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

Automatska obnova

Paket instalira sistemski tajmer, koji se stara i o obnovi. Uveri se da je tajmer aktivan i pokreni probnu obnovu:

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

Probni prolaz je obavezan. On hvata situaciju u kojoj će obnova pući za dva meseca — na primer, preimenovao si konfiguraciju sajta i certbot više ne zna gde da stavi verifikacioni fajl.

Kada je port 80 zauzet

Ako na portu 80 radi aplikacija i ne možeš tu da staviš veb server, koristi poseban režim:

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

Certbot će za vreme provere podići sopstveni privremeni server. Za to ćeš morati da zaustaviš aplikaciju: --pre-hook i --post-hook to mogu automatski.

Posle izdavanja, sertifikati su u /etc/letsencrypt/live/example.ru/: fullchain.pem i privkey.pem.

Česte greške

SimptomUzrok
Timeout during connectPort 80 blokira firewall ili domen pokazuje na drugu mašinu
too many certificates already issuedUdario si u nedeljni limit za domen — sačekaj ili debuguj sa --staging
Sajt servira stari sertifikat posle izdavanjaNisi reloadovao veb server: systemctl reload nginx
Sertifikat je istekaoTajmer je onemogućen — proveri systemctl enable --now certbot.timer

Direktorijum /etc/letsencrypt je deo tvojih podataka. Nema automatskih bekapa mašine, pa ga uključi u svoj bekapa zajedno sa konfiguracijama veb servera.