Süreçlerinize uygun yazılımı birlikte planlayalım. Demo ve teklif için arayın: +90 546 737 48 29

TR EN DE

Web sitesi güvenliği rehberi: nereden başlamalı?

Web Sitesi Güvenliği · Hazırlayan: BYK Yazılım Destek Ekibi · Güncelleme: 04.10.2026

Web sitesi güvenliği tek bir ayar ya da tek bir eklenti değildir; kodun, sunucunun, hesapların, yedeklerin ve izlemenin birlikte çalıştığı bir düzendir. Saldırıların büyük bölümü belirli bir siteyi hedef almaz: otomatik araçlar interneti tarar ve güncellenmemiş yazılım, zayıf parola ya da açıkta bırakılmış dosya bulduğu her siteyi dener. Bu yüzden "bizim site küçük, kim uğraşır" düşüncesi koruma sağlamaz.

Bu rehber, site sahipleri ve geliştiriciler için bir yol haritasıdır: hangi tehditler var, savunma hangi katmanlardan oluşur, işe hangi sırayla başlanır. Her başlığın ayrıntısı kendi rehberinde anlatılır; bağlantılarını aşağıda bulabilirsiniz. Rehberlerin tamamı savunma odaklıdır.

Bu rehberler genel bilgi verir ve kendi sitenizi korumanız içindir. Örnek kodlar PHP ve Apache içindir; kendi ortamınıza uyarlamadan ve denemeden canlıya almayın.

Dört adımda çerçeve

  1. Tehditleri tanıyın

    Web sitelerine yönelik tehditler birkaç ana başlıkta toplanır: kullanıcı girdisinin kod ya da sorgu gibi işlenmesi (SQL enjeksiyonu, XSS), kullanıcının oturumunun kötüye kullanılması (CSRF, oturum çalma), sunucuya zararlı dosya yerleştirilmesi (web shell), parola tahmini, güncellenmemiş yazılımdaki bilinen açıklar, yanlış yapılandırılmış sunucu ve hizmeti erişilemez kılan yoğun trafik (DDoS). OWASP Top 10 listesi bu riskleri düzenli olarak derler; enjeksiyon ve erişim denetimi hataları listenin değişmeyen konularındandır.

    Şema: web sitesi tehdit türleri; enjeksiyon, XSS, CSRF, zararlı dosya, parola tahmini, eski yazılım, yanlış yapılandırma, DDoS
  2. Katmanlı savunma kurun

    Hiçbir önlem tek başına yeterli değildir; bir katman aşılırsa diğeri zararı sınırlamalıdır. Beş katman düşünün: kod (girdi doğrulama, çıktı kaçışlama, hazır ifadeler), sunucu (güncel yazılım, doğru izinler, güvenlik başlıkları), erişim (güçlü parolalar, iki adımlı doğrulama, en az yetki), yedek (geri yüklenebildiği denenmiş kopyalar) ve izleme (günlükler, dosya değişiklikleri, uyarılar).

    Şema: katmanlı savunma; kod, sunucu, erişim, yedek ve izleme katmanları
  3. Öncelik sırasıyla ilerleyin

    Her şeyi aynı anda yapamazsınız. En çok riski en az emekle azaltan işlerden başlayın: önce güncellemeler ve parolalar, sonra yedek, ardından HTTPS ve güvenlik başlıkları, sunucudaki gereksiz dosyaların temizliği, en sonda kodun gözden geçirilmesi ve izleme düzeni. Kod incelemesi en çok emek isteyen iştir ama kendi yazdırdığınız yazılımlarda en kalıcı sonucu verir.

    Akış şeması: güncelleme ve parolalar, yedek, HTTPS ve başlıklar, sunucu temizliği, kod incelemesi, izleme
  4. Düzenli gözden geçirin

    Güvenlik bir kez yapılıp biten bir iş değildir. Yeni eklentiler kurulur, çalışanlar değişir, yazılımlar eskir. Haftalık, aylık ve yıllık kısa kontrollerle düzeni koruyun; hazır bir liste için Web sitesi güvenlik kontrol listesi rehberini kullanabilirsiniz.

    Döngü şeması: önle, izle, müdahale et, öğren ve iyileştir

Tehdit türleri ve ilgili rehberler

Katmanların ayrıntısı

Kod

Temel kural şudur: kullanıcıdan, adres çubuğundan, çerezden, dosyadan ya da başka bir sistemden gelen hiçbir veriye güvenmeyin. Veriyi alırken doğrulayın (beklenen türde ve biçimde mi), veritabanına gönderirken hazır ifade (prepared statement) kullanın, sayfaya basarken bulunduğu bağlama göre kaçışlayın. Yetki kontrolünü her istekte sunucuda yapın; menüde bir bağlantıyı gizlemek yetki kontrolü değildir.

Sunucu

İşletim sistemi, web sunucusu, PHP ve veritabanı güncel ve desteklenen sürümlerde olmalıdır. Dizin listeleme ve ekrana hata basma kapatılmalı, yedek ve yapılandırma dosyaları web kökünde bırakılmamalı, dosya izinleri gereğinden geniş olmamalıdır. Aşağıdaki küçük .htaccess bloğu birkaç hızlı kazanım sağlar; ayrıntıları sunucu ve başlık rehberlerinde bulabilirsiniz.

# Dizin listelemeyi kapat
Options -Indexes

# Nokta ile başlayan dosyalara (.env, .git, .htpasswd) ve
# yedek/döküm uzantılarına dışarıdan erişimi engelle
<FilesMatch "(^\.|\.(sql|bak|old|orig|log|ini|sh|swp)$)">
    Require all denied
</FilesMatch>

# Temel güvenlik başlıkları
<IfModule mod_headers.c>
    Header always set X-Content-Type-Options "nosniff"
    Header always set X-Frame-Options "SAMEORIGIN"
    Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>

Erişim

Barındırma paneli, FTP/SFTP, veritabanı ve yönetim paneli hesaplarının her biri ayrı, uzun ve benzersiz parolaya sahip olmalıdır. Mümkün olan her yerde iki adımlı doğrulamayı açın. Her kişiye kendi hesabını verin; ortak hesap kullanmayın ve işten ayrılanların erişimini aynı gün kapatın. Hesap güvenliği için Güçlü şifre ve şifre yöneticisi ile İki adımlı doğrulama rehberlerine bakın.

Yedek

Dosyaların ve veritabanının düzenli, otomatik ve sunucunun dışında saklanan yedeği olmalıdır. Hiç geri yüklenmemiş yedek, çalıştığı bilinmeyen yedektir; belirli aralıklarla geri yükleme denemesi yapın.

İzleme

Bir saldırıyı ne kadar erken fark ederseniz zarar o kadar küçük olur. Erişim ve hata günlüklerine ara sıra bakın, beklenmedik dosya değişikliklerini izleyin, sitenin erişilebilirliğini dışarıdan kontrol eden bir izleme kurun ve Google Search Console'daki güvenlik sorunları raporunu takip edin.

Küçük bir site için ilk on iş

  1. İçerik yönetim sistemini, eklentileri, temaları ve PHP sürümünü güncelleyin; kullanılmayanları kaldırın.
  2. Barındırma paneli, FTP, veritabanı ve yönetici parolalarını uzun ve benzersiz parolalarla değiştirin.
  3. Yönetici hesaplarında iki adımlı doğrulamayı açın.
  4. Dosya ve veritabanı için otomatik, sunucu dışı yedek kurun; bir kez geri yüklemeyi deneyin.
  5. Tüm siteyi HTTPS'e yönlendirin; sertifikanın otomatik yenilendiğini doğrulayın.
  6. Düz FTP yerine SFTP ya da FTPS kullanın.
  7. Web kökündeki yedek, arşiv, .sql, .env, phpinfo benzeri dosyaları kaldırın; dizin listelemeyi kapatın.
  8. Yükleme klasörlerinde betik çalıştırılmasını kapatın.
  9. Temel güvenlik başlıklarını ekleyin.
  10. Çalışma süresi izleme ve Search Console bildirimlerini açın.

Yazılımı başkası geliştiriyorsa sorulacak sorular

Siteniz bir ajans ya da serbest geliştirici tarafından yazıldıysa şu soruların yanıtını bilmeniz gerekir:

  • Veritabanı sorgularının tamamı hazır ifadelerle mi yazıldı?
  • Parolalar hangi yöntemle saklanıyor? (Beklenen yanıt: password_hash ya da eşdeğeri; MD5 ve SHA-1 kabul edilemez.)
  • Formlarda CSRF koruması var mı?
  • Dosya yükleme varsa hangi türlere izin veriliyor, dosyalar nerede saklanıyor?
  • Kullanılan kütüphaneler ve sürümleri neler, güncellemeleri kim takip ediyor?
  • Yedek nerede, ne sıklıkla alınıyor, en son ne zaman geri yükleme denendi?
  • Sunucu ve yönetim paneli erişimleri kimlerde? Kaynak kodun güncel kopyası sizde mi?
  • Bir güvenlik sorunu çıktığında kime, nasıl ulaşılacak ve ne kadar sürede dönüş yapılacak?

Sık yapılan yanlışlar

  • "SSL var, site güvenli": SSL yalnızca bağlantıyı şifreler; kod ve sunucu açıklarını kapatmaz. Bkz. SSL nedir?
  • Güvenliği gizliliğe bırakmak: Yönetim panelinin adresini değiştirmek ya da bir dosyayı tahmin edilmesi zor bir adla saklamak ek bir önlem olabilir ama asıl koruma değildir.
  • Tek bir eklentiye güvenmek: Güvenlik eklentileri ve güvenlik duvarları yararlıdır, ancak güncellenmemiş yazılımı ve zayıf parolayı telafi etmez.
  • Yedeği aynı sunucuda tutmak: Sunucu ele geçirilirse yedek de gider.
  • Test ve eski sürümleri açık bırakmak: /eski, /test, /yedek gibi klasörlerdeki unutulmuş kopyalar güncellenmez ve en zayıf halka olur.
  • Temizledikten sonra giriş noktasını kapatmamak: Saldırıdan sonra yalnızca zararlı dosyaları silmek yetmez; açık kapatılmazsa site yeniden ele geçirilir.

Büyük kontrol listesi

Kod

  • Tüm sorgular hazır ifadeyle; sıralama ve kolon adları izin listesinden.
  • Tüm çıktılar bağlamına göre kaçışlanıyor.
  • Durum değiştiren her istekte CSRF belirteci ve POST.
  • Her istekte sunucu tarafında oturum ve yetki kontrolü.
  • Parolalar password_hash ile; giriş denemeleri sınırlı.
  • Dosya yüklemede tür, boyut ve ad kontrolü; yürütme kapalı klasör.

Sunucu ve yapılandırma

  • Desteklenen PHP sürümü; güncel CMS, eklenti ve kütüphaneler.
  • HTTPS zorunlu; güvenlik başlıkları tanımlı.
  • Dizin listeleme ve ekrana hata basma kapalı.
  • Web kökünde yedek, .git, .env, phpinfo, kurulum dosyası yok.
  • Dosya izinleri 644, klasörler 755; yapılandırma dosyaları daha kısıtlı.
  • Veritabanı dışarıdan erişime kapalı; uygulama kullanıcısı en az yetkili.

Erişim

  • Her hesap için ayrı, güçlü parola; iki adımlı doğrulama.
  • Kişiye özel hesaplar; ayrılanların erişimi kapalı.
  • SFTP ya da FTPS; düz FTP kapalı.

Yedek ve izleme

  • Otomatik dosya ve veritabanı yedeği; sunucu dışında kopya; geri yükleme denendi.
  • Günlükler tutuluyor ve ara sıra inceleniyor.
  • Çalışma süresi ve dosya değişikliği izleniyor; Search Console bildirimleri açık.
  • Olay anında kimin ne yapacağı yazılı.

Sık sorulan sorular

Küçük bir sitenin saldırıya uğrama olasılığı var mı?

Evet. Saldırıların çoğu otomatik taramalarla yapılır ve sitenin büyüklüğüne bakmaz; güncellenmemiş yazılım ya da zayıf parola bulunan her site hedef olabilir. Ele geçirilen küçük siteler genellikle istenmeyen yönlendirme, spam içerik ya da başka saldırılar için kullanılır.

Güvenlik eklentisi ya da güvenlik duvarı kurmak yeterli mi?

Yararlı bir katmandır ama tek başına yeterli değildir. Güncel yazılım, güçlü parolalar, doğru sunucu yapılandırması ve yedekle birlikte anlam kazanır.

Sitemin güvenli olup olmadığını nasıl anlarım?

Kesin bir "güvenli" durumu yoktur; risk azaltılır. Bu sayfadaki kontrol listesini uygulamak, yazılımı güncel tutmak ve önemli sitelerde bağımsız bir güvenlik testi yaptırmak iyi bir başlangıçtır.

Hazır site (paket) kullanıyorum; bunların hangisi benim sorumluluğumda?

Kod ve sunucu güvenliği büyük ölçüde hizmet sağlayıcıdadır. Hesap parolaları, iki adımlı doğrulama, yetki verdiğiniz kişiler, eklediğiniz üçüncü taraf bileşenler ve içerik yedeği sizin sorumluluğunuzdadır.

BYK Yazılım Destek Ekibi
Bu rehber BYK Yazılım destek ekibi tarafından hazırlanır ve düzenli olarak gözden geçirilir. Son güncelleme: 04.10.2026.

İlgili rehberler

Web sitenizi birlikte gözden geçirelim

BYK Yazılım kurumsal web siteleri geliştirir. Sitenizle ilgili sorularınız için bize yazabilirsiniz.

Bize ulaşın Kurumsal web sitesi hizmetimiz