Joomla! CMS çoğu zaman bilgi sahibi olmayan insanlar tarafından güvensiz olarak görülür. Ne kadar az şey biliyorlar! Gerçek şu ki, herhangi bir sistem %100 güvenli değildir, eğer bunu güvenceye almak için sizin bir planınız yoksa.
Çoğu insan, "güvenlik" kelimesini duymaktan korkar. Bu kelimeyi duymak zorunda değilsiniz. Sitenizi güvenli hale getirmek için, nerede ve nasıl ne yapılması gerektiğini biliyorsanız, oldukça kolaydır. Bu makale sadece yüzeyi çizebilir, ancak sitenizin güvenliğini birkaç kolay adımda gerçekleştirmeniz için yeterli tavsiyede bulunur.
Eğer daha önce Joomla! siteniz saldırıya uğramış ve paniklemiş bir kullanıcının hayal kırıklığına uğramış iseniz, forumlar'daki bir çok mesaja denk gelmiş olabilirsiniz. Gerçek şu ki, tüm web uygulamaları aynı şeyden muzdariptir, çünkü doğadan güvensiz olmaları değil, çoğu insanın sitelerini korumak için ne yapmaları gerektiği konusunda en ufak bir ipucu yoktur.
Güvenlik çok zor değil, ama çok da basit değil. Bu gereklidir, ancak hiçbir yöntem kurşun geçirmez değildir. Sonuç olarak, bu makale Joomla! Güvenlik ile ilgilidir, ama isterseniz Joomla! Güvenlik Kontrol Listesine ulaşarak kolayca takip edebileceğiniz bir dizi kılavuz bulabilirsiniz. Joomla! web siteniz saldırıya uğramadan önce yapılacaklar listesini sırası ile kontrol edelim.
Joomla! Site Yedekleme
Murphy Yasasına göre, bilinen en iyi duruma geri dönmek için bir araç olmadığında bir felaketin grev yapacağını belirtir. Web sitenizin yedeği olmadan yakalanmayın! Büyük şirketler, bir yedeği olmadıklarından ya da sadece kısmi bir kısmından dolayı başarısız oldular. Joomla! hakkında konuşurken sitenizin, dosyalarınızın ve veritabanınızın tam bir yedeğine ihtiyacınız var. Tam bir site yedeği oluşturmanın en kolay yolu, ücretsiz yedekleme bileşeni olan Akeeba Backup'dır.
Önemli bir faktör, kaç adet yedeklemenin saklanması ve bunları nasıl saklamanızdır. En az bir aylık günlük yedeklemeleri veya 6 aylık, haftalık yedeklemeleri saklayın. Bu şekilde, siteniz tehlikeye atılmış olsa bile, zamanında bilinen güvenli bir konuma geri dönebilirsiniz. Yedeklerinizi sitenizle aynı sunucuda tutmayın! Onları sabit sürücünüze indirin ve CD-ROM, flash disk veya harici sabit sürücü gibi farklı çıkarılabilir ortamlarda saklayın ve en az iki kopya alın, her kopya farklı bir fiziksel konumda depolanır. Daha da iyisi, yedekleme arşivinizin bir kopyasını güvenli bir şekilde saklamak için bir bulut depolama hizmeti (Amazon S3, DropBox, Wuala veya Ubuntu One gibi) kullanın.
Joomla! Sürüm Yükseltme
Joomla! çekirdek yapısını ve uzantıları yükseltmek en iyi iştir. Tabii ki, zaman içinde geriye doğru hareket edemezsiniz ve bu yüzden güvenlik açıkları ile güncel kalmak büyük önem taşımaktadır. Savunmasız Uzantılar Listesi'ne Buradan ulaşabilirsiniz. Ayrıca, sitenize yüklediğiniz tüm uzantıların haber akışına da abone olmanız gerektiğini söylemeliyim.
Güncellemeleri canlı sitenize uygulamadan önce test etmek isteyebilirsiniz. Yedeklemeyi kullanabileceğin için Akeeba Backup yine işinize yarayacaktır. Bir alt etki alanında veya yerel bir sunucuda sitenizin bir "kopyasını" üretmek için bir yedek aldın, değil mi?. Güncellemeleri bir alt etki alanında uygulayın ve her şeyin çalışır durumda olduğundan emin olun.
Süper Yönetici Hesabını Değiştirin
Standart Joomla! kurulumu'nda bilinen bir kullanıcı adı (admin) ve bilinen bir şifre (123456) kullanmayın, farklı bir Süper Yönetici hesabı oluşturun, ayrıca olası bir durum için yedek veya yeni bir yönetici hesabı oluşturarak bilinen ID numaralarından kaçının.. En iyi yaklaşım, yeni bir Süper Yönetici kullanıcısı oluşturmak ve varsayılan yönetici kullanıcısını kayıtlı seviyeye kadar tümüyle engellemek veya düşürmektir.
Birden Fazla Arka Uç Kimlik Doğrulaması
Tüm Joomla! sitelerin ortak bir yönü vardır: arka uç URL. Her zaman example.com/administrator gibi bir şeydir. Bu durum kaba kuvvet saldırılarına, yani Süper Yönetici olarak başarılı bir şekilde oturum açana kadar kullanıcı adlarını ve şifrelerini deneyen bir kişiye açıktır. Bu sorunu azaltmanın en iyi yolu, sitenizi kırmaya yönelik girişimleri engellemek adına admin panel URL'sini değiştirmektir.
jSecure eklentisi, arka uç giriş sayfasına erişmek için bilmeniz gereken bir gizli kelime tanımlamanıza olanak tanır. Gizli kelimeniz "hello" ise, siteye giriş yapmak için tarayıcınızda example.com/administrator?hello gibi bir şey yazmanız gerekir, aksi halde ön sayfaya yönlendirilirsiniz.
Diğer çok etkili koruma araçları, yönetici dizinini bir parola ile güvenceye almaktır. Çoğu olmasa da, sunucu firmalarının kontrol panelleri genellikle bir dizini parola ile korumanıza izin verir. Böylelikle admin panel girişini şifreli bir hale getirerek koruyabilirsiniz, böylece arka uç giriş sayfasını görmek için bir kullanıcı adı ve şifre girmeniz gerekir. JSecure Authentication ile birleştirildiğinde çok güçlü bir arka uç koruma ayarına sahip olursunuz.
Dosya ve Klasör İzinleri
Özellikle, Joomla! 'yı barındırmak için standart dışı ana bilgisayarların yaygın kullanımı göz önünde bulundurulduğunda, bununla birlikte acı bir noktaya değindik. Güçlendirilmiş web siteleri. Ana makineniz suPHP'yi kullanmıyorsa - etkin bir şekilde izinleri dikkate alır - dosyalarınız ve klasörleriniz için güçlü bir izin kümesi kullanmanız gerekir. Hangi izinlerin, sahipliğin, kullanıcıların, vb. hakkında hiçbir fikriniz yoksa, önce web sunucu yönetimi özetini okumak isteyebilirsiniz.
Öncelikle, sitenizdeki her bir dosyanın FTP aracılığıyla yüklendiğinden emin olun, böylece hesabınızın kullanıcısını dosyanın sahibi haline getirin. Daha sonra, tüm klasörlerin izinlerini 755 ve tüm dosyaların 644 izinlerine sahip olduğundan emin olun. Son olarak, Joomla! 'nın Global Yapılandırmasında FTP katmanını açın. Bu, PHP'nin sunucunuzdaki dosyaları değiştirebilmesini gerektiren en çok bilinen komut dosyalarının başarısız olmasını sağlar.
Sistem Hata Ayıklama
Bu tartışılan bir tekniktir, ama yararlı buluyorum. Aynı zamanda, post-mortem, yani siteniz çatlaksa, problemi geri izlemek için gerekli. Sitenizin sistem günlüğünü indirip uygun bir araç kullanarak analiz etmeli ve orada bulunmaması gereken her şeyi aramalısınız.
"Ne olmamalı" örnekleri şunlardır:
- Base64 kodlanmış veriler
- SQL komutları
- Komut dosyası etiketleri
- Yazdırılamayan Unicode karakterleri
İnternette "Sistem Günlüğü" yada "Sistem Hata Ayıklama" ile ilgili bol miktarda kaynak var. Kafanızı bununla çok fazla meşgul etmeyin çünkü dediğim gibi, sitenizin sağlığını izlemek için başka bir araçtır. Çoğu zaman sitenizdeki saldırılarla ilgili hiçbir şey yapamazsınız, ancak en azından etkilerini anlamak için bunların yerel bir kopyasını aktarabilir ve olası ihlalleri tespit edebilirsiniz.
Değiştirilen Dosyalar Sitenizin Sonu Olabilir
Bu son adım. Sizi korumak değil, bunun yerine erken uyarı sistemi olarak hareket etmektir. Başarısız olmaları için kısıtlamalar ve kontroller koymak zorunludur. Einstein'ın açık bir şekilde söylediği gibi "Sadece iki şey sonsuzdur; insanoğlunun aptallığı ve evren" fakat ikincisi'nden emin değilim. Akıllıca bir kraker ya da aptalca bir betimleyici, güvenlik kontrollerini atlayıp sitenize yetkisiz erişim elde etmenin bir yolunu tutabilir.
Bu durumda bile, web siteniz çatladığında ne yapacağınızı bilmeniz gerekir. Çok kolay (kavramsal olarak) bir yol, sitenizin durumunu bilinen son iyi duruma göre karşılaştırmaktır.
Sonuç
Joomla! Güvenlik, geniş çaplı bir kitaba sığmayacak kadar geniş bir konudur. Yukarıdakilerin hepsi sadece ipuçlarıdır, doğru yönde birkaç iyi işaretçidir. Her birinin biraz okunmaya ihtiyacı vardır ve uygulanmak için bir deneme yanılma hatası. Roma'nın bir gecede inşa edilmediğini unutmayın. Bir kerede bir güvenlik kontrol noktasını uygulamaya çalışın ve güvenlik politikanızı mükemmelleştirmeye çalışın. Zaman alır, ancak buna değer, özellikle de sitenizden para kazanıyorsanız, doğrudan e-ticaret, reklamlar veya dolaylı olarak potansiyel müşterileri işletmenize yönlendirmek.
Son bir düşünce olarak, tüm bu güvenliğe gerçekten ihtiyacınız olup olmadığını merak ediyor olabilirsiniz. Cevabın, evet olduğunu biliyorsunuz! Sadece büyük bir kitleye sahip sitelerin çatlamaya eğilimli olduğunu düşünmeyin. Ayda sadece 30 ziyaretçisi olan web sitelerinin de saldırıya uğradığını görebilirsiniz. Neden? sanırım asla bilemeyeceğiz, belirsiz ya da akıl yürütmemizin ötesinde olabilir.
Kaynak: Nicholas K. Dionysopoulos