Şahsen kullandığım .htaccess ve config.php dosyası güvenlik önlemlerini sizlerle paylaşmak istiyorum. Siteleriniz güvende olsun. Tabii bunun dışında da çok şey var ama ben .htaccess ve config.php tarafını anlatacağım.
Ne yaptığınızı hiç bilmiyorsanız fazla kurcalamayın ve bir uzmandan destek alın. Daha detaylı bilgi almak ve öğrenmek için; kodu ChatGPT'ye yapıştırın ve 'bu kodu bana detaylı şekilde açıklayarak anlatır mısın?' diyin veya internetten araştırın.
Not: Her zaman lisanslı tema ve eklenti kullanın, bunu yapmazsanız hiçbir güvenlik önlemi sizi koruyamaz.
Not2: Her zaman uzun ve zor şifre, recaptcha ve 2FA (tercihen uygulama) kullanın.
Kullanmadan önce yedek alınız! Haydi başlayalım.

1.
# PHP Sorgu GÜVENLİK
RewriteCond %{QUERY_STRING} =PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} [NC]
RewriteRule .* - [F]
# PHP Sorgu GÜVENLİKBu kod, URL'deki sorgu dizgisinin (query string) belirli bir biçimi kontrol ederek PHP ile ilgili potansiyel güvenlik açıklarını engelleme amacı taşır.
2.
# Updrade PHP Security <Files upgrade.php> order allow,deny deny from all </Files> # Updrade PHP SecurityBu kod, internet sitesi üzerinde upgrade.php dosyasına erişimi kısıtlamak için kullanılır.

3.
#BEGIN WP Security - Hide PHP version in header
<IfModule mod_headers.c>
Header unset X-Powered-By
Header unset Server
Header unset X-Pingback
</IfModule>
#END WP Security - Hide PHP version in headerKodun amacı, sitenin kullanılan PHP sürümünü ve diğer bazı bilgileri gizlemektir.
4.
# Block xmlrpc Start
<files xmlrpc.php>
Require all denied
</files>
# Block xmlrpc EndXMLRPC kapatma.Ek bilgi: WordPress xmlrpc.php Nedir ve Niçin Devre Dışı Bırakılmalı? (hostinger.web.tr)

5.
# PHP UPLOAD KORUMA <Directory "BURAYA UPLOAD KLASÖRÜNÜN FTP DİZİN ADRESİ GİRİLECEK"> <Files "*.php"> Order Deny,Allow Deny from All </Files> </Directory> # PHP UPLOADA KORUMASitenize zararlı PHP yazılım yüklenerek çalıştırılmasını engelleyen bir kod.

6.
# Script KORUMA
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]
</IfModule>
# Script KORUMAZararlı script girişimlerine karşı koruma sağlar.
7.
# Block author scans
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} (author=\d+) [NC]
RewriteRule .* - [F]
# Block author scans EndKullanıcı taramalarını engellemek için bir kod. Kullanıcı adınızı öğrenip BruteForce saldırısı atıyorlar. Aslında çok önemli değil, kullanıcı adınızı öğrenseler bile; çok zor + uzun şifre, recaptcha ve 2FA kullanıyorsanız bir şey olmaz.
8.
# Block directory browsing Options -Indexes # Block directory browsing EndFTP klasörünüzde dolaşıp, ne var ne yok diye bakmalarını engeller.

9.
# Block access sensitive files
<FilesMatch "^.*(((?:wp-config)\.(?:php|bak|swp))|php.ini|\.[hH][tT][aApP].*|((?:error_log|readme|license|changelog|-config|-sample)\.(?:php|md|log|txt|htm|html)))$">
Require all denied
</FilesMatch>
# Block access sensitive files EndHassas dosyalarınıza erişmesinler.
10.
# Block .htaccess and .htpasswd
<FilesMatch ^(?i:\.ht.*)$>
Require all denied
</FilesMatch>
# Block .htaccess and .htpasswd End.htaccess dosyasına dışardan erişimi engeller.Bu güvenlik ayarlarının bazılarını, ek olarak cPanel'de olan SOFTACULOUS tarafında yapabilirsiniz.
Şimdi de wp-config.php tarafından bahsetmek istiyorum; aşağıda vereceğim kod

define( 'DISALLOW_FILE_EDIT', true ); define( 'DISALLOW_FILE_MODS', true );1- Sitenizin 'kod editörü' kısmını kapatıyor. Yani artık admin panelinden kodsal düzenleme yapılamayacak. Yani sitenize erişim sağlansa bile, koda müdahale edemeyecek. En fazla bir şeyleri bozar siler ama yedekten dönersiniz.
2- Eklenti eklemeyi ve silmeyi kapatıyor. Yani sitenize erişim sağlansa bile, saldırgan zararlı yazılım içeren eklenti yükleyerek işlem sağlayamacak. En fazla bir şeyleri bozar siler ama yedekten dönersiniz. Bu kod özellikle FTP erişimi ile alakalı eklentilerin yüklenmesini engelleyerek büyük güvenlik sağlıyor.
Bunları ara ara açıp kapatmanız gerekebilir. Mesela haftada 1 açıp, eklentileri güncelleyip, tekrar kapatabilirsiniz.
Bahsedebileceğimiz başka güvenlik önlemleri de var ama daha fazla derine inmek istemiyorum. WordPress güvenliği için kullanabileceğiniz eklentiler de var; mesela Headers Security Advanced & HSTS WP WordPress plugin | WordPress.org veya WordPress Security Plugin | Wordfence
Ne yaptığınızı hiç bilmiyorsanız kurcalamanızı tavsiye etmem. Kullanmadan önce mutlaka yedek alın.
Not: Kodlar tüm sunucularda/yazılımlarda çalışmayabilir, kodların engelleyebileceği eklentileriniz/sistemleriniz olabilir. Mutlaka yedek alın ve kullanmadan önce sorun çıkarmadığından emin olacak şekilde deneyin.
Teşekkürler, güvenli kalın.