Ana içeriğe geç

Let’s Encrypt Hataları ve Çözümleri

Bu rehberde ne öğreneceksiniz?

Bu rehber, Let’s Encrypt kullanırken karşılaşılan yaygın SSL ve DNS hatalarını ele alır.
Nginx ve Ubuntu üzerinde bu hataların nasıl teşhis edileceğini ve çözüleceğini öğrenirsiniz.
Amaç, HTTPS yapılandırmasını hızlı ve doğru şekilde tamamlamaktır.


Teknik Özet

Ana konu: Let’s Encrypt SSL hatalarının giderilmesi
Çözülen problem: HTTPS kurulumu sırasında oluşan DNS, firewall ve sertifika sorunları
Kazanım: Kararlı ve güvenli HTTPS yapılandırması

İzlenen adımlar:

  1. DNS kayıtlarını doğrulama
  2. Sertifika süresi ve yenileme sorunlarını çözme
  3. Mixed content hatalarını giderme
  4. Certbot bağlantı ve firewall hatalarını çözme
  5. Manuel HTTPS yapılandırmasını kontrol etme

1. DNS Kayıtlarını Kontrol Etme

Let’s Encrypt hatalarının büyük bölümü DNS kaynaklıdır.
Alan adınız doğru IP adresine yönlenmelidir.

DNS çözümlemesini test edin

nslookup rabisu.cloud
  • Bu komut, alan adının hangi IP adresine çözümlendiğini gösterir.

  1. DNS değişiklikleri hemen yayılmayabilir.
  • Yayılım süresi genellikle 5–30 dakika arasındadır.

TTL değeri yüksekse yayılım daha uzun sürer. Test sırasında TTL geçici olarak düşürülebilir.


2. Sertifika Süresi Dolmuş Hatalar

  1. Let’s Encrypt sertifikaları 90 gün geçerlidir.
  • Yenilenmeyen sertifikalar tarayıcı hatası üretir.
  1. Sertifikayı manuel yenileyin

sudo certbot renew --nginx -d rabisu.cloud -d www.rabisu.cloud
  • Bu komut, mevcut sertifikaları yeniler.

  1. Yenilemeden sonra Nginx yeniden başlatılabilir.

sudo systemctl restart nginx
  • Bu komut, yeni sertifikaların aktif olmasını sağlar.

3. Mixed Content (Karışık İçerik) Hataları

  1. HTTPS sayfa içinde HTTP içerik çağrılırsa tarayıcı uyarı verir.
  • Bu durum genelde proxy veya eski linklerden kaynaklanır.
  1. Nginx SSL yönlendirme başlıkları ekleyin

location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Proto https;
}
  • Bu ayarlar, arka uç uygulamaya HTTPS bilgisini iletir.

Ayrıca tüm asset bağlantıları HTTPS olmalıdır.


4. Certbot Timeout ve Firewall Hataları

  1. Certbot doğrulama sırasında sunucuya erişemezse işlem başarısız olur. Bu durum genelde firewall kaynaklıdır.

  2. Gerekli portları açın


sudo ufw allow 'Nginx Full'
  • Bu komut, 80 ve 443 portlarını açar.

Ardından certbot’u tekrar çalıştırın.


sudo certbot --nginx -d rabisu.cloud
  • Çok sık deneme yapılırsa geçici limit uygulanır. Bu durumda yaklaşık 1 saat beklenmelidir.

5. HTTPS Çalışmıyor Ama Hata Yok

Certbot sertifikayı almış olabilir. Ancak Nginx yapılandırması HTTPS’e geçmemiş olabilir.

  1. Temel HTTPS yapılandırması örneği

listen 443 ssl;

ssl_certificate /etc/letsencrypt/live/rabisu.cloud/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/rabisu.cloud/privkey.pem;

if ($scheme != "https") {
return 301 https://$host$request_uri;
}
  • Bu yapılandırma, HTTPS dinler ve HTTP’yi yönlendirir.

  • Değişiklikleri test edin.

sudo nginx -t
sudo systemctl restart nginx
  • Bu komutlar, yapılandırmayı doğrular ve uygular.

Sıkça Sorulan Sorular

1. DNS doğru ama certbot hata veriyor, neden? DNS yayılımı tamamlanmamış olabilir.

2. Sertifika otomatik yenilenmezse ne olur? Tarayıcılar siteyi güvensiz gösterir.

3. Mixed content hatası tehlikeli mi? Evet, tarayıcı güvenlik seviyesini düşürür.

4. Sadece 443 açmak yeterli mi? Doğrulama için genelde 80 de gereklidir.


Sonuç

Let’s Encrypt hataları çoğunlukla DNS ve yapılandırma kaynaklıdır. Doğru kontrollerle bu sorunlar hızlıca çözülebilir. HTTPS yapılandırması tamamlandığında siteniz güvenli hale gelir.

Bu süreçleri Rabisu Bulut altyapısında kolayca uygulayabilirsiniz.