🎯 Amaç
Let’s Encrypt, otomatik SSL sertifikası sağlayarak web güvenliğini basitleştiren en popüler ücretsiz CA’lerden biridir. Ancak sistem çökmesi, VPS değişimi veya yanlış yapılandırma durumlarında manuel yedekleme ve geri yükleme bilmek kritik önemdedir.
1️⃣ Let’s Encrypt Dosya Yapısı
| Yol | Açıklama |
|---|---|
/etc/letsencrypt/ |
Genel ayarlar ve yapılandırma dosyaları |
/etc/letsencrypt/live/ |
Aktif (sembolik) sertifikalar |
/etc/letsencrypt/archive/ |
Tüm tarihsel sertifika ve key dosyaları |
/etc/letsencrypt/renewal/ |
Yenileme için .conf dosyaları (her domain için) |
2️⃣ Sertifikaların Yedeklenmesi (Tüm Sistem)
#!/bin/bash
set -e
BACKUP_DIR="/root/letsencrypt-backups"
mkdir -p "$BACKUP_DIR"
TIMESTAMP=$(date +%Y%m%d-%H%M%S)
FILENAME="letsencrypt-$TIMESTAMP.tar.gz"
tar -czf "$BACKUP_DIR/$FILENAME" /etc/letsencrypt
echo "✔ Yedekleme tamamlandı: $BACKUP_DIR/$FILENAME"
3️⃣ Sadece Belirli Domain için Yedekleme
DOMAIN="ornekdomain.com"
tar -czf letsencrypt-$DOMAIN.tar.gz \
/etc/letsencrypt/live/$DOMAIN \
/etc/letsencrypt/archive/$DOMAIN \
/etc/letsencrypt/renewal/$DOMAIN.conf
4️⃣ Geri Yükleme İşlemi (Yeni Sunucuya)
scp letsencrypt-*.tar.gz root@192.168.1.20:/root/
tar -xzf letsencrypt-*.tar.gz -C /
chown -R root:root /etc/letsencrypt
chmod -R 750 /etc/letsencrypt
systemctl restart nginx
certbot certificates
5️⃣ Cron ile Otomatik Yenileme Kontrolü
systemctl list-timers | grep certbot
systemctl enable --now certbot.timer
6️⃣ Yedekleri GPG ile Şifreleme (Opsiyonel)
gpg -c /root/letsencrypt-backups/letsencrypt-20251014.tar.gz
7️⃣ AWS S3 veya Google Drive ile Otomatik Yedekleme (Opsiyonel)
rclone copy $ARCHIVE remote:letsencrypt-backups/
8️⃣ DNS Challenge (acme.sh Kullanımı – Alternatif Yöntem)
curl https://get.acme.sh | sh
~/.acme.sh/acme.sh --issue --dns dns_cf -d "hmyn.net" -d "*.hmyn.net"
🔚 Sonuç
Let’s Encrypt otomatik çalışıyor gibi görünse de, her sistem yöneticisinin sertifika dosyalarını manuel olarak yedekleyip geri yükleyebilmesi gerekir.