bg-tutorials

Ubuntu Sunucusuna (Apache) SSL Sertifikası Nasıl Kurulur

Bu eğitimde, Apache ile Ubuntu’ya SSL sertifikası kurulumunu nasıl yapacağınızı öğreneceksiniz.

Ayrıca tüm süreci adım adım anlatan bir video da hazırladık. Metin sürümünü tercih ediyorsanız, okumaya aşağıdan devam edebilirsiniz.

CSR kodu oluşturma

CSR (Sertifika İmzalama Talebi) oluşturmayla başlayacağız. CSR, bir dijital sertifika başvurusu için Sertifika Yetkilisi’ne gönderilen bir taleptir. İki seçeneğiniz var:

Siparişiniz sırasında CSR’yi Sertifika Yetkilisi’ne gönderin. CA doğrulamayı tamamlayıp SSL sertifikanızı verdikten sonra, aşağıdaki kurulum adımlarına devam edin.

Ubuntu Server’a SSL sertifikası kurulumu

Adım 1: Sertifika dosyalarınızı yükleyin

Doğrulama tamamlandığında, Sertifika Yetkilisi size sertifika dosyalarını e-posta ile gönderir. Arşivi çıkarın. Elinizde şunlar olmalı:

  • yourdomain.crt, birincil SSL sertifikanız.
  • yourdomain.ca-bundle, ara sertifikalar (CA bundle).
  • yourdomain.key, CSR ile oluşturduğunuz özel anahtar.

Sertifikayı ve CA bundle’ı /etc/ssl/ dizinine, özel anahtarı ise /etc/ssl/private/ dizinine yükleyin (anahtarın yalnızca root tarafından okunabilir olmasını sağlayın). Apache 2.4.8 ve üzeri sürümlerde (desteklenen tüm Ubuntu sürümleri dahil), sertifika ve CA bundle’ı tek bir tam zincir dosyasında birleştirin:

cat yourdomain.crt yourdomain.ca-bundle > yourdomain_fullchain.crt

Adım 2: SSL modülünü etkinleştirin ve site yapılandırmanızı bulun

Apache’nin SSL modülünü (ve Adım 3’te HSTS için kullanılacak headers modülünü) etkinleştirin:

sudo a2enmod ssl
sudo a2enmod headers

Sitenizin yapılandırma dosyası /etc/apache2/sites-available/ dizininde bulunur (genellikle yourdomain.conf). Dosyayı buradan düzenleyin. sites-enabled/ içindeki dosyalar yalnızca sembolik bağlantılardır (symlink). Site henüz etkinleştirilmediyse, şu komutla etkinleştirin:

sudo a2ensite yourdomain.conf

Not: HTTP (port 80) ve HTTPS (port 443) trafiğini ayrı VirtualHost bloklarından sunun. SSL yönergeleri HTTPS bloğuna eklenir.

Adım 3: HTTPS VirtualHost’unu yapılandırın

Port 443 için VirtualHost’u ayarlayın. Eksiksiz, güncel bir blok şu şekilde görünür; yolları kendi dosyalarınıza göre düzenleyin:

<VirtualHost *:443>
    ServerName  www.yourdomain.com
    DocumentRoot /var/www/yourdomain

    SSLEngine on

    # Apache 2.4.8+ : sertifika + CA bundle tek bir tam zincir dosyasında
    SSLCertificateFile    /etc/ssl/yourdomain_fullchain.crt
    SSLCertificateKeyFile /etc/ssl/private/yourdomain.key

    # Önerilen TLS sıkılaştırması (2026)
    SSLProtocol         -all +TLSv1.2 +TLSv1.3
    SSLHonorCipherOrder off

    # HSTS'yi yalnızca HTTPS'in çalıştığını doğruladıktan sonra etkinleştirin
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
</VirtualHost>
  • SSLCertificateFile: tam zincir dosyanız (sertifika + ara sertifikalar). Apache 2.4.8+ sürümlerinde bu, kullanımdan kaldırılan SSLCertificateChainFile‘ın yerini alır.
  • SSLCertificateKeyFile: CSR ile oluşturduğunuz özel anahtar.

Eski Apache sürümleri (2.4.8’den önceki): sertifikayı ve zinciri ayrı tutun ve sertifika dosyanız değil, CA bundle‘ı gösteren SSLCertificateChainFile /etc/ssl/yourdomain.ca-bundle satırını ekleyin.

Adım 4: HTTP’yi HTTPS’e yönlendirin

Ziyaretçilerin her zaman güvenli sürüme ulaşması için, HTTPS’e yönlendirme yapan bir port 80 VirtualHost’u ekleyin:

<VirtualHost *:80>
    ServerName www.yourdomain.com
    Redirect permanent / https://www.yourdomain.com/
</VirtualHost>

Adım 5: Yapılandırmayı test edin

Yeniden yüklemeden önce her zaman test edin; bir sözdizimi hatası siteyi çevrimdışı bırakabilir:

sudo apache2ctl configtest

Syntax OK mesajını görmelisiniz. Bir hata alırsanız, devam etmeden önce önceki adımları gözden geçirin.

Adım 6: Apache’yi yeniden yükleyin

Değişiklikleri uygulamak için Apache’yi yeniden yükleyin (yeniden yükleme, bağlantıları kesmeden yeni yapılandırmayı etkinleştirir):

sudo systemctl reload apache2

Tebrikler, SSL sertifikanız şimdi Ubuntu sunucunuza kurulmuş durumda. Sonucu doğrulamak ve anında bir durum raporu almak için SSL Checker‘ımızı kullanın.

Ubuntu Server İçin SSL Sertifikası Nereden Satın Alınır?

SSL Dragon, tüm SSL ihtiyaçlarınız için başvuru kaynağınızdır. Tüm SSL ürün yelpazemizde piyasadaki en uygun fiyatları sunuyoruz ve güçlü güvenlik ile özel destek için sektörün en iyi SSL markalarıyla iş birliği yapıyoruz. Tüm SSL sertifikalarımız Ubuntu sunucularıyla uyumludur.

Sıkça Sorulan Sorular

Ubuntu’da bir SSL sertifikasının kurulu olup olmadığını nasıl öğrenirim?

OpenSSL ile sitenize bağlanın ve sunulan sertifikayı okuyun:
echo | openssl s_client -connect yourdomain.com:443 -servername yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -dates
Bir sertifika kuruluysa, bu komut sertifikanın verenini ve geçerlilik tarihlerini yazdırır. Apache’nin etkin sanal ana bilgisayarlarını sudo apache2ctl -S komutuyla da listeleyebilir veya sitenizi bir tarayıcıda açıp kilit simgesini kontrol edebilirsiniz.

Ubuntu’da SSL sertifikasını nereye koyarım?

Geleneksel olarak, sertifikalar /etc/ssl/certs/ (veya /etc/ssl/) dizinine, özel anahtarlar ise /etc/ssl/private/ dizinine yerleştirilir. Bunlar varsayılan konumlardır; VirtualHost’unuz doğru yolu gösterdiği sürece başka konumlar da kullanabilirsiniz.

Ubuntu’da Apache site yapılandırması nerede bulunur?

Site yapılandırma dosyaları /etc/apache2/sites-available/ dizininde bulunur (örneğin yourdomain.conf) ve etkinleştirilen siteler /etc/apache2/sites-enabled/ dizinine sembolik bağlantı olarak eklenir. Bir siteyi sudo a2ensite yourdomain.conf komutuyla etkinleştirebilirsiniz.

Ubuntu’da sertifikayı ve CA bundle’ı birleştirmem gerekir mi?

Apache 2.4.8 ve sonraki sürümlerde (desteklenen tüm Ubuntu sürümleri), evet: sertifikanızı ve CA bundle’ınızı tek bir dosyada birleştirip SSLCertificateFile‘ın bu dosyayı göstermesini sağlayın. Ayrı SSLCertificateChainFile yönergesi kullanımdan kaldırılmıştır ve yalnızca eski Apache sürümlerinde gereklidir.

Sonuç olarak

Apache ile Ubuntu’ya SSL sertifikası kurmak; dosyalarınızı yüklemek, mod_ssl‘i etkinleştirmek, tam zincir sertifikanızla HTTPS VirtualHost’unu yapılandırmak, sudo apache2ctl configtest ile test etmek ve Apache’yi yeniden yüklemekten ibarettir. Önce bir sertifikaya mı ihtiyacınız var? SSL sertifikaları sayfamıza göz atın.

Bugün SSL Dragon’dan sipariş vererek SSL Sertifikalarında %10 indirimden yararlanın!

Hızlı düzenleme, güçlü şifreleme, %99,99 tarayıcı güvenilirliği, özel destek ve 25 günlük para iade garantisi. Kupon kodu: SAVE10

A detailed image of a dragon in flight
Tarafından yazıldı

SSL Sertifikaları konusunda uzmanlaşmış deneyimli içerik yazarı. Karmaşık siber güvenlik konularını açık, ilgi çekici içeriğe dönüştürmek. Etkili anlatımlar yoluyla dijital güvenliğin geliştirilmesine katkıda bulunun.