Alınmıştır..
Wordpress her ne kadar gelişmiş güvenliğe sahipi sürekli güncel tutulan bir sistem olsada biz kullanıcıları tarafındanda alınması gereken birkaç önlem bulunmaktadır. İşte alınması gereken güvenliklerden birkaç tanesi:
Wordpress Versiyonunuzu Saklayın
Kullandığınız Wordpress’inizi ele geçirmek isteyen “hacker” ‘ların öncelikli bakacağı şey Wordpress sürümüdür. Çünkü mevcut sürümünüzü öğrenerek, o sürümde var olan açıklar ile sisteme sızmak kolay olabilir. Buna önlem olarak kullandığınız temada ki(header.php) alt yapının Wordpress olduğunu belirten ve sürümünü gösteren meta tag’ını şu şekilde düzenlememiz lazım:
Değiştirmeden önce elimizde olan kod:
-
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />
Olması gereken hali:
-
<meta name="generator" content="WordPress" />
<meta name="generator" content="WordPress" />
Replace WP-Version Eklentisi: Bu eklenti biraz önce yapmak istediğimizi kendisi yapabiliyor. Hatta database sürümünüde silebildiği diğer bir özelliği. Buyrun
buradan deneyin.
wp-admin Klasörünü Korumak
Kötü niyetli kişilerin amaçlarından biride şifrenizi ele geçirerek Yönetici Paneli’ne ulaşıp buradan siteye hükmedebilmektir.
wp-admin klasörüne erişimi IP adresi ile engellemek
Bu yöntemde admin klasöründe oluşturacağımız .htaccess dosyası ile belirli bir IP adres(ler)ine erişim hakkı sağlayıp diğerlerinin erişimini engelleyeceğiz.
Önemli Not: Düzenlenecek yada yeniden oluşturulacak .htaccess dosyası
wp-admin klasörü içindeki olandır!
-
AuthUserFile /dev/null
-
AuthGroupFile /dev/null
-
AuthName "Example Access Control"
-
AuthType Basic
-
<LIMIT GET>
-
order deny,allow
-
deny from all
-
allow from xx.xx.xx.xx
-
allow from xx.xx.xxx.xx
-
</LIMIT>
AuthUserFile /dev/null
AuthGroupFile /dev/null
AuthName "Example Access Control"
AuthType Basic
<LIMIT GET>
order deny,allow
deny from all
allow from xx.xx.xx.xx
allow from xx.xx.xxx.xx
</LIMIT>
Bu kodu .htaccess dosyasına ekleyin ve kaydedin. “allow from” karşılıklarına IP adreslerinin geleceklerini unutmayın. Bu şekilde birden fazla IP adresine hak tanıyabilirsiniz. IP adresinizi ise
buradan öğrenebilirsiniz.
Login Lock Down eklentisi
Login Lock Down eklentisi admin paneline girişteki şifre ekranındaki başarısız girişlerin bir listesini tutar ve bu listede giriş yapmaya çalışan IP adreslerini ve zaman aralıklarını barındırır. Eğer belirlenen başarısız giriş sayısı aşılırsa giriş isteklerine bir süre cevap verilmemesini sağlar. Bu süreleri kendiniz istediğiniz gibi düzenleyebilirsiniz.
Buradan eklentinin sayfasına gidebilir ve kullanmaya başlayabilirsiniz.
Güncel Kalın!
Sağlam ve güvenli bir sistem için her zaman geliştiricilerin yayınladığı son sürümleri takip edin. Gerek Wordpress sürümü, gerek eklenti ve tema güncellemelerini kullanın ve güncel kalın!
Wordpress Güncelliği
Bir alt yapı ne kadar güçlü olursa sistem o kadar güvenli çalışır ve o kadar canlı olur. Unutmayın her yeni yayınlanan sürümle beraber yeni güvenlik önlemleri alınır ve mevcut açıklar kapatılır. Siz bu yükseltmeleri yapmazsanız olası saldıralara karşı koyamazsınız.
Unutmayın: Wordpress 2.3‘ten beridir var olan özellikle her yeni Wordpress sürümünü yönteim panelinde bir uyarı kutucuğu ile öğrenebiliyoruz. Takipte kalın ve güncel olun! Wordpress’ini sürekli güncel tutabileceğiniz eklentiler:
- Instant Upgrade Eklentisi Basit birkaç adımda son sürüme/istediğiniz sürüme yükseltmeyi olanak sağlıyor. Fakat otomatik olarak yedek almıyor!
- Wordpress Automatic Upgrade Eklentisi Diğerinin aksine bu eklenti çok gelişmiş özellikleri ile sürüm yükseltme yapmanızı sağlıyor. Güncelleme yapılırken sitede bir mesaj göstermesi, eklentileri aktifsizleştirip yeni dosyaları yüklemesi ve yeniden aktifleştirmesi özellikleri arasında
Eklenti Güvenliği
Dikkat edilmesi gereken önemli bir unsur eklenti güvenliğidir. Çünkü eklentiler yayınlandıktan sonra farkedilen açık yada sorunlar bir alt sürümle yeniden yayınlanır ve bu eklentileri güncelleştirmek
önemlidir! Bir çok saldırının güncel olmayan eklentiler ile başarıya ulaştığını unutmayın.
Sürekli güncellemelerden bahsettik ve bunun önemini vurguladık. Bir diğer unsur ise güvenilir olmayan eklentileri seçmeyin. Önceden araştırma yapın, eklenti için yapılan yorumlara bakın ve sonra o eklentiyi edinin.
Alacağımız önemli bir tedbir ise wp-content/plugins/ klasöründe bir boş index.html dosyası oluşturarak yüklü eklentilerin görünmesini engellemektir. “Hacker”‘lar kullandığınız eklentileri öğrenerek bunlarından açıklarından yararlanmak isteyecektir.
Tema Güncelliği
Tema’nın ne etkisi olabilir diye düşünmeyin. Tema sanatçısının eklediği bir özellik yada yanlış kullanılan bir PHP komutu bir açık yaratabilir. Yeni alt sürümlerle bunların önüne geçilmek istenilebilir, sizinde bu güncellemeleri takip etmeniz önerilir.
“wp-config.php” Güvenliği
Önemli bilgi ve şifrelerin saklandığı dosya olan wp-config.php güvenliği belki dikkate alınması en önemli unsurdur. Bunun için alınan çok basit bir önlem vardır, Wordpress’inizi kurduğunuz klasörün içindeki .htaccess (eğer kullanmıyorsanız oluşturunuz) dosyasının içine:
-
<FilesMatch "wp-config.php[~]*">
-
<Limit GET>
-
deny from all
-
</Limit>
-
</FilesMatch>
<FilesMatch "wp-config.php[~]*">
<Limit GET>
deny from all
</Limit>
</FilesMatch>
kodunu ekliyoruz ve erişimini dış unsurlara engelliyoruz. İşte bu kadar çok basit.
Birinci bölümde birçok güvenlik önlemlerinden bahsettik. Nasıl güvenli bir Wordpress’e sahip olacağımızı bir nebze anladık. Şimdi serinin ikinci ve son bölümü ile devam ediyoruz. Bu bölümdede önemli güvenlik bilgileri sizleri bekliyor.
Kullancı Güvenliği
Kullanıcı bilgilerinizin güvenliği blogunuzun güvenliği demektir. Bu bilgiler ne kadar ulaşılmaz ise blogunuz o kadar güvenlidir. Kullanıcı bilgileri adlı sözlüğü açmak gerekirse bu ikiye ayrılır:
Kullanıcı İsmini Değiştirmek
Wordpress kurulumu yapıldığında standart olarak kullanıcı ismi admin olarak atanır (her ne kadar kullanıcı ismi olarak blog içinde farklı isimde kullanabilsekte) ve bu yönetim panelinden değiştirilemez. Kullanıcı ismini database’den değiştirerek kolayca brute force’a karşı bir önlem almış oluruz. Peki nasıl değiştireceğiz?:
- Bir MySQL yönetim aracı ile (örneğin phpmyadmin) Wordpress’inizin kurulu olduğu database’i görüntüleyin.
- Bulunduğunuz database’de wp_users tablosunu (Not: wp ön takısı farklılık gösterebilir) seçin ve “Gözat” ‘a tıklayın.
- Buradan admin ‘i bulun ve “Düzenle”‘ye tıklayın.
- user_login sütunundaki admin ‘i değiştirin. Fakat bu tahmin edibelecek kolay bir isim olmasın.
Şifre Güvenliği
Sürekli duyduğumuz birşey “Güvenli şifreler kullanın”. Evet aynen öyle, olabildiğine uzun karmaşık şifreler kullanmak güvenliği üst düzeye çıkarır. Ayrıca büyük küçük harf kullanımı %&#$ gibi karakterler kullanımı üst düzey olan güveliği daha bir üst düzeye çıkarır. 4 karakter gibi bir şifre seçmeyin, seçtiğiniz şifreler isminizden doğum gününüzden ibaret olmasın. Wordpress’in kullanıcı yönetiminde bulunan şifre değiştirme kısmının altında şifre gücünü öğrenebileceğiniz küçük bir araç var. Göz ucuyla ne kadar güvenli bir şifrenizin olduğunu bir deneyin.
Arama Motorlarını Wordpress Klasörlerinden Uzak Tutmak
Wordpress klasöründe bulunan dosyalarınızın arama motorları tarafından hiç bir şekilde index’lenmesine gerek yok, sizde zaten kullandığınız eklentileri, versiyonunuzu (vs.) paylaşmak istemezsiniz. Bunun için Wordpress’in kurulu olduğu klasörde (eğer yoksa) robot.txt dosyası oluşturuyor (varsa altına ekliyoruz) ve alttaki tek satırlık kodu ekliyoruz:
Disallow: /wp-*
Yedek Almak
Yedek almak bilindiği üzere olası hatalardan yada kötü amaçlı kişilerin amaçlarına ulaştıktan sonra verdiği hasarlardan sitemizi yeniden kurtarabilmemizi sağlar. Yedeklerin güvenli bir yerde tutulması, alınan yedeklerinden hasarlardan nasibini almasını engeller. Mesela günlük yedek alarak bunları bir CD’ye yazdırmanız alınan yedeğin değiştirlmesini ve uzun süre korunmasını sağlar. MySQL yedeğinin yanında dosyaların yedeğini almayıda ihmal etmeyin.
WordPress Database Backup Eklentisi
Yedek alan eklentiler arasında en iyisi olan
WordPress Database Backup, basit bir şekilde yedek almanızı sağlıyor. Hatta yedek alırken size 3 seçenek sunuyor:
- Yedek server’da mı depolansın?
- Yedeği bilgisayarınıza mı yüklemek istersiniz?
- Yoksa size email olarak mı atılsın?
Ayrıca bunlara ek olarak bir yedek alma takvimi belirleyip bu işi otomatik olarak eklentiye bırakabiliyorsunuz.
Diğer yardımcı güvenlik eklentileri
Şu ana kadar birçok bilgi ve eklenti ile güvenliğimizi arttırdık, bu arada kendimizide geliştirmiş olduk. Serinin son bölümünde yararlı diğer Wordpress güvenlik eklentilerini size tanıtacağım.
Semisecure Login
Bu eklenti Wordpress’e giriş yaparken girilen şifrenin gönderilmeden önce MD5 ile şifrelenerek sunucuya kontrol edilmesi için gönderiyor. MD5 ile şifrelemesinin nedeni network’ünüzde sizi takip eden birinin kolayca şifrenizi ele geçirmeyi
engellemek.
Force SSL
Eklenti sayesinde HTTPS bağlantısı oluşturarak daha güvenli bir Wordpress
sağlıyor. Fakat bunun sağlayıcınız tarafından desteklenmiş (SSL sertifikası gerekli) olması lazım.
WP Security Scan
WP Security Scan sizin için güvenlik taramaları yapıyor. Dosya izinlerini, şifreleri,database güvenliğini ve yönetim panelinin güvenliğini tehdit edebilecek bazı önlemlerin alınmadığını size belirtiyor ve basit bir şekilde daha güvenli bir sisteminiz olmasını
sağlıyor.
Secure Wordpress
Bu eklentinin özellikleri arasında hata rapolarını (giriş yapılırken kaydedilen) silmek,
wp-content/plugins klasörüne boş bir index.html dosyası ekleyerek eklentilerinizi gizlemek ve son olarak Wordpress versiyonunu kaldırmak
bulunuyor.
WP-SpamFree
Bu eklenti Akismet gibi spam mailleri ayırt edip bunları uzak tutan bir
eklenti.
Bitirirken
Yukarıda ve
birinci bölümde anlatılan bir çok güvenlik önlemlerini öğrendik ve sistemimizi daha güvenilir yaptık. Uyarıları dikkate alın ve sisteminizi hep koruyun!
Ayrıca burayı sürekli
takipte kalın ve bunun gibi, ilerde yayınlanacak diğere geliştirme araç ve dökümanlarını okuyun!
Bu yazı serisini yazarken yararlanılan kaynaklar