WordPress Başlıca Güvenlik Önlemleri

Merhaba arkadaşlar, dün blog’umun hacklenmesinden sonra bende araştırdım ve gorkemkara.com da gördüğüm başlıca güvenlik önlemlerini bende paylaşayım istedim ve size de mutlaka uygulamanızı tavsiye ediyorum…

Dosya İzinleri

WordPress kurulumunu yaptıktan sonra wp-admin/install.php dosyasını silmeniz gerekmektedir. Sonra sıra dosyaların izinlerindedir. Yanlış bir dosya izniyle sunucunuza girilebileceğini unutmayın. WordPress’in önemli dosyaların izinlerini aşağıdaki gibi düzenlemelisiniz. Ancak daha iyi bir sistem için kendiniz ayarlayabilirsiniz.

Ana dizin (root directory) : 0755
wp-includes/ : 0755
wp-admin/ : 0755
wp-admin/js/ : 0755
wp-content/ : 0755
wp-content/themes/ : 0755
wp-content/plugins/ : 0755
wp-admin/index.php : 0644
.htaccess : 0644
wp-config.php : 0644

Bazı eklentiler kurulmak için bazı klasörlerin 0777 olmasını ister. Bu durumda kurulumdan önce dosya iznini 0777 yapın ve kurulumdan sonra eski izin ayarlarına geri dönün. Yükleme klasörünüzün dosya izni 0777 kalabilir ancak ara sıra klasörün içini kontrol etmenizi tavsiye ediyorum.

Plugins Dizini

WordPress sitenizde açık bulunmasa bile kullandığınız eklentilerde açık bulunabilir. Bu dizini ziyaretçilere göstermek istemiyorsanız boş bir index.html dosyası oluşturup wp-content/plugins dizinine yükleyin. Bu anlattığım önlem güncel sürümlerde zaten index.php olarak alınmış durumda. Eğer yoksa boşindex.html dosyasını kullanabilirsiniz.

Gereksiz Bilgilerin Görüntülenmesini Engelleyin

WordPress sitemize giriş yaparken bir hata aldığımızda size nerede hata yaptığınıza dair bilgiler verir. Bu şifresini unutan bir kullanıcıya yararlı bir bilgi olabilir ancak sitenizi hacklemeye çalışan biri için de yararlı bir bilgi olabilir. Bu yüzden bu hata yazısını kaldırmalıyız. Bunu yapabilmek için temanızın functions.php dosyasına uygun bir yere aşağıdaki kodu eklemeliyiz.

add_filter('login_errors',create_function('$a', "return null;"));

 

WordPress Sürüm Numaranızı Gizleyin

WordPress otomatik olarak sayfa kaynağında ek bir kodla kullandığınız WordPress sürümünü gösteriyor. Bu da yeni güncellemeler çıktığında güncellemeyen kullanıcılar için kötü bir durum. Bu kodu engellemek çok kolay. Aşağıdaki kodu temamızın functions.php dosyasına uygun bir yere eklemeliyiz.

remove_action('wp_head', 'wp_generator');

 

Varsayılan “admin” Kullanıcısını Değiştirmek

Eğer WordPress sitenizde kullanıcı adınız admin ise bunu değiştirmenizi öneririm. Bunu yapabilmek için veritabanınızdan şu SQL sorgusunu çalıştırmanız yeterli olacaktır.

UPDATE wp_users SET user_login = 'Yeni' WHERE user_login = 'Admin';

 

Zararlı URL İstekleri İçin Bir Eklenti

Hackerlar zayıf gördükleri sitelere saldırmak için çoğunlukla zararlı sorguları websitenize yönlendiriyor. WordPress’in kendi önlemleri var ancak yetersiz. Bu sebepten dolayı aşağıdaki eklentiyi sitenize kurun. Artık websiteniz zararlı sorgulardan korunacaktır.

Block Bad Queries

.htaccess İle Dosyalarınızı Koruma Altına Alın

Güvenli bir WordPress sistemi için iyi bir .htaccess dosyası şart. Bu dosyada genellikle WordPress yönlendirme kodları vardır ama geliştirmek ve güvenliğimizi arttırmak bizim elimizdedir. Bu sebeple aşağıdaki kodları .htaccess dosyanızın en üstüne yapıştırmanızı tavsiye ederim. Her bir kodun ne işe yaradığı kodda yazmaktadır. Eğer henüz bir .htaccess dosyanız yoksa boş bir dosya oluşturup içine aşağıdaki kodları yazın ve sunucunuza yükleyin.

# Sunucu imzasını kaldır
ServerSignature Off 
# Dosya yükleme boyutunu 10mb ile sınırlandır 
LimitRequestBody 10240000 
# Dizin listelemeyi iptal et 
Options All -Indexes 
# Dosya erişimlerini engelle 
order allow,deny 
deny from all

 

Yukarıdaki yöntemler ile sitenizi koruyabilirsiniz ancak daha fazla güvenlik için eklentiler araştırıp bulabilirsiniz. Bu yöntemleri uygulamanızı şiddetle tavsiye ederim. Emin olun uğraştığınıza değecektir. Bu yazımızın da sonuna geldik. Bir sonraki yazımızda görüşmek üzere…

 

Login LockDown Eklentisini Kurun

 

Eklentinin yaptığı iş, wordpress giriş ekranında belirlediğiniz sayı kadar (varsayılan 3) yanlış şifre denemesinden sonra deneme yapanın IP’sini belirlediğiniz süre (varsayılan 60 dakika) kadar yasaklıyor.
Yasaklı IP’ler eklentiye ait olan bir tabloda tutuluyor. Eğer yanlışlıkla kendinizi yasaklarsanız, veritabanınıza ulaşıp, ilgili kaydı silerek yasağınızı kaldırabilirsiniz.