WordPress Güvenlik Ayarları
WordPress güvenlik ayarları, web sitenizin dijital dünyada güvende kalması için yapmanız gereken en kritik düzenlemelerdir. WordPress, dünyanın en popüler içerik yönetim sistemi olmasının yanı sıra, bu popülaritesi nedeniyle siber saldırganların hedefinde olan bir platformdur. Her gün binlerce WordPress sitesi hack girişimine maruz kalır ve yetersiz güvenlik önlemleri alan siteler büyük risklerle karşı karşıya kalır. Ancak doğru güvenlik ayarlarını yaparak, web sitenizi güvenli bir kale haline getirebilir ve potansiyel tehditleri etkisiz hale getirebilirsiniz.
Güvenlik, tek seferlik bir işlem değil, sürekli devam eden bir süreçtir. WordPress güvenlik ayarları, temel konfigürasyonlardan gelişmiş koruma katmanlarına kadar geniş bir yelpazede uygulanmalıdır. Kullanıcı yönetimi, dosya izinleri, veritabanı güvenliği, SSL sertifikası, güvenlik duvarları ve düzenli güncellemeler gibi farklı katmanlarda koruma sağlamak gerekir. Her güvenlik açığı, potansiyel bir giriş noktası oluşturur ve siber saldırganlar bu zayıf noktaları bulmak için sürekli tarama yaparlar.
WebAcil olarak, yüzlerce WordPress sitesinin güvenliğini sağladık ve çeşitli saldırı türleriyle mücadele deneyimi kazandık. Bu kapsamlı rehberde, başlangıç seviyesinden ileri düzeye kadar tüm WordPress güvenlik ayarlarını adım adım açıklayacak, yaygın güvenlik hatalarını vurgulayacak ve web sitenizi maksimum düzeyde koruyacak stratejileri paylaşacağız. Güvenlik konusunda proaktif olmak, reaktif olmaktan her zaman daha iyidir – saldırıya uğradıktan sonra önlem almak yerine, saldırıları baştan engelleyin.
Temel WordPress Güvenlik Ayarları: İlk Adımlar
WordPress güvenlik ayarları yapılırken ilk adım, temel güvenlik önlemlerini almaktır. Bu adımlar, teknik bilgi gerektirmez ancak sitenizin güvenliğinde büyük fark yaratır. Güçlü şifreler kullanmak, WordPress güvenliğinin en temel taşıdır. Yönetici hesabınız için en az 12 karakter uzunluğunda, büyük-küçük harf, sayı ve özel karakter içeren karmaşık bir şifre oluşturun. “admin123”, “password” gibi tahmin edilebilir şifreler asla kullanmayın. Şifre yöneticisi araçları (LastPass, 1Password, Bitwarden) kullanarak güçlü ve benzersiz şifreler oluşturun.
Varsayılan “admin” kullanıcı adını değiştirmek kritik önem taşır. Saldırganlar genellikle “admin” kullanıcı adıyla brute force (kaba kuvvet) saldırıları yapar. WordPress kurulumu sırasında farklı bir kullanıcı adı seçin veya mevcut admin hesabını değiştirin. Yeni bir yönetici hesabı oluşturun, eski admin hesabını silin ve tüm içerikleri yeni hesaba aktarın. E-posta adresinizi kullanıcı adı olarak kullanmaktan kaçının; bu da tahmin edilebilir bir bilgidir.
İki faktörlü kimlik doğrulama (2FA), güvenlik katmanınızı ikiye katlar. Şifrenize ek olarak, telefonunuza gelen bir kod veya authenticator uygulaması (Google Authenticator, Authy) kullanarak ikinci bir doğrulama adımı eklersiniz. Wordfence, iThemes Security veya Google Authenticator eklentileriyle kolayca 2FA kurabilirsiniz. Böylece, şifreniz ele geçirilse bile, saldırganlar ikinci faktör olmadan giriş yapamaz.
Düzenli güncellemeler, güvenliğin temel taşlarındandır. WordPress çekirdeği, temalar ve eklentiler için otomatik güncellemeleri aktif edin. Güvenlik yamaları genellikle güncellemelerle gelir ve eski versiyonlar bilinen güvenlik açıklarına sahip olabilir. Her güncelleme öncesi yedek almayı unutmayın. “Ayarlar > Genel” bölümünden otomatik güncellemeleri yapılandırabilirsiniz. Kullanmadığınız temaları ve eklentileri silin; her kurulu eklenti potansiyel bir risk oluşturur.
WordPress versiyonunu gizlemek, saldırganların siteniz hakkında bilgi toplamasını zorlaştırır. Varsayılan olarak, WordPress header’da ve footer’da versiyon numarasını gösterir. wp_head ve RSS feed’lerden versiyon bilgisini kaldırmak için functions.php dosyasına kod ekleyebilir veya güvenlik eklentileri kullanabilirsiniz. Ayrıca, readme.html ve license.txt gibi varsayılan dosyaları silin; bu dosyalar WordPress kurulumunuz hakkında bilgi verir.
Dosya düzenlemeyi WordPress yönetim panelinden devre dışı bırakın. “Görünüm > Tema Düzenleyici” ve “Eklentiler > Eklenti Düzenleyici” özellikleri, saldırganın panele erişmesi durumunda tehlikeli olabilir. wp-config.php dosyasına define('DISALLOW_FILE_EDIT', true); kodunu ekleyerek bu özelliği tamamen kapatabilirsiniz. Dosya değişiklikleri için FTP veya SSH kullanın.
Giriş ve Kimlik Doğrulama Güvenliği
WordPress güvenlik ayarları kapsamında giriş sayfası güvenliği, brute force saldırılarına karşı birincil savunma hattınızdır. Varsayılan WordPress giriş URL’si (wp-login.php veya /wp-admin) herkes tarafından bilinir ve otomatik saldırı botları sürekli bu sayfaları hedefler. Giriş URL’sini değiştirmek, basit ama etkili bir güvenlik önlemidir. WPS Hide Login, Rename wp-login.php gibi eklentiler, giriş URL’nizi özelleştirmenizi sağlar (örneğin: siteniz.com/guvenli-giris).
Başarısız giriş denemelerini sınırlamak, brute force saldırılarını engellemenin en etkili yoludur. Varsayılan WordPress, sınırsız giriş denemesine izin verir. Limit Login Attempts Reloaded veya Wordfence gibi eklentilerle, belirli sayıda başarısız denemeden sonra IP adresini geçici veya kalıcı olarak engelleyebilirsiniz. Örneğin, 5 başarısız denemeden sonra 20 dakika engelleme kuralı oluşturun.
CAPTCHA veya reCAPTCHA eklemek, otomatik bot saldırılarını engeller. Google reCAPTCHA v3, kullanıcı deneyimini bozmadan arka planda bot tespiti yapar. Advanced noCaptcha & invisible Captcha eklentisi, giriş, kayıt ve yorum formlarına kolayca CAPTCHA ekler. Cloudflare Turnstile, Google’a alternatif bir gizlilik odaklı CAPTCHA çözümüdür.
Giriş sayfasına IP bazlı erişim kısıtlaması getirmek, yüksek güvenlik gerektiren siteler için idealdir. .htaccess dosyasına kurallar ekleyerek, sadece belirli IP adreslerinden wp-admin erişimine izin verebilirsiniz. Dinamik IP kullanıyorsanız, VPN veya sabit IP hizmeti kullanın. Alternatif olarak, belirli ülkelerden gelen trafiği engelleyebilirsiniz.
Session (oturum) yönetimi ve timeout ayarları, güvenliği artırır. Uzun süre aktif kalmayan kullanıcıları otomatik olarak çıkış yaptırın. Inactive Logout eklentisi, belirlediğiniz süre sonunda kullanıcıları çıkış yapar. Aynı kullanıcı hesabıyla birden fazla cihazdan giriş yapılmasını engelleyin veya sınırlayın. WP Session Manager eklentisi, aktif oturumları görüntülemenizi ve yönetmenizi sağlar.
Kullanıcı kayıt formlarına güvenlik ekleyin. Eğer siteniz kullanıcı kaydına izin veriyorsa, spam kayıtları engellemek için reCAPTCHA ve e-posta doğrulaması zorunlu kılın. Varsayılan kullanıcı rolünü “abone” (subscriber) olarak ayarlayın, yeni kullanıcılara gereksiz yetkiler vermeyin. Şüpheli kullanıcı hesaplarını düzenli kontrol edin ve silin.
Dosya ve Veritabanı Güvenliği
WordPress güvenlik ayarları kapsamında dosya sistemi ve veritabanı güvenliği, teknik ama kritik önlemlerdir. Dosya izinleri (permissions), kimin hangi dosyalara erişebileceğini belirler. Doğru izinler: klasörler için 755, dosyalar için 644 olmalıdır. wp-config.php dosyası özellikle hassastır ve 440 veya 400 izniyle korunmalıdır. .htaccess dosyası 644 olmalıdır. FTP veya hosting kontrol paneli üzerinden dosya izinlerini kontrol edin ve düzeltin.
wp-config.php dosyasını korumak hayati önem taşır çünkü veritabanı bilgilerinizi içerir. Bu dosyayı root dizininden bir üst dizine taşıyarak ek koruma sağlayabilirsiniz (WordPress otomatik olarak bulur). .htaccess ile wp-config.php’ye erişimi engelleyin: <files wp-config.php> order allow,deny deny from all </files> kodu ekleyin. Güvenlik anahtarlarını (security keys) değiştirin; WordPress.org/secret-key adresinden yeni anahtarlar oluşturun.
Veritabanı tablo önekini (table prefix) değiştirmek, SQL injection saldırılarını zorlaştırır. Varsayılan “wp_” öneki yerine benzersiz bir önek kullanın (örneğin: “wp7x_” veya “xyz_”). Kurulum sırasında bu ayarı yapabilir veya WPS Hide Login gibi eklentiler veya manuel SQL komutlarıyla değiştirebilirsiniz. Dikkatli olun, yanlış yapılırsa site bozulabilir – mutlaka yedek alın.
Veritabanı kullanıcısı izinlerini minimize edin. Veritabanı kullanıcınız sadece ihtiyaç duyduğu yetkilere sahip olmalı: SELECT, INSERT, UPDATE, DELETE yeterlidir. DROP, CREATE, ALTER gibi tehlikeli yetkileri kaldırın. Hosting kontrol panelinden (phpMyAdmin) veritabanı kullanıcı izinlerini düzenleyin.
.htaccess dosyası ile hassas dosya ve dizinleri koruyun. wp-includes, wp-content/uploads içindeki PHP dosyalarının çalıştırılmasını engelleyin. XML-RPC devre dışı bırakın (kullanmıyorsanız), DDoS ve brute force saldırılarında kötüye kullanılabilir. Directory listing’i (dizin listeleme) kapatın, saldırganların dosya yapınızı görmesini engelleyin.
Dosya yükleme güvenliği, özellikle çok kullanıcılı sitelerde önemlidir. Yüklenebilecek dosya türlerini sınırlayın, sadece güvenli formatları (jpg, png, pdf) kabul edin. .php, .exe, .sh gibi tehlikeli uzantıları engelleyin. Dosya boyutu limitleri koyun. Media Library’ye yüklenen dosyaları düzenli tarayın. All In One WP Security & Firewall eklentisi, dosya yükleme güvenliği için özellikler sunar.
SSL, HTTPS ve İletişim Güvenliği
WordPress güvenlik ayarları içinde SSL sertifikası ve HTTPS kullanımı, modern web güvenliğinin temel gereksinimlerindendir. SSL (Secure Sockets Layer) sertifikası, tarayıcı ile sunucu arasındaki iletişimi şifreler. Let’s Encrypt, ücretsiz SSL sertifikası sunar ve çoğu hosting firması otomatik kurulum sağlar. Hosting kontrol panelinizden SSL sertifikası kurun ve aktif edin. Cloudflare gibi CDN servisleri de ücretsiz SSL sunar.
SSL kurulumu sonrası, tüm sitenizi HTTPS’e yönlendirin. HTTP’den HTTPS’e 301 redirect (kalıcı yönlendirme) kuralı ekleyin. .htaccess dosyasına yönlendirme kodu ekleyebilir veya Really Simple SSL eklentisi kullanarak otomatik yapılandırma yapabilirsiniz. WordPress Ayarlar > Genel bölümünde WordPress Address ve Site Address URL’lerini https:// ile başlayacak şekilde güncelleyin.
Mixed content (karışık içerik) sorunlarını çözün. HTTPS sitesinde HTTP kaynaklar (görseller, CSS, JS) yükleniyorsa, tarayıcılar güvenlik uyarısı verir. Better Search Replace veya Velvet Blues Update URLs eklentileriyle veritabanındaki tüm HTTP URL’leri HTTPS’e dönüştürün. Görsellerin ve harici kaynakların HTTPS protokolü kullandığından emin olun.
HTTP Strict Transport Security (HSTS) header’ı ekleyin. HSTS, tarayıcılara sitenizin her zaman HTTPS üzerinden erişilmesi gerektiğini bildirir. .htaccess veya güvenlik eklentileriyle HSTS header ekleyebilirsiniz. Ancak dikkatli olun, yanlış yapılandırma site erişimini engelleyebilir. Test ortamında denedikten sonra canlı siteye uygulayın.
Güvenli iletişim başlıkları (security headers) ekleyin. X-Frame-Options, X-Content-Type-Options, X-XSS-Protection, Content-Security-Policy gibi HTTP başlıkları, çeşitli saldırı türlerine karşı koruma sağlar. SecurityHeaders.com sitesinde sitenizi test edin ve eksik başlıkları belirleyin. .htaccess dosyasına veya functions.php’ye bu başlıkları ekleyebilirsiniz.
SMTP kullanarak güvenli e-posta gönderimi sağlayın. Varsayılan WordPress mail() fonksiyonu güvenilmez ve e-postalar spam klasörüne düşebilir. WP Mail SMTP eklentisiyle Gmail, SendGrid, Mailgun gibi güvenli SMTP servisleri kullanın. E-posta kimlik doğrulaması (SPF, DKIM, DMARC) yapılandırın, phishing saldırılarını engelleyin.
Güvenlik Duvarı ve İzleme Sistemleri
WordPress güvenlik ayarları içinde güvenlik duvarı (firewall), kötü niyetli trafiği sitenize ulaşmadan engelleyen kritik bir savunma katmanıdır. Web Application Firewall (WAF), HTTP trafikini analiz eder ve şüpheli istekleri engeller. Wordfence eklentisi, güçlü bir WAF içerir ve gerçek zamanlı tehdit engelleme sağlar. Learning mode’da başlayarak false positive’leri minimize edin, ardından protection mode’a geçin.
Cloudflare, bulut tabanlı WAF ve DDoS koruması sunan popüler bir servistir. Ücretsiz planı bile temel koruma sağlar. Cloudflare’i sitenize entegre ederek, tüm trafik önce Cloudflare sunucularından geçer ve şüpheli istekler filtrelenir. Rate limiting kuralları, bot koruması ve IP reputation sistemleri yerleşiktir. Pro planı, gelişmiş WAF kuralları ve öncelikli destek ekler.
Sucuri, bulut tabanlı güvenlik platformu olarak kapsamlı koruma sunar. Sucuri Firewall (premium), DDoS saldırılarını, malware’i ve OWASP Top 10 güvenlik tehditlerini engeller. Virtual patching özelliği, WordPress, tema veya eklenti güncellemesi yapmadan bilinen güvenlik açıklarını korur. 30 günlük hack garantisi sunar.
İzleme ve log (kayıt) tutma, anormal aktiviteleri tespit etmek için önemlidir. WP Security Audit Log eklentisi, WordPress’te yapılan tüm değişiklikleri kaydeder: giriş/çıkış denemeleri, içerik değişiklikleri, ayar güncellemeleri, kullanıcı aktiviteleri. Şüpheli aktiviteleri hemen tespit eder ve e-posta bildirimleri gönderebilir. Log’ları düzenli inceleyin.
Malware (kötü amaçlı yazılım) taraması düzenli yapılmalıdır. Wordfence, Sucuri SiteCheck, MalCare gibi araçlar sitenizi tarar ve backdoor, trojan, spam injection gibi malware’leri tespit eder. Haftalık otomatik tarama ayarlayın. Temiz siteler bile düzenli taranmalıdır, sıfır gün (zero-day) açıkları her zaman risk oluşturur.
Uptime izleme servisleri, sitenizin erişilebilir olduğunu kontrol eder. UptimeRobot, Pingdom gibi servisler, siteniz çökerse anında e-posta veya SMS bildirimi gönderir. DDoS saldırıları veya hosting sorunları durumunda hızla müdahale edebilirsiniz. Ücretsiz planlar genellikle 5 dakikalık kontrol aralığı sunar.
Yedekleme ve Acil Durum Planı
WordPress güvenlik ayarları tamamlandıktan sonra bile, yedekleme stratejisi hayati önem taşır. En iyi güvenlik önlemleri bile %100 koruma garanti edemez. Düzenli yedeklemeler, hack durumunda sitenizi hızla geri yüklemenizi sağlar. UpdraftPlus, BackupBuddy veya BlogVault gibi eklentilerle otomatik yedekleme planı oluşturun. Günlük veritabanı yedeği, haftalık tam site yedeği ideal bir stratejidir.
Yedekleri farklı lokasyonlarda saklayın (3-2-1 yedekleme kuralı: 3 kopya, 2 farklı medya, 1 off-site). Google Drive, Dropbox, Amazon S3 gibi bulut depolamaya otomatik gönderim ayarlayın. Hosting sunucusunda sadece yedek saklamayın; sunucu hacklenmesi durumunda yedekleriniz de tehlikeye girer.
Yedeklerinizi düzenli test edin. Geri yükleme testi yapmadan yedeklerinize güvenmeyin. Staging site oluşturup yedekleri test edin. Corrupt (bozuk) yedekler, kriz anında işe yaramaz. Aylık test restore yapmak, yedekleme sisteminin düzgün çalıştığını garanti eder.
Acil durum müdahale planı oluşturun. Hack durumunda yapılacaklar listesi: tüm şifreleri değiştir, güvenlik eklentisiyle tara, temiz yedekten geri yükle, güvenlik açıklarını kapat, hosting desteğinden yardım al. Güvenlik uzmanı veya WebAcil gibi profesyonel destek ile iletişim bilgilerini hazır bulundurun.
WordPress.org’dan temiz WordPress dosyalarını indirip, core dosyaları karşılaştırın ve değiştirilmiş olanları temiz versiyonlarla değiştirin. wp-content klasörünü kontrol edin, bilinmeyen dosyalar silin. Veritabanında şüpheli kullanıcı hesapları, rogue admin’ler ve injected code arayın. Post-hack temizlik kapsamlı olmalıdır.
Güvenlik sertlandırma (hardening) check-listi oluşturun ve periyodik olarak gözden geçirin: güncel yazılım, güçlü şifreler, 2FA aktif, yedekleme çalışıyor, SSL aktif, güvenlik eklentileri güncel, dosya izinleri doğru, gereksiz eklentiler silinmiş. Aylık güvenlik audit yapın.
WordPress güvenlik ayarları, web sitenizin sağlığı ve işletmenizin itibarı için kritik önem taşır. Proaktif güvenlik yaklaşımıyla, tehditlerden önce korunun. WebAcil olarak, WordPress güvenlik audit’i, sertifikasyon, monitoring ve acil durum müdahale hizmetleri sunuyoruz – sitenizi maksimum güvenlikle koruyun ve WebAcil’in uzmanlığından faydalanın!**







Leave a comment