Ana içeriğe geç

Debian 10 Üzerinde Apache Let's Encrypt Kurulumu — Tam SSL Güvenlik Rehberi

Debian 10 üzerinde çalışan bir Apache web sunucusuna ücretsiz Let’s Encrypt SSL/TLS sertifikası kurmak istiyorsanız, bu rehber size baştan sona eksiksiz bir yol haritası sunar.

Bu doküman, sadece SSL yüklemekle kalmaz;
➡️ HTTPS yönlendirmesi
➡️ Certbot otomatik yenileme
➡️ Apache VirtualHost doğrulama
➡️ Güvenlik duvarı (UFW) ayarları
➡️ En iyi güvenlik uygulamaları
gibi kritik adımları da kapsar.


📌 ÖN KOŞULLAR

Aşağıdaki gereksinimlerin hazır olduğundan emin olun:

  • Debian 10 kurulu bir sunucu (VPS / Dedicated / Cloud instance)
  • sudo yetkisine sahip bir kullanıcı
  • Alan adınızın sunucu IP adresine yönlendirilmiş olması
    Örnek:
    • rabisu.cloud
    • www.rabisu.cloud
  • Apache sanal host dosyanızın oluşturulmuş olması
    Örnek: /etc/apache2/sites-available/rabisu-cloud.conf
  • UFW etkinse gerekli kuralların yönetilebilir olması

1️⃣ Certbot'un Snap ile Kurulumu

Debian 10’daki varsayılan Certbot eski sürüm olduğundan Snap üzerinden güncel sürümünü kuruyoruz.

1.1 Paketleri güncelle

sudo apt update

1. Snapd kur

sudo apt install snapd

2. Snap core güncelle


sudo snap install core
sudo snap refresh core

3. Certbot'u kur


sudo snap install --classic certbot

4. Global symlink oluştur


sudo ln -s /snap/bin/certbot /usr/bin/certbot

2️⃣ Apache VirtualHost Ayarlarını Kontrol Etme

SSL kurulumu öncesi VirtualHost dosyanızda ServerName doğru olmalı.

  • Dosyayı aç:

sudo nano /etc/apache2/sites-available/rabisu-cloud.conf
  • İçinde şu satır olduğundan emin olun:

ServerName rabisu.cloud

  • Apache yapılandırmasını test et:

sudo apache2ctl configtest
  • Hata yoksa yeniden yükle:

sudo systemctl reload apache2

3️⃣ UFW Güvenlik Duvarını Konfigüre Etme

  • HTTPS (443) trafiğini açmanız gerekiyor.

  • Durumu kontrol edin:


sudo ufw status

WWW Full (80 + 443) profiline izin ver:


sudo ufw allow 'WWW Full'

  • Eski WWW kuralını kaldır:

sudo ufw delete allow 'WWW'

4️⃣ Let's Encrypt SSL Sertifikasını Alma

  • SSL sertifikası kurmak için Apache eklentisini kullanıyoruz.

sudo certbot --apache -d rabisu.cloud -d www.rabisu.cloud

Sizden:

  1. e-posta adresi

  2. hizmet şartları onayı

  3. 80 → 443 yönlendirmesi isteyip istemediğiniz sorulur.

  • Sertifika başarıyla kurulunca tarayıcıdan şu şekilde erişebilirsiniz:

https://rabisu.cloud

Kilit simgesi görünüyorsa kurulum tamamdır.


5️⃣ Certbot Otomatik Yenileme Testi

Let’s Encrypt sertifikaları 90 gün geçerlidir. Certbot otomatik yenilemeyi kendi cron işine ekler.

  • Test etmek için:

sudo certbot renew --dry-run

Hata yoksa yenileme otomatik çalışacaktır.


🔒 Ek Güvenlik Önerileri (Tavsiye)

HTTPS'i zorunlu yapma (.htaccess ile)


RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

HSTS etkinleştirme

  • Apache VirtualHost içine ekleyin:

Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"

Sertifika dosyalarını yedekleyin


/etc/letsencrypt/live/alanadiniz/

❓ SSS — Sıkça Sorulan Sorular

1. Certbot neden Snap ile kuruluyor? Debian 10 reposundaki sürüm çok eski ve güncel TLS özelliklerini desteklemiyor. Snap her zaman en güncel güvenli sürümü sağlar.

2. Sertifika nerede saklanıyor? /etc/letsencrypt/live/alanadiniz/

Burayı silmeyin ve mutlaka yedekleyin.


3. HTTP → HTTPS yönlendirmesini Certbot yapmadı, ne yapmalıyım?

VirtualHost dosyanıza bir RewriteRule eklemeniz yeterli.

4. item açılmıyor, neyi kontrol etmeliyim?

  1. 443 portu açık mı?

  2. apache2ctl configtest geçerli mi?

  3. domain DNS A kaydı doğru mu?


🎉 Sonuç

Debian 10 üzerinde Apache + Let's Encrypt kurulumu başarıyla tamamlandı. Artık siteniz tam güvenli HTTPS üzerinden yayın yapıyor.

Uygulamalarınızı güvenle Rabisu Bulut platformunda deneyebilirsiniz.