1- Adım wordpress admin güvenliği
Wordpress admine sadece kendiniz girip ip filtrelemesi yapmak en kesin çözümdür. Boş ve gereksiz güvenlik eklentileri üzerinden sistemi daha çok yorabilir ve sistemi zorlayabilirsiniz. Ne kadar çok dosya o kadar çok hacklenme olasılığına neden olabilir.wp-admin dizinine htaccess oluşturun.
Kod:
order deny,allow
deny from all
allow from ipadresiniz
2- Adım config güvenliği
Wordpress config dizininiz kaptırırsanız aynı sunucudaki saldırgan kendi sitesi üzerinden yada hacklediği site üzerinden sizin sitenizin config dosyasını okuyabilir. Eğer wordpressi e ticaret amaçlı kullanıyorsanız müşterilerinin verilerini kaptırabilirsiniz. Bu nedenle dikkatli olmak gerekir.
Kod:
wp-config.php olan dizinleri değiştiriyoruz ve chmod 600 uyguluyoruz
3-Wordpress upload güvenliği
Eklenti yada temalardan oluşabilecek güvenlik açıkları nedeniyle siteniz upload yapılarak zararlı yazılım yüklenebilir ve uzaktan siteniz üzerinde düzenleme yapılabilir yada verileriniz çalınabilir.
/wp-content/uploads dizinine bir htaccess dosyası oluşturun ve kodları girin.
Kod:
<Files "*.php">
Order Deny,Allow
Deny from All
</Files>
4- Monitör (izleme) yöntemi
Website File Changes Monitor eklentisi sayesinde wordpress dosyalarınızda değişiklik yapıldığında size mail ile bildir verecektir.
5- Yedekleme
Host firmasından kaynaklı, hacklenme ya da kullanıcı kaynaklı hatalardan dolayı verileriniz silinebilir. Bu nedenle sizlerin de yedek alması gerekmektedir. Aksi halde tüm emekleriniz çöp olur.
UpdraftPlus - Backup/Restore eklentisi ile sitenizi yedekleyebilirsiniz.
6- htaccess güvenliği
Htaccess güvenliği biliyorsunuz ki htaccess sitenin bel kemiğidir. Bu nedenle hem bu dosyayı hemde bu dosya üzerinden tüm sistemimizi yüksek derecede koruma altına alabiliriz.
ana dizindeki htaccess dosyasına aşağıdaki kodları ekleyiniz.
Kod:
<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 wp-config.php>
Order allow,deny
Deny from all
</files>
<files error_log>
Order allow,deny
Deny from all
</files>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_METHOD} ^(HEAD|TRACE|DELETE|TRACK) [NC]
RewriteRule ^(.*)$ - [F,L]
RewriteCond %{QUERY_STRING} \.\.\/ [NC,OR]
RewriteCond %{QUERY_STRING} boot\.ini [NC,OR]
RewriteCond %{QUERY_STRING} tag\= [NC,OR]
RewriteCond %{QUERY_STRING} ftp\: [NC,OR]
RewriteCond %{QUERY_STRING} http\: [NC,OR]
RewriteCond %{QUERY_STRING} https\: [NC,OR]
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|%3D) [NC,OR]
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(\[|\]|\(|\)|<|>|ê|"|;|\?|\*|=$).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*("|'|<|>|\|{||).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(%24&x).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(%0|%A|%B|%C|%D|%E|%F|127\.0).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(globals|encode|localhost|loopback).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(request|select|insert|union|declare).* [NC]
RewriteCond %{HTTP_COOKIE} !^.*WordPress_logged_in_.*$
RewriteRule ^(.*)$ - [F,L]
</IfModule>
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>
Yorum Gönder