SSL Sertifikası Nedir? SSL Nasıl Kurulur? [2024 Kurulumu]

Web sitesi sahiplerinin sadece %40’ı HTTPS protokolü kullanıyor olsa da, bir SSL sertifikası sahibi olduğunuzda web siteniz, bilgileri güvenli bir şekilde aktarmak için HTTPS protokolünü kullanabilir. Bu bilgiler, ödeme sayfalarındaki kredi kartı ile oturum açma verileri ve iletişim formlarındaki kişisel olarak tanımlanabilir bilgiler birçok gibi hassas veriyi içerir. Doğal olarak, bu bilgilerin güvenli bir şekilde aktarılması önemlidir.

SSL Sertifikasının güvenlik konusunda sunduğu faydalara ek olarak, bu sertifikayı kullanan web siteleri Google’da daha iyi sıralamalar elde ederek performanslarını arttırırlar.

Ancak, SSL’nin web sitenizi korumadığını anlamak da önemlidir. Bu rehberde sizlere SSL sertifkası ile ilgili bilmeniz gereken değerli bilgileri aktaracağız. Keyifli okumalar dileriz!

SSL sertifikasına dair ve web sitenizin gelişimi açısından doğru stratejik bilgileri edinmek, güvenlik ile ilgili aksiyonları doğru öğrenip uygulamak için bir SEO Danışmanlığı alabilirsiniz.

SSL Sertifikası Nedir? Ne İşe Yarar?

SSL Sertifikası yukarıda da belirttiğimiz gibi web sitelerin güvenli bir şekilde bilgi aktarabilmesi için HTTPS protokolünü uygulamalarına izin veren sertifikadır. Sitenizin güvenliğini arttırmanın yanı sıra SEO çalışmalarınıza fayda sağlayarak sitenizin arama sorgularındaki sıralamasını da yukarı taşımaya yardımcı olur.

Ve artık web sitenizde HTTPS kullanmak gerçekten çok kolay bir hale geldi. Yeni başlayanlar, kendi hosting şirketleri ile sundukları seçenekler hakkında konuşabilirken, web sitenize SSL eklemenin birçok yolu vardır.

SSL Sertifikası Türleri Nelerdir?

SSL Sertifikası Türleri Nelerdir?
SSL Sertifikası Türleri Nelerdir?

Bilmeniz gereken birbirinden farklı 3 adet SSL sertifikası türü vardır:

  • Domain Validated (DV)

DV sertifikaları diğerlerine kıyasla alınımı daha kolay olan sertifika türüdür. Elle kimlik doğrulaması gerektirmeyen DV sertifikaları, yalnızca başvuran kişinin kendi sitesinde kullandığı domain’in sahibi olduğunu onaylayan otomatik bir doğrulama işlemi gerçekleştirir. Ziyaretçiler ise adres çubuğunda bir kilit simgesi görecektir ancak sertifika sahibi hakkında bir bilgi sahibi olmayacaktır.

  • Organization Validated (OV)

OV sertifikaları ise talebi yapan işletmenin sisteme kayıtlı ve meşru bir işletme olduğunu doğrulamak için bir sertifika yetkilisi gerektirir. Domain validated sertifikaların aksine siteyi ziyaret eden kullanıcılar tarayıcılarındaki yeşil kilit simgesine tıkladıklarında işletme adını görebilirler.

  • Extended Validation (EV)

EV sertifikaları ise sertifika yetkilisinin kuruluşu doğrulaması için birçok belge talep eder. Bu anlamda, bu sertifikalar sadece resmi belgeler ile alınabiliyorken, firma doğrulamasını da şart tutar. Ziyaretçiler, adres çubuğunda işletmenin adını görebilirler. Genellikle kurumsal işletmeler ve online ticaret siteleri tarafından tercih edilirler.

Ücretli ve Ücretsiz SSL Sertifikalarının Farkları Nelerdir?

Ücretli sertifikalar aynı zamanda ticari sertifikalar olarak da bilinirken ücretsiz sertifikalar daha serbesttir.

  • Ücretli SSL sertifikası

Ücretli sertifikalar birçok web sitesi sahibi ve işletmenin tercihidir. Bir sertifika yetkilisine ya da hosting sağlayıcınıza ödeme yaparak teknik desteğin faydalarından yararlanabilir hale gelirsiniz. Şifreleme düzeyi, ücretsiz SSL sertifikası ile aynıdır, ancak buradaki temel fark sertifikanızla alacağınız teknik destek olacaktır.

  • Ücretsiz SSL sertifikası

Ödeme gerektirmeyen SSL sertifikası tüm web sitesi sahipleri için erişilebilir halde olan sertifika türüdür. Şifreleme düzeyleri ücretli sertifikalar ile aynıdır ancak teknik destek sunmazlar. Let’s Encrypt tarafından sağlanırlar.

WAF Nedir? Ne İşe Yarar?

Türkçe açılımı web uygulaması güvenlik duvarı olan WAF, bir web uygulaması ile internet arasındaki HTTP trafiğini filtreleyip izleyerek web uygulamalarının sahtecilik, siteler arası komut dosyası çalıştırma (XSS), dosya ekleme ve SQL enjeksiyonu gibi saldırılara karşı korunmasına yardımcı olur. Her türlü saldırıya karşı koruma sağlamak için tasarlanmamıştır ancak saldırı azaltma yöntemleri ile çeşitli saldırı ihtimallerine bütünsel bir savunma oluşturur.

Bir web uygulamasının önüne bir WAF yerleştirdiğiniz zaman web uygulaması ile internet arasına bir kalkan yerleştirmiş gibi olursunuz. Örneğin bir proxy sunucusu, bir aracı kullanarak bir istemci makinesinin kimliğini korurken WAF istemcilerin sunucuya ulaşmadan önce WAF’tan geçmesini sağlar. Yani sunucuyu açıktan koruyan bir çeşit ters proxy işlevi görür.

WAF, bir dizi kural aracılığıyla çalışır. Bu kurallar, kötü niyetli trafiği filtreleyerek uygulamadaki güvenlik açıklarına karşı koruma sağlamayı amaçlar. Bir WAF’nin değeri değişken saldırılara daha hızlı yanıt verilmesine olanak tanıyan hızı ve kolaylığından gelir. Örneğin, DDoS saldırısı sırasında, WAF ilkeleri değiştirilerek hız sınırlaması kolayca uygulanabilir.

WAF’ın engellenenler ve izin verilenler listeleri vardır. Engellenenler listesini maskeli baloya kostümsüz gelen misafirleri içeri almamakla görevlendirilmiş bodyguard olarak düşünebilirsiniz. Kendi kurallarına uymayan trafiği içeri almaz. İzin verilenler listesi ise yalnızca önceden onaylanmış trafiği kabul eder. Yani, VIP bir partiye dışarıdan kimsenin alınmaması gibi düşünülebilir.

Cpanelde Ücretsiz SSL Nasıl Kurulur?

Yukarıda da bahsettiğimiz gibi Let’s Encrypt, ücretsiz SSL sertifikasında uzmanlaşmış bir sertifika yetkilisidir. Kurulum için ilk olarak cPanel’de Let’s Encrypt eklentisi kurmalısınız.

  • SSH ile kök kullanıcı olarak sunucunuza giriş yapın ve aşağıdaki komutu girin

/scripts/install_lets_encrypt_autossl_provider

  • Komut dosyası eklentileri yükleyecektir. Eğer bu dosyası silmek isterseniz yukarıdaki kodda “install” yerine “uninstall” yazmanız yeterlidir.
  • WHM’de Let’s Encrypt AutoSSL sağlayıcısını etkinleştirmeniz gerekmekte.
  • WHM’yi açın ve kenar çubuğu menüsünde SSL/TLS altında bulacağınız Manage AutoSSL sayfasına gidin,
  • AutoSSL Sağlayıcıları altında Let’s Encrypt’i seçin,
  • Let’s Encrypt’i kullanmak için sağlayıcının hizmet şartlarını kabul edin.
  • Kaydet butouna tıkladığınızda cPanel Let’s Encrypt’e geçecektir.
  • Manage AutoSSL’e geri dönün ve Run AutoSSL for All Users (Tüm kullanıcılar için çalıştır) yazan yere tıklayın. cPanel, kaldırılan sertifikaları Let’s Encrypt sağlayıcısından alınan sertifikalarla yeniden oluşturacaktır.

Düzenlemeler yapmak isteyebileceğiniz bazı cPanel Let’s Encrypt eklenti yapılandırmaları bulunur. Bunları Manage AutoSSL bölümündeki Options kısmında bulabilirsiniz. Burada, AutoSSL için kullanıcı ve yönetici bildirimlerini yapılandırabilirsiniz.

HSTS Nedir?

HSTS Nedir?
HSTS Nedir?

HSTS açılım olarak HTTP Strict Transport Security anlamına gelir. Web siteleri tarafından yalnızca güvenli bir bağlantı, yani HTTPS, kullanılarak erişilmesi gerektiğini bildirmek için kullanılır.

Bir web sitesi bir HSTS politikası ilan ederse, tarayıcının tüm HTTP bağlantılarını reddetmesi ve kullanıcıların güvenli olmayan SSL sertifikasını kabul etmesini engellemesi gerekir. HSTS şu anda çoğu büyük tarayıcı tarafından desteklenmektedir. Bu güvenlik standardının kullanılmasının arkasındaki amaç SSL stripping kullanan man-in-the-middle (MITM) saldırılarının meydana gelmesini önlemektir.

SSL stripping kötü niyetli bir saldırganın hassas bilgileri ele geçirebilmek veya değiştirebilmek için tarayıcıyı HTTP kullanarak bir siteye bağlanmaya zorladığı bir tekniktir. Ek olarak, HSTS, kendinizi çerez hırsızlığından korumak için de iyi bir yöntemdir.

Karmaşık terimlerle kafanızı bulandırmadan basit bir örnek ile açıklayalım. Bir siteye girmek istediğinizde arama çubuğuna genellikle www.site.com şeklinde bir sorgu girersiniz, bu adresin başına http:// eklemezsiniz. Böyle bir durumda tarayıcı, HTTP protokolünü kullanmak istediğinizi varsayar ve böylece erişmek istediğiniz siteye bir HTTP isteğinde bulunur. Bu aşamada web sunucusu, HTTPS sitesine işaret eden bir yönlendirme ile yanıt verir ve tarayıcı site ile HTTPS bağlantısı kurar.

HSTS, tarayıcıya özel talimatlar verir ve HTTP bağlantılarına kesinlikle izin vermez. Tarayıcı, HTTP kullanarak bir kaynak yükleme isteği alırsa, bunun yerine bir HTTPS isteği denemesi gerekir. HTTPS mevcut değilse, bağlantı sonlandırılmalıdır.

İlgili Makale: HTTP Nedir? HTTP Durum Kodları Nedir? Nasıl Düzeltilir?

X-Frame-Options Nedir? Nasıl Kurulur?

X-Frame-Options web sitenizde Clickjacking güvenlik açığını önlemek için kullanılır. Bu başlığı uygulayarak, tarayıcıya web sayfanızı bir frame / iframe içine gömmemesini söylersiniz. Ancak bunun tarayıcı desteğinde bazı sınırlamaları vardır, bu yüzden uygulamadan önce kontrol etmelisiniz. Aşağıdaki 3 parametreyi kontrol edin:

  • Sameorigin Parametre: Frame/ iframe içeriklerine yalnızca aynı site kaynağından izin verilir,
  • Deny: Herhangi bir domain’in frame/ iframe kullanarak içeriğinizi yerleştirmesini önleyin,
  • Allow-from: İçeriğin yalnızca belirli bir URI’de çerçevelenmesine (framing) izin verin.

Deny parametresini nasıl uygulayacağınıza bakalım:

Apache Sunucularda X-Frame-Options

Aşağıdaki satırı httpd.conf içine ekleyin ve sonuçları doğrulamak için web sunucusunu yeniden başlatın:

Header always append X-Frame-Options DENY

Nginx Sunucularda X-Frame-Options

add_header X-Frame-Options “DENY”; kodunu nginx.conf dosyasına sunucu yönergesi altına ekleyin ve sonuçları doğrulamak için yeniden başlatın.

WordPress Sitelerde X-Frame-Options

Aşağıdakileri bir wp-config.php dosyasına ekleyin:

header(‘X-Frame-Options: DENY);

Microsoft IIS Sunucularda X-Frame-Options

İlgili site için “HTTP Response Headers” kısmına giderek başlığı ekleyin.

Name: X-Frame-Options

Value: Deny

Sonuçları görmek için siteyi yeniden başlatın.

X-Content-Type-Options Nedir? Nasıl Kurulur?

X-Content-Type-Options bu üstbilgi başlığını web sayfanızın HTTP yanıtına ekleyerek MIME türünde saldırılara karşı güvenlik riskini önlemenize yarar. Bu başlığa sahip olmak, tarayıcıya dosya türlerini tanımlı olarak kabul etmesi ve içeriğin çekilmesine izin vermemesi talimatını verir. Bunun için “nosniff” parametresi eklemeniz gerekmektedir.

Apache Sunucularda X-Content-Type-Options

Bunu yapmak için httpd.conf dosyasına aşağıdaki satırı ekleyin:

Header set X-Content-Type-Options nosniff

Sonuçların çalışıp çalışmadığını kontrol etmek için yeniden başlatın.

Nginx Sunucularda  X-Content-Type-Options

Aşağıdaki satırı nginx.conf dosyasına sunucu bloğunun altına ekleyin:

add_header X-Content-Type-Options nosniff;

Sonuçların çalışıp çalışmadığını kontrol etmek için yeniden başlatın.

Microsoft IIS Sunucularda  X-Content-Type-Options

IIS’yi açın ve HTTP Response Headers kısmına gidin. Ekle’ye tıklayın ve Name ile Value değerlerini girin.

Name: X-Content-Type-Options

Value: nosniff

Tamam’a tıklayın ve her zaman yaptığımız gibi sonuçları görmek için yeniden başlatın.

Content Security Policy (İçerik Güvenlik Politikası) Nasıl Kurulur?

Web sayfanızın HTTP yanıtında Content Security Policy (CSP) başlığını kullanarak XSS, clickjacking, kod enjeksiyon saldırılarını önlersiniz. CSP, tarayıcıya web sitesinde yüklenmesine izin verilen içeriği yüklemesini söyler.

Ancak tüm tarayıcılar CSP’yi desteklemez, bu nedenle uygulamadan önce doğrulamanız gerekebilir. CSP başlıklarını elde etmenin üç yolu vardır:

  • Content-Security-Policy: Level 2/1.0
  • X-Content-Security-Policy: Kullanımdan kaldırıldı
  • X-Webkit-CSP: Kullanımdan kaldırıldı

Eğer hala kullanımdan kaldırılmış olanlardan birini kullanıyorsanız en yenisine yükseltmelisiniz. Burada iki parametre değeri vardır:

  • default-src: Tanımlı bir kaynaktan her şeyi yüklemeye izin verir.
  • script-src: Script’i yalnızca tanımlı bir kaynaktan yüklemeye izin verir.

Aşağıda örnekleri bulabilirsiniz:

  1. Apache için aşağıdakileri httpd.conf dosyasına ekleyin ve yine etkili olup olmadığını kontrol etmek için web sunucusunu yeniden başlatın.

Header set Content-Security-Policy “default-src ‘self’;”

  1. Nginx için aşağıdakileri nginx.conf dosyasındaki sunucu bloğuna ekleyin, yeniden başlatın.

add_header Content-Security-Policy “default-src ‘self’;”;

  1. Microsoft IIS için HTTP Headers’a gidin ve,

Name: Content-Security-Policy

Value: default-src ‘self’ olacak şekilde ayarlayıp kaydedin, yeniden başlatın.

X-Permitted-Cross-Domain-Policies Nasıl Kurulur?

Adobe ürünleri kullanıyorsanız tarayıcıya bir etki alanları arası isteklerin nasıl işleneceği konusunda talimat vermek için bu başlığı uygulayabilirsiniz. Bu başlığı uygulayarak, kaynakların kötüye kullanılmasını önlersiniz ve sitenizin varlıklarının diğer alanlardan yüklenmesinin önüne geçersiniz.

Uygulayabileceğiniz bazı seçenekler şöyledir:

  • None: Hiçbir eyleme izin verilmez
  • Master-only: Yalnızca ana ilkeye izin verilir
  • All: Her şeye izin verilir
  • By-content-only: Sadece belirli türde içeriklere izin verilir

Apache için none kullanırken: Header set X-Permitted-Cross-Domain-Policies “none”

Nginx için master-only kullanırken aşağıdakini nginx.conf’a sunucu bloğunun altına ekleyin:

add_header X-Permitted-Cross-Domain-Policies master-only;

Referrer-Policy Nasıl Kurulur?

Sitenizin yönlendirme politikasını kontrol etmek istiyorsanız referrer-policy kurmanız gerekmektedir. Ayrıca, belli başlı gizlilik ve güvenlik avantajları vardır. Ancak, her zaman olduğu gibi tüm seçenekler tüm tarayıcılar tarafından desteklenmemektedir, bu nedenle uygulamadan önce gözden geçirmeniz önerilir.

Referrer-Policy aşağıdakileri destekler:

  • No-referrer: Yönlendirme bilgileri istekle birlikte gönderilmeyecektir,
  • No-referrer-when-downgrade: Yönlendirenin HTTP’den HTTP’ye, HTTPS’den HTTPS’ye aynı protokole gönderildiği varsayılan ayar,
  • Unsafe-URL: Tam URL istekle birlikte gönderilecektir,
  • Same-origin: Yönlendiren yalnızca aynı menşeli siteler için gönderilecektir,
  • Strict-origin: Yalnızca bir protokol HTTPS olduğunda gönderilecektir,
  • Strict-origin-when-cross-origin: Tam URL, HTTPS gibi katı bir protokol üzerinden gönderilecektir,
  • Origin: Tüm isteklerde kaynak URL gönderilecektir,
  • Origin-when-cross-origin: Full URL’I aynı kaynaktan gönderecektir.

Apache için no-referrer kurmak isterseniz: Header set Referrer-Policy “no-referrer”

Nginx için same-origin kurmak isterseniz: add_header Referrer-Policy same-origin;

Expect-CT Nasıl Kurulur?

Hala deneme sürecinde gözüken yeni bir başlık Expect-CT, tarayıcıya sertifika şeffaflığı (certificate transparency) için web sunucularıyla bağlantıyı doğrulama talimatını vermektir. Google’ın bu projesi, SSL/TLS sertifika sistemindeki bazı kusurları düzeltmeyi amaçlıyor.

Expect-CT başlığı için aşağıdaki üç değişken kullanılabilir:

  • Max-age: Saniye cinsinden tarayıcının ilkeyi ne kadar süreyle önbelleğe alması gerektiğidir,
  • Enforce: Politikayı uygulamak için isteğe bağlı bir yönergedir,
  • Report-uri: Geçerli sertifika şeffaflığı alınmadığında belirtilen URL’ye bir rapor göndermek için gereken tarayıcı.

Apache için report-uri kurmak isterseniz (12 saatliğine / dakika cinsinden): Header set Expect-CT ‘enforce, max-age=43200, report-uri=”https://alanadı.com/report”‘

Nginx için 1 saatlik report-uri kurmak isterseniz: add_header Expect-CT ‘max-age=60, report-uri=”https://mydomain.com/report”‘;

Permissions-Policy Nasıl Kurulur?

Daha önce Feature Policy olarak bilinen Permission-Policy gelişmiş özelliklere sahip bir ilkedir.

Permission-Policy ile, bir web uygulamasında coğrafi konum, tam ekran, hoparlör, USB, otomatik oynatma, hoparlör, mikrofon, ödeme, pil durumu gibi birçok tarayıcı özelliklerini etkinleştirip devre dışı bırakabilirsiniz. Bu politikayı uygulayarak, sunucunuzun bir istemciye (tarayıcıya) web uygulaması işlevine uyması talimatını vermesini sağlarsınız.

Apache’de tam ekranı devre dışı bırakmak istiyorsunuz diyelim, aşağıdaki kodları httpd.conf veya apache2.conf dosyasına ekleyebilirsiniz:

Header always set Permissions-Policy “fullscreen ‘none’ ”

Eğer hem tam ekranı hem mikrofonu aynı anda devre dışı bırakmak isterseniz: Header always set Permissions-Policy “fullscreen ‘none’; microphone ‘none'”

Clear-Site-Data Nasıl Kurulur?

Aslında adından da anlaşılacağı gibi Clear-Site-Data kurulumu uygulamak, bir müşteriye önbellek, depolama, tanımlama bilgileri gibi tarama verilerini temizlemesini söyler. Bu, web sitesinin verilerini tarayıcıda nasıl saklamak istediğiniz konusunda size daha fazla kontrol sağlar.

Apache için önbellek temizlemek istiyorsunuz diyelim: Header always set Clear-Site-Data “cache”

Eğer bu kurulumlar sizin için karışık işlemlere tekabül ediyorsa kurumları sağlamak ve SSL sertifikasını düzgün bir şekilde işletmek için bir SEO firması ile anlaşmayı düşünebilirsiniz.

Sosyal medyada paylaş