1. Anasayfa
  2. Blog
  3. WordPress Kılavuzları

WordPress Güvenlik Önlemleri: Web Site Güvenliği Nasıl Sağlanır?

WordPress Güvenlik Önlemleri: Web Site Güvenliği Nasıl Sağlanır?

WordPress’le hazırladığınız web siteniz, dijital dünyadaki eviniz gibidir. Tıpkı evinizin kapısını kilitleyip alarm sistemi kurduğunuz gibi, web sitenizi de dijital tehditlere karşı korumanız gerekiyor. Peki neden bu kadar önemli? Çünkü her gün binlerce WordPress sitesi hacklenmeye çalışılıyor ve maalesef birçoğu başarıyla ele geçiriliyor. Bu kılavuzda, web site güvenliğini sağlamak adına uygulanması gereken WordPress güvenlik önlemleri paylaştık…

WordPress Güvenlik Önlemleri Nelerdir?

WordPress genel olarak oldukça güvenli bir yazılım olmasına ve yüzlerce geliştirici tarafından düzenli olarak denetlenmesine rağmen, açık kaynaklı bir platform olduğundan ve bazen kullanılan eklenti ve temalardan kaynaklı olarak güvenlik açıkları oluşabiliyor. Riskleri tamamen ortadan kaldırmak mümkün olmasa da, WordPress güvenlik önlemleri ile bu riskleri en aza indirmek mümkün.

Peki web site güvenliği nasıl sağlanır? İşte en güncel WordPress güvenlik önlemleri listesi:

1. Güvenilir ve nitelikli hosting firmaları seçin

Ne kadar güvenlik önlemi alırsanız alın, eğer hosting altyapınız zayıfsa siteniz risk altındadır. Kaliteli bir hosting seçimi, güvenliğin can damarıdır. Bir web site veya blog açmak için ilk iş hosting seçimi yapmaktır. İşte tam bu noktada yani daha yolun başındayken iyi bir hostinge yatırım yapmanız yararınıza olacaktır. Seçeceğiniz firma en son PHP ve MySQL sürümünün yanı sıra, bir güvenlik duvarı, günlük yedekleme, kötü amaçlı yazılım taramaları, DDOS önleme tedbirleri ve 7/24 güvenlik izleme gibi önemli hizmetleri içermelidir. Bu şartları karşılayan bir hostingin maliyeti diğerlerine göre daha yüksek olabilir ama yine de web sitenizin güvenliği ve sağlıklı işleyişi için buna değer. (Bkz: En İyi Hosting Firmaları (Yerel-Global))

2. WordPress güvenliği için SSL kullanın

SSL (Secure Socket Layer), veri aktarımını şifreleyen bir protokoldür. SSL’yi etkinleştirdiğinizde, web siteniz HTTP yerine HTTPS olarak açılır ve URL’nin önünde sitenin güvenli olduğunu belirten bir asma kilit sembolü bulunur. SSL ile sadece WordPress güvenlik önlemi almış olmazsınız, aynı zamanda arama motoru sıralamanız da olumlu etkilenir. (Google https’in resmi olarak bir sıralama faktörü olduğunu belirtmiştir!)

SSL sertifikaları genellikle sertifika yetkilileri tarafından verilir ve genellikle yüksek fiyatları vardır. Ancak, kar amacı gütmeyen bir kuruluş olan Let’s Encrypt ile ücretsiz SSL kullanmanız da mümkün. Hatta artık birçok barındırma şirketi, müşterileri için ücretsiz SSL sertifikası sunuyor.

3. Sitenizi düzenli olarak yedekleyin

Sitenizin güvende kalmasını sağlamak için ne kadar önlem alırsanız alın, %100 güvenlik yoktur. Bu yüzden düzenli yedekleme yapmak son derece önemlidir. Yedekleme, bir güvenlik önleminden çok, kurtarma planıdır. Siteniz hacklendiğinde veya kritik bir hata yaptığınızda aldığınız yedekler sayesinde durumu en az hasarla atlatabilirsiniz. Yani ilk savunmanız bu yedekler olacaktır.

4. WordPress sürümünü, eklentileri ve temaları güncel tutun

Güncellenmemiş Wp sürümü, eklenti ve temalar büyük güvenlik açıkları yaratabilir. WordPress, düzenli olarak bakımı yapılan ve güncellenen açık kaynaklı bir yazılımdır. Her yeni sürüm çıktığında birçok hata ve güvenlik açığı giderilir. Aynı şekilde tema ve eklentilerinizin de her zaman güncel sürümünü kullandığınızdan emin olun. Güncelleme yapmazsanız siteniz ciddi risk altında olur.

Peki güncelleme nasıl yapılır? WordPress, tema ve eklentiler için yeni bir güncellemeniz varsa, bunları yönetim paneli “Güncellemeler” kısmından görebilir ve buradan tek tıkla güncelleyebilirsiniz.

wordpress guvenligi icin guncellemeler

***Kullanmadığınız tema ve eklentileri mutlaka kaldırın.

5. Güçlü parolalar kullanın

WordPress güvenliği için dikkat edilmesi gereken en önemli noktalardan biri güçlü şifreler kullanmaktır. Bu konu çok basit görünse de site sahiplerinin en çok ihmal ettiği alandır. İnternet korsanları, kaba kuvvet saldırıları olarak da bilinen girişleri zorlamak için özel yazılımlar kullanır. Bu nedenle benzersiz güçlü parolalar oluşturmak son derece önemlidir.

Güçlü bir parola bulmak için büyük ve küçük harflerin, rasgele sayıların ve simgelerin kombinasyonunu kullanın. Ayrıca şifrenizi birkaç ayda bir değiştirmeyi de unutmayın. Sadece WordPress hesabınıza giriş için değil, aynı zamanda barındırma hesabı, FTP hesapları, veritabanı ve özel e-posta hesaplarınız için de mutlaka güçlü parolalarınız olsun. (WordPress Kullanıcı Adı ve Parola Nasıl Değiştirilir?)

6. İki faktörlü kimlik doğrulama kullanın

Parolanız ne kadar güvenli olursa olsun, yine de risk devam eder. İki faktörlü kimlik doğrulama, oturum açmak için yalnızca şifrenize değil, ikinci bir yönteme de ihtiyaç duyduğunuz iki aşamalı bir süreci içerir. Genellikle bir SMS, telefon araması veya zamana dayalı tek seferlik şifre ile giriş onayı yapmak en iyi Wordpress güvenlik önlemleri arasındadır. Hatta çoğu zaman %100 etkilidir. Bunun için aşağıdaki eklentilerden birini kullanabilirsiniz:

  • Duo Two-Factor Authentication
  • Two Factor Authentication
  • Google Authenticator

7. CAPTCHA ile WordPress giriş güvenliği

CAPTCHA kullanmak, web sitenize kaba kuvvet saldırılarını önlemenin basit ama etkili bir yoludur. Belirli sayıda başarısız oturum açma girişiminin ardından, kullanıcının insan mı yoksa bot mu olduğunu belirlemek için bir CAPTCHA oluşturulur. CAPTCHA’lar botlar tarafından okunamayacak şekilde tasarlanmıştır. Botlar CAPTCHA’yı çözene kadar oturum açamazlar.

8. WordPress giriş url’nizi değiştirin

WordPress güvenlik önlemleri almanın bir diğer önemli adımı da Wordpress giriş url’sini değiştirmektir. Varsayılan olarak, alan adınızın sonuna /wp-login.php veya /wp-admin/ ekleyen herkes WordPress giriş sayfanıza ulaşabilir. URL’yi değiştirerek kendinizi daha az hedef haline getirebilir ve kaba kuvvet saldırılarına karşı daha iyi korunabilirsiniz. Bu WordPress güvenliği için büyük bir çözüm yolu olmasa da, web sitenizi korumak için diğer WordPress güvenlik önlemleri ile birlikte kullanabileceğiniz bir tedbirdir.

WordPress giriş url’nizi değiştirmenizin en kolay yolu bir eklenti kullanmaktır (özellikle bu işte yeniyseniz). Kullanabileceğiniz en iyi eklentilerden biri de WPS Hide login eklentisidir. Ayrıca başarısız giriş denemelerini sınırlandırmak için de “Login Lockdown plugin” eklentisini kullanabilirsiniz.

9. Güvenlik sorularıyla WP giriş ekranını koruyun

WordPress giriş ekranına güvenlik soruları ekleyerek yönetim paneline geçişi zorlaştırabilirsiniz. Bunu yapmanın en kolay yolu ise WP Security Questions gibi bir eklenti kullanmaktır. Eklenti ayarlarını yapılandırmak için Ayarlar »Güvenlik Soruları sayfasını ziyaret edip kendinize göre düzenlemeler yapabilirsiniz.

10. WordPress sürümünü gizleyin

Bir bilgisayar korsanının, bilinen WordPress güvenlik açıklarına sahip herhangi bir dosyanızın olup olmadığını öğrenmesinin bir yolu da, hangi WordPress sürümünü kullandığınızı görmesidir. Eğer eski bir sürüm kullanıyorsanız, bu durum sitenizi savunmasız hale getirebilir. Bilgisayar korsanları, temel WordPress kurulumunun önceki sürümünde var olabilecek herhangi bir güvenlik açığından yararlanabilir. Bu nedenle, kullandığınız WordPress sürümünü gizlemeniz faydalı olacaktır.

Bu işlem için aşağıdaki kodu function.php dosyanıza eklemeniz yeterlidir:

function wp_version_remove_version() {
return '';
}
add_filter('the_generator', 'wp_version_remove_version');

11. Dosya düzenlemeyi devre dışı bırakın

Tema ve eklenti dosyalarınızı doğrudan WordPress yönetici panelinden düzenleyebilirsiniz. Ancak bu özellik ciddi güvenlik riskleri doğurabilir. Bu nedenle dosyalarınızı doğrudan Wp panelden düzenlemeyi engellemenizi öneririz.

Bunu yapmak için wp-config.php dosyanıza aşağıdaki kodu eklemeniz yeterli olacaktır.

// Disallow file edit
define( 'DISALLOW_FILE_EDIT', true );

cPanel’e giriş yapın ve “Dosya Yöneticisi“ne geçin. “public.html” klasöründe “wp-config.php“yi bulun ve sağ tıkla “Düzenle” seçeneğine tıklayın. Yukarıdaki kodu dosyanın sonuna ekleyip sayfayı kaydedin.

wordpress guvenlik onlemleri wpconfihphp dosya duzenlemeyi kapatma

12. WordPress veritabanı önekini değiştirin

Wordpress güvenliği önlemlerinden bir diğeri de veritabanı önekini değiştirmektir. Varsayılan olarak, veritabanınızdaki tüm tablolar için wp_ öneki kullanır. Varsayılan ön eki kullanmak, site veritabanınızı SQL enjeksiyon saldırılarına açık hale getirir. Bunu değiştirmeniz güvenliğinizi biraz daha artıracaktır. Örneğin wp_ yerine shfwp_ , mywp_, wpdlt_ vs gibi rasgele bir önek belirleyebilirsiniz.

İlk kez WordPress kurulumu yaptığınızda veritabanı önekini belirleyebilirsiniz. Ancak bunu yapmadıysanız halihazırda wp_ olarak bulunan veritabanı önekini yine de değiştirebilirsiniz. Bu işlem risklidir ve doğru yapılmadığı takdirde sitenizi tamamen bozabilir. Bu nedenle eğer WordPress’e yeterince hakim değilseniz manuel düzenleme yerine bir güvenlik eklentisi kullanmanızı şiddetle tavsiye ederiz!

13. WordPress’te XML-RPC’yi devre dışı bırakın

XML-RPC, WordPress sitenizi web ve mobil uygulamalara bağlamanıza yardımcı olsa da kaba kuvvet saldırılarını önemli ölçüde artırabilir. Bu nedenle XML-RPC kullanmıyorsanız, devre dışı bırakmanızı öneririz. Aşağıdaki kodu .htaccess dosyanıza eklemeniz yeterli olacaktır:

Apache’de XML-RPC’yi engelle

<Files xmlrpc.php>
    order deny, allow
    deny from all
    allow from 123.123.123.123
</Files>

Nginx’te XML-RPC’yi engelle

location = /xmlrpc.php {
deny all;
}

14. En son PHP sürümünü kullanın

PHP sürümünü güncel tutmak da, WordPress site güvenliği için oldukça önemlidir. Her PHP sürümü çeşitli güvenlik açıklarını düzelten desteğe sahiptir. Maksimum güvenlik sağlamak için sitenizin en son PHP sürümü tarafından desteklendiğinden emin olun.

15. PHP hata raporlamasını devre dışı bırakın

Hackerlar hata mesajlarını kötü amaçlı kullanabilirler. Örneğin, bir tema veya eklentiden kaynaklanan bir hata, sunucu yolunuzu görüntüleyebilir. Hata raporlamayı devre dışı bırakmak için aşağıdaki kodu wp-config.php dosyanıza ekleyin :

error_reporting (0);
@ini_set ('display_errors', 0);

Ayrıca, her başarısız giriş denemesinde, giriş sayfanızdaki hata mesajları hackerlar için oldukça kullanışlıdır. functions.php dosyanıza aşağıdaki kod satırını ekleyerek bunları kaldırabilirsiniz:

function no_wordpress_errors(){
  return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

16. Dizin listelemeyi devre dışı bırakın

Dizin tarama, başkaları tarafından dosyalarınıza bakmak, görüntüleri kopyalamak, dizin yapınızı ve diğer bilgileri bulmak için kullanılabilir. Ayrıca, bilgisayar korsanları güvenlik açıkları bulmak için dizin taramayı kullanabilir. Bu nedenle bu özelliği kapatmanızı şiddetle tavsiye ederiz. Bunun nasıl yapılacağıyla ilgili gerekli detayları içeren “WordPress’te Dizin Listelemeyi Devre Dışı Bırakma” başlıklı yazımıza bakabilirsiniz.

17. wp-config.php dosyanızı koruyun

Wp-config.php dosyası sitenizdeki en önemli, aynı zamanda en savunmasız dosyalardan biridir. Oldukça hassas veriler içerir. Bu dosyayı mutlaka korumaya almak gerekir. Bunu yapmanın en basit yolu ise, wp-config.php dosyasını WordPress kök dizininizin bir adım üstüne taşımaktır. Ayrıca aşağıdaki kodu .htaccess dosyanıza ekleyerek de dosyaya erişilmesini engelleyebilirsiniz:

<Files wp-config.php>
   order allow,deny
   deny from all
</Files>

18. Diğer hassas dosyalara erişimi engelleyin

Wordpress kurulumu sadece wp-config.php dosyasını değil, install.php, readme.html dosyaları gibi birkaç hassas dosya daha içerir. Bu dosyalar başkalarının erişimine kapalı olmalıdır. Yine burada en iyi dostumuz olan .htaccess dosyası devreye giriyor. Aşağıdaki kodları bu dosyaya ekleyerek hassas dosyalarınızı yetkisiz erişimlerden gizleyebilirsiniz:

<files .htaccess>
     Order allow,deny
     Deny from all
</files>

<files readme.html>
     Order allow,deny
     Deny from all
</files>

<files license.txt>
     Order allow,deny
     Deny from all
</files>

<files install.php>
    Order allow,deny
    Deny from all
</files>

<files error_log>
    Order allow,deny
    Deny from all
</files>

19. Etkin olmayan oturumları otomatik olarak kapatın

Etkin olmayan oturumlar bir güvenlik riski oluşturabilir. Bu nedenle, bu tür oturumları otomatik olarak kapatmak da Wordpress güvenlik önlemleri arasına dahil edilmelidir. Inactive Logout gibi bir eklenti yardımıyla, belirli bir süre etkin olmayan kullanıcı oturumlarını otomatik olarak kapatabilirsiniz.

20. WordPress güvenlik duvarını etkinleştirin

Bir diğer kritik WordPress güvenlik önlemi de “web uygulaması güvenlik duvarı (WAF)” kurmaktır. WAF’ınız, kötü niyetli saldırıları sitenize ulaşmadan önce engelleyen ilk savunma hattıdır. WordPress güvenlik duvarı eklentileri, web sitenizi kaba kuvvet ve DDoS saldırıları gibi durumlara karşı korur. Sucuri, SiteLock, Wordfence, Cloudflare gibi eklenti ve uygulamalarla bu soruna karşı tedbir alabilirsiniz.

21. En son HTTP güvenlik başlıklarını ekleyin

WordPress güvenlik önlemleri için bir diğer önemli detay da http güvenlik başlıklarından faydalanmaktır. Bunlar genellikle web sunucusu düzeyinde yapılandırılır ve tarayıcıya sitenizin içeriğini işlerken nasıl davranması gerektiğini söyler. HTTP güvenlik başlıkları, saldırıların ve güvenlik açıklarının azaltılmasına yardımcı olur.

WordPress web sitenizi securityheaders.io aracıyla tarayıp şu anda sitenizde hangi HTTP güvenlik başlıklarının bulunduğunu görebilirsiniz. Eksik http başlıkları için aşağıdaki satırları .htaccess dosyanıza ekleyebilirsiniz.

# X-Frame-Options
<IfModule mod_headers.c>
	Header set X-Frame-Options "SAMEORIGIN"
</IfModule>
# Strict-Transport-Security
<IfModule mod_headers.c>
	Header always set Strict-Transport-Security "max-age=63072000; includeSubDomains"
</IfModule>
# X-Content-Type-Options
<IfModule mod_headers.c>
	Header set X-Content-Type-Options "nosniff"
</IfModule>
# Referrer-Policy
<IfModule mod_headers.c>
	Header set Referrer-Policy "same-origin"
</IfModule>

22. Doğru dosya izinleri kullanın

777 gibi yanlış dosya izni, bir hackerın dosya yüklemesine veya mevcut bir dosyayı değiştirmesine izin verebilir. Dosya izinlerini değiştirmek için cPanel’inizde oturum açmanız, “Dosya Yöneticisine” gitmeniz ve gerekli değişiklikleri yapmanız gerekir.

WordPress’e göre, aşağıdaki izinler doğru izinlerdir:

  • Tüm dizinler 755 veya 750 olmalıdır
  • Tüm dosyalar 644 veya 640 olmalıdır
  • wp-config.php 440 veya 400 olmalıdır

Detaylar için “WordPress Dosya İzinleri Nasıl Olmalı ve Nasıl Değiştirilir” başlıklı içeriğimize göz atabilirsiniz.

23. Parola sıfırlama seçeneğini devre dışı bırakın

WordPress siteniz çok sayıda şifre sıfırlama isteği alıyorsa, ön uçtaki şifre sıfırlama seçeneğini devre dışı bırakabilirsiniz. Bunu yaparak, e-posta adresiniz ele geçirilmiş olsa bile, yeni bir şifre bağlantısı talep edilmesi imkansız hale gelecektir. Böylece, kullanıcı adınız ve e-posta adresinize erişimi olan kötü niyetli kişiler için durumu biraz daha zorlaştırmış ve bir WP güvenlik önlemi daha almış olursunuz. Aşağıdaki kodu functions.php dosyanızın sonuna ekleyin ve değişiklikleri kaydedin:

function disable_password_reset() { return false; }
add_filter ( 'allow_password_reset', 'disable_password_reset' );

Kodu ekledikten sonra, herhangi biri WP giriş ekranından parola sıfırlama talebinde bulunduğunda aşağıdaki görselde olduğu gibi bir uyarıyla karşılaşır:

wp guvenlik onlemleri parola sifirlama devre disi birakma

24. Sitenizi Google Search Consol’a ekleyin

WordPress sitenizi Google Search Consol’a eklemenin bir çok avantajı vardır. Sitenizle ilgili verileri görmenin yanı sıra, güvenlik sorunlarını da buradan görebilirsiniz. Google sitenizle ilgili sorunlar tespit ederse e-posta yoluyla sizi bilgilendirir. (bkz: Search Console Site Ekleme ve Doğrulama Nasıl Yapılır?)

25. Web sitenizi kötü amaçlı yazılımlara karşı tarayın

Web sitesi trafiğinde veya arama sıralamalarında ani bir düşüş fark ederseniz, manuel olarak bir tarama yapmanız sorunun tespiti için faydalı olabilir. Hatta herhangi bir sorun yaşamasanız bile düzenli olarak tarama yapmanızı öneririz. Bunun için  kötü amaçlı yazılım ve güvenlik tarayıcılarından birini kullanabilirsiniz. Hızlı tarama için: https://sitecheck.sucuri.net/

26. Güvenlik eklentisi kullanın

WordPress güvenlik önlemleri almanın en basit, hızlı ve güvenli yolu, yukarıdaki adımları ve daha fazlasını içeren hepsi bir arada bir WordPress güvenlik eklentisi kullanmaktır. Güvenlik eklentilerinin bir çoğu sitenizi güvende tutmak için gerekli tedbirleri içerir ve bunu otomatikleştirerek sizi manuel önlemler alma zahmetinden kurtarır. WordPress güvenlik eklentileri, siteniz için 7/24 çalışan güvenlik görevlileri gibidir. Doğru eklentiyi seçtiğinizde, birçok güvenlik tehdidini otomatik olarak engelleyebilir ve olası saldırılardan haberdar olabilirsiniz.

Güvenlik İhlali Durumunda Ne Yapmalısınız?

Hiç kimse başına gelmesini istemez ama olur. Siteniz hacklendiğinde panik yapmak yerine sistematik bir yaklaşım izleyin:

  • Siteyi Bakım Moduna Alın– Ziyaretçileri korumak için siteyi hemen bakım moduna alın. Zararlı içerik dağıtımını durdurun ve Google’ın sizi kara listeye almasını önleyin.
  • Tüm Şifreleri Değiştirin– WordPress yönetici, veritabanı, FTP ve hosting panel şifrelerini derhal değiştirin. Güvenliği ihlal edilmiş şifrelerle çalışmaya devam etmeyin.
  • Zararlı Kodu Temizleyin– Güvenlik eklentileriyle tam tarama yapın. Zararlı dosyaları manuel olarak kontrol edin. Şüpheli kod parçacıklarını silin veya temiz yedekle değiştirin.
  • Sistem ve Güvenlik Güncellemesi- WordPress çekirdeğini, tüm eklentileri ve temayı en güncel versiyona yükseltin. Saldırganların kullandığı güvenlik açıklarını kapatın.
  • Güvenlik Önlemlerini Güçlendirin– Bu rehberdeki tüm güvenlik adımlarını uygulayın. Firewall kurun, giriş denemelerini sınırlayın, dosya izinlerini kontrol edin.
  • Google’a Bildirim Yapın– Eğer Google sizi “güvensiz” olarak işaretlediyse, temizlik sonrası Google Search Console’dan tekrar inceleme talebinde bulunun.

Güvenlik Kontrol Listesi

WordPress güvenliği bir kerelik yapılıp unutulan bir iş değildir. Sürekli dikkat ve bakım gerektiren dinamik bir süreçtir. İşte güvenli bir WordPress sitesi yönetmek için uygulamanız gereken düzenli rutinler ve kontrol listesi:

  • Günlük Kontroller:
    • Güvenlik bildirimlerini kontrol edin
    • Başarısız giriş denemelerini gözden geçirin
    • Site erişilebilirliğini test edin
  • Haftalık Görevler:
    • Güncelleme Kontrolü
    • Zararlı Yazılım Taraması
    • Yedekleme Kontrolü
  • Aylık Bakım:
    • Kullanıcı hesaplarını gözden geçirin ve gereksizleri silin
    • Eklenti ve tema listesini güncelleyin, kullanılmayanları kaldırın
    • Dosya izinlerini kontrol edin
    • Veritabanı optimizasyonu yapın
    • SSL sertifikası durumunu kontrol edin
    • Güvenlik eklentisi ayarlarını gözden geçirin
    • Yedeklerden birini test ortamına geri yükleyin
    • Güvenlik loglarını analiz edin.

Evet, web site sahiplerinin WordPress güvenliğini arttırmak için yapabileceği çok şey var. Yukarıda bu önlemlerden bazılarına değindik. Liste uzun olsa da sitenizi korumak için tüm bu WordPress güvenlik ipuçlarını takip etmeniz  ve uygulamanız faydalı olacaktır.

Editör Notu: İçeriğimiz okuyucu desteğiyle finanse edilmektedir. Bu, bağlantılarımızdan bazılarına tıkladığınızda komisyon kazanabileceğimiz anlamına gelir.

Burada sadece teorik bilgiler değil, gerçek deneyimlere dayanan pratik çözümler var. Burada yol arkadaşı olacağız. Karmaşık konuları birlikte çözecek, teknik detayları birlikte aşacağız...

Yazarın Profili