WordPress htaccess Güvenlik

Htaccess, Linux sunucularda kullanılan bir yapılandırma / komut dosyasıdır. Apache Web / HTTP Server sunucular için geliştirilmiş bir komut dosyası olsa da, diğer Linux Serverlar’da da otomatik ya da manuel olarak desteklenir. Sunucunun Güvenlik Yapılandırmalarından – Yetkilendirmelerine; Erişim İzinlerinden URL Yönlendirmeleri / Yeniden Yazma kurallarına kadar esnek konfigürasyonları kapsar ve Hypertext Access‘in kısaltmasıdır. Drupal – Joomla – WordPress gibi bir İçerik Yönetim Sistemi (CMS) tarafından otomatik olarak gelir ve çoğu sunucular; kullanıcı tarafından düzenlenmesine / oluşturulmasına izin verir.

 

WordPress sisteminin temel güvenlik yapılandırmaları, ayarlar ve yönlendirmeleri için; -varsayılan olarak kabul edilebilecek- düzenlemelerini uygulamanız, hem WordPress üzerindeki işlerliliğinizi hem de temel yetkilendirme ve güvenlik önlemlerinizi garanti altına alır. Htaccess dosyası sunucunun kök klasöründe; public_html dizininde bulunur; müdahale etmeniz için FileZilla gibi bir FTP istemcisi kullanmanız veya cPanel / Plesk paneller üzerindeki Dosya Yöneticisine başvurmanız gerekir.

 

/* Yapılandırmadan önce Htaccess dosyanızın yedeğini alın. Yanlış bir yapılandırma, sunucunuzda Internal Server Error sonucunu döndürecektir: Varsayılan için aşağıdaki Varsayılan konfigürasyonu izleyin: Konudaki bütün Htaccess komutlarının yazım hatası ve çalışabilirlikleri test edilmiştir */

 

WordPress Default / Varsayılan Htaccess

 


 

/* WordPress Default / Varsayılan Htaccess; bu dosyaya müdahale eden bir eklenti / servis varsa eğer Htaccess üzerindeki yapılandırmalarını da sıfırlayacaktır */ 

 

WordPress .htaccess Kodları (WordPress .htaccess Güvenlik – Temel)

 

Dizin Taramayı Devre Dışı Bırakın

Dizinlerdeki bütün dosyaları dışarıdan erişime kapatın: WordPress Dizin Gizleme hakkında ayrıntılı bilgi almak için WodPress’de Dizin Taramayı Devre Dışı Bırakma konusunu inceleyin


 

WordPress Sürümünü Gizli Tutun

Kök dizinde bulunan (public_html) ve silinse bile güncelleme sonrası yine gelen license.txt dosyası WordPress sisteminin sürümü hakkında bilgi sızdırır. Genelde sakıncalı olarak yorumlanmıyor olsa da WordPress sisteminizin sürümü; bir hacking senaryosunda kullanışlı bilgidir. Çünkü bir önceki sürümde taranmış açıklar son sürümde kapatılmış olabilirler ve dolayısıyla WordPress’in sürümünü öğrenmek girişim için kestirme bir yol açabilir. Bununla birlikte WordPress CMS kullandığınızı gizleyecek (eğer böyle bir amacınız varsa) metotlardan sadece biri olan readme.html dosyasını da engelleyebilirsiniz.

 


 

Kritik PHP Dosyalarına Erişimi Engelleyin

WordPress sisteminde çekirdek dosyalara erişim; bir hack girişiminde Backdoor / Arka kapı açabilir ve olası bir açık tarafından da bu dosyalara dışarıdan müdahale edilebilir. Güvenlik açıklarının sistematik olarak kontrol edilmediğini varsaydığımızda; çekirdek dosyalarının kontrol edilmesini önceden önlemek, temel WordPress güvenliğinin en kolay ve en hızlı yoludur.

 


 

/* </FilesMatch> yönergesi yerine, tek bir dosya için deny from all yönergisini de kullanabilirsiniz. Örnek için aşağıdaki kod satırını inceleyin; bu örnekte kök dizindeki wptrackback.php dosyası engellenmiştir */


 
Hotlink Suistimallerini Engelleyin

Sitenizdeki her bir dosya download edildiğinde / görüntülendiğinde bant genişliği harcar. Dosyaların doğrudan link yapıları, başka bir web sitesi tarafından da kullanılabilir ve bu durum bant genişliğinizi çalınmasına yol açar. Aşağıdaki komutun son satırını özelleştirebilirsiniz; video / text formatlarını da buraya ekleyebilirsiniz. Example.com dosyaların görüntüleneceği adrestir; web sitenizin alan adı ile değiştirin. Dosyalarınıza doğrudan bağlantı vermesi için de google.com için izin verin. Eğer partner siteniz ya da ikinci bir web siteniz varsa: RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example.com [NC] satırını kopyalayarak çoğaltın. (bu yapılandırma cPanel ve Plesk panellerde de gerçekleştirilebilir; bu paneller üzerindeki yapılandırmalar da Htaccess dosyasını düzenleyecektir)

 


/*Aşağıdaki Hotlink yapılandırması ise doğrudan URL erişimlerini de reddeder. Eğer direkt linklerin; example.com/image/image.png gibi engellenmesini istiyorsanız aşağıdaki yapılandırmayı kullanın */

 


 

/* Eğer zaten bir CDN servisi kullanıyorsanız; bu yönergeye ihtiyacınız yok demektir. CDN servisleri, genellikle URL Şifreleme metotları kullanır. Büyük web sitelerinde hotlink bu yönerge ile engellenmez; hotlink’i bu yönerge ile -tamamen devre dışı bırakmak- küçük çaplı web sitelerinde kullanılmalıdır *

 

Injection / XSS  Değişkenlerini Değiştirin

XSS Enjeksiyon, web sitelerinin yapısının ve görünümünün değiştirilmesine, yasaklanmış bölümlerine / dosyalarına erişimini sağlayan; böylelikle kimlik bilgilerinin çalınmasına ve ip uçlarının toplanmasına izin veren kod hatalarıdır. XSS saldırılarındaki / Siteler Arası Komut Dosyası Enjeksiyonları’ndaki bu global PHP isteklerini aşağıdaki bir kod parçacığı değiştirmeyi deneyin

 


 

MySQL / Veritabanı Enjeksiyon Sorgularını Engelleyin

MySQL Injtection PHP / WordPress sistemlerine yapılan yaygın bir ataktır. Web siteniz, Dedicated Server’da / Adanmış bir sunucuda barınıyorsa, muhtemelen bu sunucudaki mod_security kuralları düzenlenmiştir. Ama web siteniz paylaşımlı bir barındırmada yer alıyorsa bu kuralları değiştirme ve kontrol etme durumunuz yok demektir. Böyle bir senaryoda, MySQL / Veritabanı Enjeksiyon temel deneme girişimlerini / sorgularını aşağıdaki kodla önlemeye çalışın

 

/* Bazı durumlarda wp-admin.php yolu engellenebilir; sitenize wp-login.php kullanarak giriş yapın */


 
XML – RPC Dosyasına Erişimi Engelleyin

XML – RPC, WordPress’in uzaktan veri iletimini sağlayan protokolüdür. Bu PHP dosyası, üçüncü taraf uygulamaların sisteminize erişimine izin verir. Jetpack gibi üçüncü taraf bir uygulama kullanmıyorsanız ve ne yaptığınızdan tam olarak emin değilseniz; XML – RPC DDoS ataklarına da açık hale gelebilirsiniz; böyle bir senaryoda WordPress’in bu özelliğini devre dışı bırakın

 


 

Yazar Taramalarını Engelleyin

Aslında yaygın ve krtik bir açık meydana getirmese bile -temel bir parola atak girişimi- düşünüldüğünde web sitenizdeki yazarlar (Siz – Administrator dahil) hakkında da bilgiler toplanabilir. Bu taramayı devre dışı bırakarak; hacking metotlarında kullanılan temel ip uçlarından birini daha kapatabilirsiniz

 


 

Htaccess Dosyanıza Yetkisiz Erişimi Engelleyin

Sunucunuz üzerindeki açıklardan; (bunlar yalnızca sunucu üzerinde / web server üzerinde çalışan ve kontrolünüz dışında çalışan eklentilerdeki açıklar da olabilirler) yararlanılarak htaccess dosyasına da müdahale edilebilir ve yetkisiz girişimlere de doğrudan htaccess üzerinden izin verilebilir. Apache Web Server üzerinde çalışan htaccess kodları; ne bu konudaki ne de başka bir platformdaki özelleştirilebilir kod parçacıkları ile sınırlı değildir ve bir sunucu üzerinde kritik özelleştirmelerden, kritik izinlere kadar birçok değişikliği meydana getirebilirler. Gerçi güvenlik prensiplerine dikkat eden barındırma şirketleri, paylaşımlı sunucular üzerindeki bu tür müdahaleleri göz önünde tutarlar; ama yine de aşağıdaki kod parçacığı ile bu dosya üzerinde, uzaktan bir düzenleme izni bulunmadığından emin olun

 


 

/* Kök dizindeki – public_html dizinindeki PHP dosyalarının uzaktan erişimlere açık olmadıklarını URL üzerinde doğrulayın: example.com/wp-activate.php biçiminde direkt URL adreslerine başvurun; wp-signup.php ve diğerleri için. Eğer, açık görünüyorsa, bu dosyaların her birini ayrı olarak aşağıdaki kod parçacığı engelleyin. Benzersiz  yönetici URL’si tanımlanmamış ise, wp-login.php için uygulamayın */

 


 

/** WordPress için htaccess söz konusu olduğunda, diğer birçok anlatımlarında olduğu gibi; sıradan WordPress rehberlerinde göz doldurmak için opsiyonel yapılandırmalar da yer alır. Bunlar genellikle WordPress URL Yönlendirme, WordPress’de IP Adreslerini Engelleme, Yönetici Paneli İçin İzin Verilecek IP Adreslerini Belirleme gibi fonksiyonları. Örneğin WordPress’de bir URL yönlendirme gereksinimini duyuyorsanız; muhtemelen de WordPress SEO ile ilgilenmektesinizdir ve ihtiyacınız olan bir SEO Eklentisi üzerindeki yönergelerdir. Eğer, eski bir alan adınızı, yeni alan adınıza yönlendirmek istiyorsanız, buna daha sonra başka bir başlık altında ihtiyaç duyacaksınız demektir, çünkü SEO sizin için önemli demektir; bu durumda htaccess’deki 301 Redirect işlevi yeterli değil demektir. Kullanıcı IP adreslerinin yasaklanması ya da yalnızca bir IP adresine izin verilmesini; temel bir WordPress htaccess yapılandırmasında araya sıkıştırmak; statik IP ve dinamik IP kavramlarını bilmemek demektir. Eğer, İnternet Servis Sağlayıcınız (ISS) tarafından özel olarak atanmış Statik / Sabit IP kullanmıyorsanız; bu fonksiyonu tercih etme durumunuz olmayacaktır */

 

(640)


640
Görünüm

Avatar

Sadece şu HTML etiketini çalıştırabilirsin: <code>