Let's Encrypt ile Ücretsiz SSL: Otomatik Yenileme Rehberi
z
zafer ak
Yazar
28 December 2025
3 dakika okuma
373 görüntülenme
Let's Encrypt ile ücretsiz SSL sertifikası alma ve otomatik yenileme. Certbot kurulumu, wildcard sertifika ve çoklu domain yapılandırması.
Let's Encrypt, ücretsiz, otomatik ve açık bir Sertifika Otoritesidir (CA). Web sitelerinize kolayca SSL sertifikası ekleyebilirsiniz.
Let's Encrypt Avantajları
- Ücretsiz: Tamamen ücretsiz DV sertifikaları
- Otomatik: Certbot ile otomatik kurulum ve yenileme
- Güvenilir: Tüm modern tarayıcılar tarafından tanınır
- 90 gün geçerlilik: Otomatik yenileme ile sorunsuz
- Wildcard desteği: *.example.com sertifikaları
Certbot Kurulumu
# Ubuntu/Debian
sudo apt update
sudo apt install certbot
# Nginx için
sudo apt install python3-certbot-nginx
# Apache için
sudo apt install python3-certbot-apache
# CentOS/RHEL
sudo dnf install certbot python3-certbot-nginx
Nginx ile SSL Kurulumu
# Otomatik kurulum
sudo certbot --nginx -d example.com -d www.example.com
# Interaktif sorular:
# - Email adresi
# - Hizmet şartları kabul
# - HTTP-HTTPS yönlendirme
# Sadece sertifika al (manuel yapılandırma)
sudo certbot certonly --nginx -d example.com
Apache ile SSL Kurulumu
# Apache SSL modülünü etkinleştir
sudo a2enmod ssl
# Certbot ile kurulum
sudo certbot --apache -d example.com -d www.example.com
# Manuel kurulum
sudo certbot certonly --apache -d example.com
Standalone Mode
Web sunucusu yoksa veya farklı kullanım için:
# Port 80'in boş olması gerekir
sudo certbot certonly --standalone -d example.com
# Webroot mode (sunucu çalışırken)
sudo certbot certonly --webroot -w /var/www/html -d example.com
Wildcard Sertifika
# Wildcard için DNS-01 challenge gerekli
sudo certbot certonly --manual --preferred-challenges dns \
-d example.com -d *.example.com
# DNS TXT kaydı ekleyin:
# _acme-challenge.example.com
# Doğrulama sonrası Enter'a basın
# Cloudflare DNS ile otomatik:
sudo apt install python3-certbot-dns-cloudflare
# ~/.secrets/cloudflare.ini
dns_cloudflare_api_token = YOUR_API_TOKEN
chmod 600 ~/.secrets/cloudflare.ini
sudo certbot certonly --dns-cloudflare \
--dns-cloudflare-credentials ~/.secrets/cloudflare.ini \
-d example.com -d *.example.com
Otomatik Yenileme
# Yenileme testi
sudo certbot renew --dry-run
# Certbot timer durumu
sudo systemctl status certbot.timer
# Manuel cron (gerekirse)
# /etc/cron.d/certbot
0 0,12 * * * root certbot renew --quiet
# Yenileme sonrası hook
sudo certbot renew --post-hook "systemctl reload nginx"
Sertifika Yolları
# Sertifika dosyaları
/etc/letsencrypt/live/example.com/
├── cert.pem # Domain sertifikası
├── chain.pem # Intermediate sertifikalar
├── fullchain.pem # cert.pem + chain.pem (genelde bu kullanılır)
└── privkey.pem # Private key
# Nginx yapılandırması
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
# Apache yapılandırması
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
Sertifika Yönetimi
# Mevcut sertifikaları listele
sudo certbot certificates
# Sertifikayı sil
sudo certbot delete --cert-name example.com
# Sertifikayı genişlet (domain ekle)
sudo certbot certonly --expand -d example.com -d www.example.com -d blog.example.com
# Sertifikayı zorla yenile
sudo certbot renew --force-renewal
Sorun Giderme
# Rate limit hatası
# 7 gün içinde 5 sertifika limiti
# Staging ortamı kullanın:
sudo certbot --staging -d example.com
# Firewall sorunu
# Port 80 açık olmalı
sudo ufw allow 80
sudo ufw allow 443
# DNS doğrulama
dig +short example.com
dig +short _acme-challenge.example.com TXT
Sonuç
Let's Encrypt, web güvenliğini demokratikleştiren önemli bir projedir. Certbot ile kolayca kurulum yapabilir ve otomatik yenileme ile endişesiz kullanabilirsiniz.