Yeni bir Joomla kurulumunun güvenliği nasıl sağlanır?


34

Joomla kurulumundan sonra güvenli olması için yapılması gerekenler nelerdir? Hem paylaşımlı barındırma sunucularında hem de adanmış sunucularda.


1
@ Yöneticileri: Bu soru için topluluk wiki hakkında ne ??
MattAllegro

Yanıtlar:


36

Joomla Web Sitesini Güvende Tutmak

  1. Güçlü şifreler kullanın.
  2. Yönetici hesaplarının sayısını en aza indirin.
  3. Kullanılmayan kullanıcı hesaplarını devre dışı bırakın veya kaldırın.
  4. Üçüncü taraf uzantılarının sayısını azaltın ve üçüncü taraf uzantılarının gerekli olduğu yerlerde, güvendiğiniz yerleşik geliştiricilerin iyi desteklenmiş uzantılarını kullanın.
  5. En son güncellemeleri Joomla ve geçerli olduğunda Joomla EOL sürümleri için güvenlik düzeltmeleri dahil olmak üzere üçüncü taraf uzantılarına düzenli olarak uygulayın .
  6. Joomla Güvenlik Haberleri özet akışına abone olun, böylece çekirdek Joomla güvenlik güncellemelerinden haberdar olun
  7. Joomla Hassas Eklentiler Listesine (VEL) abone olun, böylece yeni güvenlik açıklarına hızlı bir şekilde katılabilirsiniz. Abonelik bağlantısı için sayfanın en altına gidin - VEL'i Twitter'da da takip edebilirsiniz .
  8. SuPHP veya FastCGI gibi uygun bir PHP dosya işleyicisi ve mod_security gibi güvenlik uzantıları dahil olmak üzere kaliteli güvenli web barındırma kullanın. PHP'nin desteklenen bir sürümünü kullanın .
  9. Yalnızca web barındırma şirketinizin yedeklemelerine güvenmek yerine, web sitesinin kendi yedeklemelerini düzenli olarak yapın, yedek dosyaları siteden kopyalayın ve yedeklemelerin kalitesini kontrol etmek için düzenli olarak test geri yüklemelerini bir test konumuna çalıştırın.
  10. Https'yi etkinleştir.
  11. Akeeba Admin Tools'un profesyonel sürümüyle sağlananlar gibi bir web uygulaması güvenlik duvarı uygulayın.
  12. Standart tablo önekini kullanmayın.
  13. Varsayılan Süper Yönetici kullanıcı adını ve kimliğini başka bir şeyle değiştirin. Akeeba Admin Tools'un profesyonel versiyonunda Süper Yönetici Kimliğini değiştirmek için bir araç vardır.
  14. Joomla Admin'e IP ile erişimi kısıtlayın. Yalnızca güvenilir IP'lere izin ver.
  15. Yönetici hesapları için 2 faktörlü kimlik doğrulamasını etkinleştirin (Joomla 3.2 ve üstü için geçerlidir).
  16. Çapraz bulaşmayı önlemek için aynı hosting hesabını paylaşan diğer web siteleri için yukarıdaki adımları tekrarlayın veya ideal olarak web sitelerini kendi web hosting hesaplarına ayırın.
  17. Web sitesi yöneticilerinin kişisel bilgisayarlarının benzer şekilde güvende olduğundan emin olun. Örneğin, iyi kalitede bir virüs ve kötü amaçlı yazılım tarayıcısı uygulayın. Bu, kişisel bilgisayarlarda depolanan tüm web sitesi kimlik bilgilerinin korunmasına yardımcı olur. Web sitesini ve diğer bilgileri saklamak için ideal olarak bir şifreleme aracı veya uygulaması kullanın.
  18. Oku Top 10 en aptal yönetici hileler ne bilgi almak için değil yapmak.

Daha ayrıntılı talimatlar için resmi Güvenlik Kontrol Listesine bakınız .


Bu liste muhtemelen eklenebilir (düzenlemek için çekinmeyin). :)
Neil Robertson

2
Belki "Hassas Eklentiler listesi" ne link verebilirsin? (Cevabınızı bir sebepten dolayı düzenleyemiyorum; diğerlerini düzenleyebilir miyim?)
MrWhite

Thanks @ w3d - VEL abonelik sayfasına ve ayrıca Joomla Güvenlik Haberleri beslemesine bir bağlantı ekledim.
Neil Robertson

14

Yedekleri ayrı bir sunucuda depolamak çok önemlidir. Akeeba Backups'ı sadık çalışan birçok insan görüyorum ... aynı sunucuda aynı kök dizinde saklanıyorlar. Ciddi bir şekilde saldırıya uğradıysanız çok yardımcı olmaz ve kesinlikle bir barındırma hatasından kurtulmanıza yardımcı olmaz.

Akeeba Backup Pro, yedekleme dosyalarını Amazon bulutu gibi harici depolama alanında saklamanızı ve yönetmenizi sağlar.


4
Barındırma dizininizden aktarıldıktan sonra yedeklerinizi bozuk sıkıştırma açısından kontrol etmeniz de önemlidir. Bozuk bir yedekleme yedekleme değildir. Bu, tüm yedekleme sistemleri için geçerlidir, Akeeba, CPanel ve benzeri.
UhlBelk

7

.Htaccess dosyasına bir alternatif olarak ya da IP tarafından kilitlenmesi yerine, jSecure özelliğini yönetici giriş bilgilerinizi korumak için de kullanabilirsiniz.

Bahsetilmeyen bir şey saygın bir barındırma sağlayıcısı kullanıyor. Sadece güvenliği korumakla kalmayıp, saldırıya uğradıysanız veya bir sorun varsa da çalışacaktır (örneğin, veritabanı bozulur). Fikir, sitenizi temizlemenizi sağlarken sitenizin verdiği zararı sınırlandırmaktır.

Temel fikir, isteyen birini istiyorum ..

  • etrafında olacak
  • gece uçuşu operasyonu değil
  • seninle çalışacak
  • ve sağlam bir ortam sağlar.

Daha iyi bir his elde etmek için bir toplantı sahibinden bir soru sormak istiyorsanız, bana bildirin.

Bu yardımcı olur umarım.


6

Bunu da dene

  • Joomla'nızı, uzantılarıyla birlikte güncel tutun.
  • Sitenizi düzenli aralıklarla bulutlarda saklayın .
  • robots.txtGüvenli klasörler için açmayın .
  • En yeni Joomla sürümleri için, iki faktörlü kimlik doğrulamasından faydalanmak daha güvenli olacaktır.
  • Klasörlerin ve dosyaların izin verilen doğru izinlere sahip olduğundan emin olun.
  • Joomla için Cloudfare kullanın .

Umarım yardımcı olur ..


5

Temelde benim deneyimlerime göre, Joomla'nın büyüklüğüyle, onu tamamen güvenceye almanın bir yolu yok. Öyleyse, hepsini durduran mükemmel bir güvenlik politikası, genel zararı denemek ve azaltmak için beklentilerinizi azaltmak en iyisidir.

Bu, son derece sık bir yedekleme politikasıyla yapılabilir, böylece herhangi bir izinsiz giriş yapıldığında site kötü amaçlı yazılım taramasının yanı sıra geri alınabilir. Şimdiye kadar sahip olduğumuz bir hack, yönetici panelimizin kaba bir şekilde zorlanması nedeniyle değildi.

Gördüğümüz çoğu saldırı üçüncü parti bileşenlerden ya da Joomla çekirdeğinden geliyor, hatta Joomla'nın en son sürümlerine girebilecek hack'leri bile gördük. Bunun nedeni, hackün tipik olarak normal bir istek gibi görünmesi ve bir dosyayı sunucuya aktarmak için hatalı filtreleme kullanmasıdır. Bir dosya sunucuda olduğunda, her şey adil bir oyundur, paylaşılan bir sunucunun tamamında HERHANGİ bir sitede olabilir ve sizinkini etkileyebilir, böylece paylaşılan bir sunucudaki bir kişi güncel kalmazsa, sizi etkileyebilir.

Bu biraz aşırı olabilir, ancak kişisel deneyime dayanarak en kötüsüne hazırlıklı olmak için elinden gelenin en iyisini yapmalı, ardından politikanızın her şeyi önleyeceğinden emin olmalısınız.

Bu nedenle, yeni bir Joomla kurulumunu güvence altına almanın en iyi yolu, sık sık yedekleme yapmak ve kötü amaçlı yazılım taramalarını bir şey bulur bulmaz size e-postayla gönderebiliyorsa kötü amaçlı yazılım taramalarını etkin hale getirmektir.


"standartlarınızı aşağı çekmek" ??? Bu belki de "standartlarınızı iyileştirmeli mi?
chesedo

Bunun aşağı oy alacağını düşündüm, kimsenin kuralları izlerse güvende olduklarını düşünmesini istemiyorum. Asla standartlarınızı düşürmeyin, saldırıya uğramamayı beklemeyin, bunun yerine bunun için hazırlıklı olun. Tanıdığım çoğu insan haftada bir ya da ayda bir kez destek alabilir, çünkü saldırıya uğradıklarını nadir hissedebilirsiniz, ancak öyle değil.
Jordan Ramstad

O zaman olasılıkla " beklentilerinizi azaltın" (hack edilmemiş olmak)
kullanmış olmalısınız

İyi not, düzenledi, teşekkür ederim. Joomla hakkında kötü bir şey söylememeye çalışıyorum, bayılıyorum, sadece hack'lerle dövüşmek asla bitmeyecek, bu yüzden hazırlıklı olmak en iyisi :).
Jordan Ramstad

Oldukça doğru - bazen yardım etmenin en iyi yolu düz olmaktır :).
Chesedo


3

Bu listeyi blogda bulunan "Joomla sitesinin pen sınaması" adlı bir teknik incelemeden ödünç almak. Bu listenin Joomla güvenliğinin temelleri için eksiksiz bir rehber olduğunu düşünüyorum.

  1. Joomla'yı her zaman güncel tut. En son güncellemeyi, yükseltme yayınlandıktan hemen sonra yükleyin.
  2. Hangi uzantılar kullanılıyorsa kullanılsın, en son yükseltme sürümleriyle düzgün şekilde yamalanmaları gerekir. Herhangi bir eski uzantı, saldırgana siteyi tehlikeye atması için bir yol verebilir.
  3. Kullanılmayan veya doğru şekilde test edilmemiş uzantıları kullanmayın.
  4. Tüm kullanıcı girişleri doğrulanmış olmalıdır. Bu girişler formlar, URI, resim yüklemeleri, vb. Gibi girişler olabilir. BROWSE düğmesinin kullanıcının görüntüyü yüklemesini sağlayıp sağlamadığını varsayalım, yalnızca daha sonra arka kapı gibi çalışabilecek bir PHP kabuğu değil, bir görüntü yüklemesini sağlamalıdır. sunucu.
  5. Tüm girişler için güçlü şifreler kullanın. En az 8 karakter, bir özel karakter, bir sayı ve bir büyük küçük harfe duyarlı harf. Kurulumunuzu kaba bir kuvvetten koruyacaktır.

  6. Potansiyel saldırıları yakalamak için her zaman Web Sunucusunun günlük dosyalarındaki “En Son Ziyaretçiler” bölümünü takip edin. Günlük dosyalarınızı asla yalnızca bir bilgi parçası olarak düşünmeyin. Kullanıcıların izlenmesi ve izlenmesinde oldukça faydalıdır.

  7. Joomla tabanlı sitenin bulunduğu tüm sunucuya daha fazla güvenlik uygulamak için biraz stres uygulayın; paylaşılan sunucuda veya adanmış sunucuda barındırılıyor olması.

  8. Kullandığınız tüm uzantıların bir listesini yapın ve izlemeye devam edin.

  9. Çeşitli güvenlik önerileriyle ilgili en son güvenlik açıkları ve açıklamalar ile kendinizi güncel tutun. Exploit-db, osvdb, CVE vb. İyi kaynaklardan bazılarıdır.

  10. .Htaccess dosyanızdaki izinleri, yazma izinlerini kullanarak varsayılan olarak olduğu gibi değiştirin (Joomla'nın güncellemesi gereken gibi). En iyi uygulama 444'ü kullanmaktır (r-xr-xr-x).

  11. Genel dizinlerde uygun dosya izinleri verilmelidir, böylece kötü amaçlı dosyalar yüklenmemeli veya yürütülmemelidir. Bu bağlamda en iyi uygulama 766'dır (rwxrw-rw-), yani yalnızca Sahip okuyabilir, yazabilir ve uygulayabilir. Diğerleri sadece okuyabilir ve yazabilir.

  12. Hiç kimse sunucudaki PHP dosyalarına yazma iznine sahip olmamalıdır. Hepsi 444 (r - r - r--) ile ayarlanmalı, herkes sadece okuyabilir.

  13. Rolleri devredin. Yönetici hesabınızın güvenli olmasını sağlar. Birinin makinenizi hacklemesi durumunda, yönetici hesabına değil, yalnızca ilgili kullanıcıya erişimi olmalıdır.

  14. Veritabanı kullanıcılarının yalnızca INSERT, UPDATE ve DELETE satırları gibi komutlar vermesine izin verilmelidir. DROP tablolarına izin verilmemelidir.

  15. Arka uç klasörlerinin isimlerini değiştirin, örneğin / admin'i / admin12345 olarak değiştirebilirsiniz. 16. Sonuncusu fakat en az olmayanı, en son güvenlik açıkları ile güncel kalın.


Diğer öneri reklamı 12: Web sunucusu dışındaki hiç kimse, sunucudaki PHP dosyalarını okuma iznine sahip olmamalıdır. Kullanıcıyı Web sunucusunun kullanıcısına (www-data veya http) ayarlayın ve arka uçtan düzenlenebilir dosyalar için 400 veya 600 olarak ayarlayın (css, ...).
Tom Kuschel

3

İlk savunma hattınız, barındırma hizmetinizdir.

  • Güvenilir bir barındırma hizmetinden özel bir sunucu kiralayın
  • Sunucunuzda 2FA'yı etkinleştirdiğinizden ve bir 'ÇOK GÜÇLÜ' şifre kullandığınızdan emin olun
  • Sunucunuza güvenilir bir güvenlik duvarı yükleyin - ConfigServer kullanıyorum
  • Bir antivirüs programı kurun / yapılandırın, ClamAV kullanıyorum
  • Her web sitesi kullanıcı adının, alan adının ilk 8 karakterini KULLANMADIĞINI ve bir 'ÇOK GÜÇLÜ' şifresi kullandığından emin olun.
  • Her web sitesinin yüklü bir SSL sertifikası olduğundan emin olun
  • Her bir web sitesinin 'In Jail' olduğundan emin olun, yani sunucu köküne erişiminiz olmadıkça root erişimi yoktur. Bu durumda, Secure Shell (SSH) 'in kurulu ve yapılandırılmış olduğundan emin olun. Sunucu etki alanı web sitemi kullanıyorum ancak diğer tüm web sitelerinde 'Jail' var.
  • Tüm sunucu güncellemelerinin derhal yüklendiğinden emin olun !!!!

Bir sonraki savunma hattınız, cPanel

  • Bir "ÇOK GÜÇLÜ" şifresi kullanın
  • Kullanıcılar için kullanıcı şifresi gücünü yapılandırma
  • CPanel tam yedekleme yapmak ve harici bir kaynağa kaydetmek için bir cron işi ayarlama
  • CPanel'in erişim için SSL kullanacak şekilde ayarlandığından emin olun
  • Başka hangi tweaks gerekli olabilir görmek için 'Site Güvenlik Kontrolü' çalıştırın
  • Tüm cPanel güncellemelerinin derhal yüklendiğinden emin olun !!!!

Bir sonraki savunma hattınız yönetici panelinizdir

  • Güçlü parolalar sağlamak için parola biçimi gereksinimlerini düzenleyin (Büyük / küçük harf karakterler, sayılar ve en az 18 karakter uzunluğunda en az 1 noktalama işareti.
  • Kullanıcılar için 2FA'yı etkinleştirin - Süper Kullanıcı ve Yönetici hesapları için kullanın
  • Süper Kullanıcı hesaplarının sayısını sınırlayın (yalnızca bir taneye sahip olmak en iyisidir)
  • Yönetici hesaplarının sayısını sınırlayın (ne kadar azsa o kadar iyi)
  • Yöneticilerin erişebileceği alanları sınırlayın
  • Yayıncıların, Editörlerin ve Yazarların erişebileceği alanları sınırlayın
  • AdminTools'u kurun ve yapılandırın
  • AdminTools ile bir yönetici URL şifresi ayarlayın
  • Kritik dosyaların (HTACCESS, ROBOTS.TXT, WEBCONFIG, INDEX.PHP (hem root hem de template) 444'e ayarlanmış olduğundan emin olun.
  • Kur ve AkeebaBackup'ı yapılandır
  • AkeebaBackup uygulamasını, harici olarak dışarıda yedeklemelerini kaydedecek şekilde yapılandırma
  • Eklentileri yalnızca Joomla Extension sayfalarından yükleyin, Joomla Extension sayfasında listelenmemiş bir üçüncü şahıstan asla bir eklenti yüklemeyin.
  • Joomla işlevselliği için kullanılmayan ve gerekmeyen eklentileri devre dışı bırakın ve / veya kaldırın
  • Joomla ve eklenti güncellemelerini hemen yükleyin !!!

Diğer adımlar var eminim ama bunlar ülkemdeki 70'in üzerinde web sitesini barındıran sunucumda kullandığım ana adımlardır. Geçenlerde DDoS saldırısına benzer büyük bir saldırı geçirdim ve bir web sitesine erişmedim. 10 metre uzunluğunda ve kurşun geçirmez hissettim ama yarın başka bir gün olduğu için şikayet edemeyeceğimi biliyorum! LOL


-4
  1. İki faktörlü kimlik doğrulama hayranı değilim

  2. Akeeba Admin Tools'u yükleyin, gelişmiş htaccess'i etkinleştirin, seçenekleri ve yazılım güvenlik duvarını kontrol edin

https://www.akeebabackup.com/download/admin-tools.html

  1. Arka uç URL şifresini etkinleştir

1
İki faktörlü kimlik doğrulamanın hayranı olmadığınızı paylaşmak ister misiniz?
Chesedo

2
Görüyorum - bu mantıklı. Peki neden güvenlik önlemlerine yardımcı olmak için onu kullanmamaya karar verdiniz? Eğer görevinizde görmek istiyorsanız neden neden yan notunuz olmasın ki?
Chesedo

1
Haklısın. Ben sadece soruları nasıl cevaplayacağımı öğrendim ;-) BTW Bu cevap -2 :-(
Anibal

4
Bu yazarın sistemi üzerine ilk saf bir cevap olarak bırakalım. Kendi tarzında bir çekicilik var.
Anibal

1
Hehe! Gerçekten de, SE sisteminin amacı 'en iyi cevapları almak' ya da iyi cevapları daha iyi hale getirmektir. Açıklamasının yanı sıra açıklamasının cevabını silme ve bir yorum olarak ekleyebileceğini, açıklamanın yanı sıra birisinin anlayışını geliştirdiğini de söyleyebilirim. güvenliği ele alırken 2 faktörlü doğrulamanın etkisi.
NivF007
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.