Kusursuz Bir vBulletin için Güvenlik ve Altyapı İpuçları

Regex

Administrator
Tarih: 17 Şubat 2017 Cuma
Yazar: Regex
Site: ForumIRC.Com​

Geçenlerde web işleriyle yakından ilgilenen, birçok konuda fikir alışverişlerinde bulunduğum bir dostum yeni bir webmaster forumu devralmış. Elbette altyapı olarak vBulletin 3 kullanılıyor. Karşılaştığı sorunların çözümünde benden yardım istedi. Birçok kişinin bildiği üzere 2006 yılından beri vBulletin ile içli dışlıyım, ForumIRC.Com gibi gelişmekte olan bir forumun teknik sorumlusuyum. Yalnız arkadaşım öyle hatalardan bahsetti ki, inanın 10 yıldır karşılaşmamıştım. Elbette ki veritabanı bakımlarıyla, tablo temizlikleriyle, upgrade veya tools.php çalışmasıyla aşılamayacak şeyler değil. Ama ben size bu makalemde; böyle sorunları hiç yaşamamanız için, sıfırdan kurduğunuz ve bütün teknik işlemlerini bizzat sizin yapmakta olduğunuz vBulletin altyapısına sahip forumların nasıl ideal bir şekilde çalışması gerektiğini anlatacağım. Anlatım içerisinde güvenlik kısmına ağırlık vermeyi hedefliyorum. Sonuçta kusurdan söz ediyorsak stabilizasyondan daha önce güvenlik gelmelidir.

Anlatımın daha verimli olabilmesi için maddeler hâlinde gitmeyi planlıyorum. Umarım işinize yarayacak bilgiler edinirsiniz.

1. Lisanslı Kurulum
İlk kurulum aşaması tahmin edemeyeceğiniz kadar önemlidir. Lisanssız dosyalarla yapılmış bir kurulum, sonradan lisans alıp dosyalları güncelleseniz ya da upgrade etseniz dahi geri dönüşü olmayan sorunlara gebedir. Örnek bir olay canlandıralım. DGT tarafından lisans kontrolünden arındırılmış vBulletin dosyalarıyla 3.8.4 sürümünü sisteminize kurdunuz. Aradan birkaç aylık bir zaman dilimi geçti, forum biraz büyüdü ve siz riske girmemek için vBulletin'ınızı lisansladınız. Lisans üzerinden indirmiş olduğunuz güvenli dosyaları eski dosyaların üzerine yazdırıp upgrade yaptınız. Buraya kadar her şey gayet iyi, değil mi? Ancak daha önce lisanssız kurulum sonrası FTP dizininize yerleşen bir "shell", dosyaları tamamen temizleyip, yeni dosyaları yüklemediğiniz için dizin içerisinde barınmayı sürdürecek ve önünü alamayacağınız güvenlik tehlikelerine neden olacaktır. Örneğimi FTP dizininizi A'dan Z'ye boşaltmak suretiyle yeni dosyaların yüklenmesi yoluyla upgrade etmenize uyarlayacak olursam yine tehlikenin geçtiğini söylemek mümkün olmaz. Daha önceden nulled edilmiş dosyalarla yaptığınız kurulum esnasında veritabanına bulaşan ve FTP diziniyle alakası olmadan doğrudan SQL'e giren bir zararlı kod da tehlikeyi artırabilir. Kullanıcı tablonuzu hackerların çekebilmesine olanak tanıyabilir, bilerek bırakılmış bir enjeksiyon açığı olabilir. İşte tüm bu nedenlerden dolayı; "Forumu lisans almadan bir kurayım, tutarsa lisanslarım." mantığı tamamen yanlış bir zihniyettir.

Arkadaşımın yaşadığı gibi bir durumla karşı karşıya olduğunuzu varsayalım. Diyelim ki kurulumu siz yapmadınız ancak forum sizin elinize geçti ve sorunların üstesinden gelmeniz gerekli. Bu durumda yapmanız gerekenler;

  • Tam bir yedek alın ve bu yedeğin çalışır durumda olduğundan emin olun.
  • Elinizde bulunan lisans üzerinden indirdiğiniz temiz dosyalarla sıfır bir vBulletin kurun. Upgrade yapmayın, sıfırdan kurun.
  • Tüm ayarlarınızı yapıp, tema ve dil işlemlerini gerçekleştirdikten sonra phpMyAdmin üzerinden kullanıcı, kategori, forum gibi temel tabloları eski veritabanından alın.
  • Gerekiyorsa tüm ayarlarınızı en baştan yapmak durumundasınız. Yalnızca kategorileri, konuları ve üyeleri alın. Tüm eklentileri en baştan yükleyecek, tema düzenlemelerinizi de baştan yapacaksınız.

Yukarıdaki aşamalara uyarak sıfır bir kurulum yapmış olmalısınız. Aksi durumda lisanssız dönemden kalan ufak bir veritabanı kalıntısı, FTP dizininde fark edemediğiniz tek bir dosya sitenizin sonunu hazırlayabilir. Hacklenme tehlikelerini bir kenara bırakacak olursam stabilizasyon ve sinir bozucu error'leri ortadan kaldırmak için en ideal yol temiz kurulumdan geçer. Ayrıca kötüniyetli kişilerin eline geçmeyen temiz dosyalarla, lisanssız kurulum yaptığınızda güvenlik güncellemelerini edinemeyeceğiniz için hacklenmeniz muhtemeldir. Buna örnek olarak birkaç yıl önce vBulletin 3.8.6 sürümünde keşfedilen "faq.php" arama açığını verebilirim. Derhal çıkarılan patch'i edinip forumunu güncelleyenler hackten kurtuldu.

2. vBulletin.org Forum Üyeliği Edinin
vBulletin yazılımının resmî ürün forumu vBulletin.org'dur. Burada yayımlanan eklenti ve temalar vBulletin için güvenlidir diyebilirim. Elinizde bulunan vBulletin lisansını doğrulayarak aldığınız üyelik kayıtları sayesinde yayımlanan tema ve eklentileri indirebilir, geliştiricilerden yardım alabilirsiniz. Lisanssız kullanıcılar ise maalesef paylaşılan dosyaları edinemez, modifikasyonları göremez.

Üzülerek söylemeliyim ki Türkçe vBulletin destek siteleri güvenli değildir. Lisanslı kullanıcıların yararlanabildiği eklentileri indirip Türkçeleştirme adı altında, dosyalara çeşitli zararlı yazılımlar enjekte edilip paylaşıma sunulması çok sık rastladığım bir durum. İşini düzgün yapan kaynaklar da yok değil ancak bunun ayrımını sıradan bir kullanıcı yapamayacağı için her şeyin resmî olanından şaşmamanız sizin için daha güvenli olacaktır.

Kendi adıma şunu rahatlıkla söyleyebilirim ki, asla Google'da bir eklentiyi aratıp karşıma çıkan sonuçların arasından download etmem. Resmî ürün forumundan indirir ve gerekiyorsa bir daha Türkçeye çeviririm. Bu tip konularda tembelliğe kaçmanın sonuçları, göğüslenemeyecek kadar ağırdır.

3. Hosting Seçimi
Aslında bunu ilk madde olarak yazmayı düşündüm. Yazılımınız ne kadar güvenli olursa olsun, sitenizin barındırıldığı web sunucu üzerinde keşfedilecek herhangi bir açık üzerinden kusursuz forumunuzun zarar görmesi olasıdır. Bu yüzden hosting tercihinde aşırı titiz davranmalısınız.

Hosting alacağınız firmanın mutlaka kurumsal olmasını, vergi mükellefiyetini yerine getirip getirmediğini ve müşteri yorumlarını araştırın. Üşenmeyin, Sikayetvar tarzı siteleri de didikleyin. Bazı bilişim firmalarının kurumsal olması ve yıllardır hizmet veriyor bulunması onların iyi olduğunu göstermez. Örnek olarak geçen yıl patlak veren IsimTescil (FBS) firmasının FETÖ'yü finanse eden bir paravan olduğunun açığa çıkmasını verebilirim.

Sponsor hostlardan uzak durun. Herhangi bir karşılık vermediğiniz için belirli bir sözleşmesi bulunsa dahi sizi çok umursamazlar.

vBulletin 3 kullanacaksanız mutlaka multiple PHP version (çoklu PHP sürüm) desteği özelliğinin bulunmasına dikkat edin. Siz vBulletin 3.8.4 kullanacaksanız, PHP 5.3 ile çalışmak zorundasınız. Web sunucu güncel olması gerekeceğinden, stabil sürüm 5.3 olmayacaktır ve bu da doğal olarak çeşitli uyumsuzluklara yol açar. Dosyalar üzerinde parametre değişiklikleri yaparak bu uyumsuzluklardan kurtulunabilir ancak yine de alınan hatalar sıfıra inmeyecektir.

Forum siteniz belirli bir seviyeye geldikten sonra hosting kullanmayı bırakın, VDS ya da bütçeniz varsa bir Dedicated sunucuya geçin. Bu, hem performans hem de güvenlik için çok daha iyi olacaktır. Ancak ilk başta bunu yapmayın. Siteniz hitsiz olarak kurulacağı için boşuna masraf etmiş olursunuz.

Yeni siteler için önerdiğim paylaşımlı hostingin hackerlar tarafından maden olarak görülmesinin nedenini de şöyle açıklayabilirim. Bir sunucuda yüzlerce site barındığından, eğer sunucu tarafında gerekli önlemler alınmadıysa hacker, herhangi bir açık vasıtasıyla avladığı aynı sunucuda barınan farklı bir account üzerinden root olabilir ve sitenizin yazılım tarafında hiçbir güvenlik açığı bulunmuyor olmasına karşın root erişimi sayesinde dilediğini yapabilir. Bu yüzden ileriye dönük projeler için daima tercihim VDS veya Dedicated sunucu olacaktır.

4. VPS Değil, VDS
Bir önceki maddede yazdıklarımı göz önünde bulundurarak, belli bir seviyeye gelen forumunuzu barındırmak için sanal bir sunucu kiralayacağınızı düşünelim. Asla VPS'e bulaşmayın. Hosting firmaları daha fazla para kazanmak için VDS yerine VPS satmak ister ancak güvenli değildir.

Kafanızı karıştırmamak adına terim kullanmadan özetleyecek olursam, VPS'i ortak bir alan gibi düşünebilirsiniz. VDS ise size özel sanallaştırılır ve farklı VDS müşterileri asla sizin alanınıza müdahale edemez, kaynaklarınızı tüketemez. Sanallaştırma kullanılmış olsa da VDS'i bir Dedicated sunucuya benzetmek mümkün.

5. Install Dizinini Silin
Birçok vBulletin makalesi hatalı bir yol önermekte, install dizininin adını değiştirmenizi yazmaktadır. Siz kurulumdan sonra FTP dizininde bulunan install klasörünü olduğu gibi silin. Zaten elinizde dosyalar bulunduğu için gerektiğinde yeniden upload edersiniz. Maceraya gerek yok.

6. Eklenti Yap-Bozlarından Kaçının
Sürekli eklenti kurup silmeyin. Sildiğiniz eklentilerin kalıntıları veritabanında tablo olarak bulunur ve bu da site hızınızın yavaşlamasına ya da farklı sorunlara yol açabilir. Kendinizi vBulletin üzerinde geliştirmek için farklı bir test forumu kurmanızı ya da localhost üzerinde çalışmanızı öneririm. Ana sitenizde deneme yapmayın.

7. Güncel Proxy Listeleri Paylaşmayın!
Bazı forumlar hit aldığını sandıkları için proxy paylaşımlarında bulunarak bilmeden, farkında olmadan sitelerini ateşe atıyorlar. Yapmayın! Proxy listeleri size asla gerçek bir hit kazandırmaz. Online kısmında gördüğünüz artış bir ilizyondur ve sitenize tahmin edemeyeceğiniz kadar zararı olacaktır. Bu hataya düştükten sonra proxy bölümünü kaldırsanız bile yine birkaç püf noktayı uygulamazsanız kurtuluşunuz olmayacaktır. Makalemi istemeyeceğim kişilerin de okuyacağını bildiğim, onların bu konudaki detayları öğrenmesini istemediğim için ayrıntılara değinmeyeceğim. Ancak günümüzde speed testing uygulanırken vBulletin veya vBSEO'ya çamur atılmasının temel nedenidir diyebilirim.

8. Düzenli Yedekleme
Forum sitenizi günlük yedekleme alışkanlığı kazanın. Böylece herhangi bir sorunda doğrudan güncel yedeğe dönebilirsiniz. Yedeklerinizi asla FTP dizininde barındırmayın. cPanel üzerinden full backup işleminin tamamlandığına dair bildirim aldığınızda FTP dizininize girip yedeği bilgisayarınıza indirin ve sonra oradan silmeyi unutmayın.

9. vBSEO Analizi
vBSEO kullanmayın, uzak durun gibi bir şey söylemiyorum. Teknik admini olduğum ForumIRC.Com üzerinde vBSEO kullanılıyor ve gerekli optimizasyonları yaptığım için sorun yaşamıyorum. Ancak siz kendinize güvenmiyorsanız DBSEO eklentisini deneyebilirsiniz. vBSEO; hitli sitelerde fazlaca CPU kullanımına yol açabilir ancak bunu minimuma indirmek de sizin bilgi ve becerilerinize bağlıdır. vBSEO'nun loadlarını düşürecek optimizasyon tavsiyelerine bu makalede değinirsem epey uzatmış olacağımdan, vaktim olursa bunu farklı bir makalemde ele almayı düşünüyorum.

Umarım işinize yarayan, rehber niteliğini taşıyacak bir makale olmuştur. Aklınıza takılanları çekinmeden sorabilirsiniz. Vaktim elverdikçe yardımcı olmaya çalışırım.
 
Üst