Joomla’da Maximum Güvenlik
Joomla İçin Maximum Güvenlik.
Joomla içerik yönetim sistemi sıklıkla güncellenen ve bu güncellemelerde genellikle düşük seviyeli çekirdek kod iyileştirmeleri ve geliştirmeleri yapılmakla beraber güvenli bir sistem olma özelliğini daima koruyor.
Fakat burada kafa karışıklığına sebep olan şeylerden en önemlisi de 3. parti eklentiler dediğimiz bileşen, plugin, modül vb… eklentileri Joomla scriptiyle karıştırılması ki bir çok hack sitesinde yer alan ve joomla’nın açıkları diye bildirilen açıkların tümüne bakarsanız “com_filan, com_falan” ile başlayan ve 3. parti eklentiler olduğu anlaşılan bileşenlerdir. Dolayısıyla bu eklentilerin joomla ile tek bağı sadece ve sadece joomla’ya yüklenebilen eklentiler olmasıdır. Oysa ki joomla’nın çekirdek kodları gayet sağlam ve joomla geliştiricilerinin üzerinde büyük emek harcayarak geliştirdikleri en stabil kodları içerdiğinden joomlanın ana (çıplak olarak yüklenen varsayılan) sisteminde bu gibi bir güvenlik zafiyeti henüz tespit edilmemiştir.
Bunun en güzel açıklamalarından birisi niteliğinde olan ve Joomla yönetim panelinde ana sayfada yer alan aşağıdaki resim olsa gerek.

Burada görüldüğü gibi yukarıda bahsettiğimiz konunun bir özeti niteliğinde, 3.parti eklentiler diye adlandırılan ve joomlanın standart kurulumundan sonra kullanıcıların kendi ihtiyaçlarına göre yüklemiş olduğu bileşen vb… eklentilerdir.
Peki bizler Joomla’yı ilk kurulu olduğu halde ve eklenti yüklemeksizin mi kullanacağız, bu sorunun yanıtı tabiî ki hayır olacaktır, yeterki aşağıda gelecek olan açıklamaları dikkatlice okuyalım.
Joomla Güvenliği İçin Yapılması Gerekenler
1 – Daha önce de değindiğimiz gibi Joomla, sık aralıklarla diyebileceğimiz süreçte, joomla geliştirici takımı tarafından güncellenen ve bu sayede daima güvenli olarak çalışması sağlanan bir sistem olduğuna göre, Joomla resmi sitesi olan http://joomla.org sitesinden veya resmi Türkiye Partneri olan www.joomlaturkiye.org adresinden en son sürüm Joomla’yı kullanıp gerekiyorsa kullandığımız sistemi yine aynı sitede yayınlanan güncelleme paketleriyle daima güncel tutmak
2 – Yine joomlanın resmi eklenti sitesi olan http://extensions.joomla.org adresindeki eklentileri kullanmak ve bu sitede yer almayan eklentileri sisteminize kurmamak. Mesela güvenlik bileşeni adı altında yayınlanan eklentilerin daha bu belirttiğimiz sitede yer almaması da gerek düşündürücü gerek dikkat etmemiz gereken hususlardan bir tanesi olarak önümüze geliyor. Bu sebeple bu tip bileşen ve diğer eklentileri sisteminize yüklemeyin aksine bu eklentiler birer güvenlik zafiyeti oluşturabilirler. Bunun yerine aşağıda geleceği üzere tedbirleri almanız maximum güvenlik için yeterli olacaktır.
3- Genellikle Chmod – Permission – Dosya ve Klasör İzinleri - şeklinde adlandırılan ve sunucuda bulunan dosya ve klasörlerinizin yazılabilirlik izinlerini niteleyen bu kelimeler çoğu joomla sitesinde yer almaktadır. Joomla’nın dosya ve klasör izinlerini dosyalar “644” klasörler de “755” olarak ayarladığınızda bu güvenli bir izin ayarı olduğu gibi sizin sahipliğinizde bu şekilde ayarlanmış izinlerin yine sizin için bir çalışma problemi olmaksızın işlemlerinizi yapabilmenizi sağladığı gibi normal bir güvenlik sağlamış olacaktır (dosyalar ve klasörler üzerinde). Bu izinleri gerek sunucunuzun dosya yöneticisi bölümünden gerekse de ftp den yine sunucunuza bağlanarak takip edip düzenleyebilirsiniz.
4- Joomlanın işleyişine dair ayarların olduğu dosya “configuration.php” dosyasıdır ve bu dosyanın sizin dışınızdaki kullanıcılar tarafından ulaşılmaz olması gerekmektedir ve genel olarak chmod ayarı “644” tür. Şimdi anlatacağımız uygulamayla bu dosyanızı joomlanın ana dizinindeki yerinden başka bir yere taşıyıp tamamen erişilmez olmasını sağlamak güvenlik için alınabilecek en iyi tedbirlerden bir tanesidir. Şimdi bu işlemin nasıl yapılacağını görelim.
Öncelikle configuration.php dosyamızın yedeğini alalım ve bir hata yapmamız durumunda kolayca hatamızı telafi edebilelim, ardından bu dosyamızı istediğimiz bir yere taşıyalım örneğin joomla klasörlerinden bir tanesi olan “includes” klasörüne. Ardından boş bir txt dosyası açarak içine aşağıdaki kodu ekleyelim ve “farklı kaydet” diyerek dosyamıza “configuration.php” adını verelim
<?php
require( ‘/home/www/includes/configuration.php’ );
?>
Burada tanımlanan yol configuration.php içinde “$mosConfig_absolute_path” diye tanımlanan kodun karşısındaki mutlak dizin yoludur, bu yol sizin asıl configuration.php dosyanızı taşıdığınız yol olmalıdır. Bu yeni configuration.php dosyamızı asıl dosyamızın yeri olan joomla ana dizinine ftp yardımıyla atalım ve chmod ayarını “444” olarak verelim.
Böylelikle eski dosyamızın yerini bu yeni oluşturmuş olduğumuz configuration.php dosyası almış oldu, artık bu dosya sistem tarafından çağırıldığında bu dosya da asıl configuration.php dosyasını taşıdığımız yerden çağıracak ve sistem sorunsuz olarak çalışmaya devam edecek.
5 – Joomlanın standart olarak beraberinde getirdiği ve ana dizinde olan “htaccess.txt” isimli dosya, içinde SEO özelliğini aktif ettiğimizde bu özelliğin çalışmasını düzenleyen kodu barındırdığı gibi ayrıca uzak sunuculardan SQL injection diye tabir edilen ve veritabanınıza sızmaya yarayan sistemi engelleyici kodları barındırır. İşte bu dosyamızın adını ftp den sunucudaki joomla dosyalarının olduğu bölüme bağlanarak adını başındaki nokta dahil “.htaccess” olarak değiştirdiğimizde bu dosyanın çalışmasını ve böylece ikinci bir güvenlik ortamını oluşturmuş olacağız.
6 – Fiziki olarak yapabileceğimiz bu işlemlerin dışında daima sistem yedeğinizi ve veritabanı yedeğinizi periyodik olarak alın. Joomlanızı ilk kurduğunuzda varsayılan kullanıcı adınız “admin” olacağından, üye yönetiminden kullanıcı adınızı değiştirin.
7 – Sunucunuzun desteklediği ölçüler çerçevesinde PHP ayarlarınızı daima en uygun duruma getirin örnek olarak “Register Globals Emulation” değerini “Kapalı Konuma getirin. Bu işlemi yapmak için Joomla yönetim panelinden Site >> Genel Yapılandırma >> Sunucu sekmesinden resimde gösterildiği yerden yapın.

Bu şekilde sizinde sisteminiz artık maximum güvenlik altında olacak ve akşamları yatağınızda rahatça uyuyabileceksiniz. Ama unutulmaması gereken bir gerçek varki 100% güvenli hiçbir sistem yoktur, bizim yapabileceklerimiz sadece bu güvenliğini en iyi seviyeye getirmek.
Kaynak : joomladersleri.com

Yorum Yapin