Bezpieczeństwo panelu administracyjnego Joomla!

Podobnie jak w przypadku systemu zarządzania treścią WordPress, Joomla osiągnęła olbrzymią popularność jako system zarządzania treścią. Prosty, dający nieograniczone możliwości rozwoju, a przede wszystkim darmowy.

Intuicyjna obsługa panelu i dostęp do tysięcy bezpłatnych dodatków spowodował, że Joomla jest jedną z najczęściej wybieranych aplikacji do tworzenia stron WWW. Globalne aktualizacje i powszechność systemu stały się także jego zmorą pod względem bezpieczeństwa. W przypadku stwierdzenia błędu w oprogramowaniu Joomla, natychmiast wszystkie witryny oparte o ten system stają się podatne na potencjalne zagrożenia.

Poza zagrożeniami wynikającemu z „dziur” w kodzie oraz błędów aplikacji, bardzo często możemy się spotkać po prostu z próbami włamania do panelu administracyjnego. Z tego względu warto zastanowić się nad dodatkowym zabezpieczeniem naszego panelu administracyjnego.

Dodatkowa ochrona panelu administracyjnego Joomla może być realizowana poprzez:

Pomimo, że temat bezpieczeństwa w sieci jest niezwykle wrażliwy, wręcz stawiany na pierwszym miejscu, wielu użytkowników nadal uważa, że taki problem nie dotyczy ich witryny. Mało popularne serwisy WWW, strony wizytówki czy świeżo postawione portale. Nigdy nie ma pewności, czy taka lub inna strona nie zostanie zaatakowana.

Warto dlatego zadbać o bezpieczeństwo swojej strony WWW już na etapie jej tworzenia. A jeśli witryna już działa, poświęć jej kilka minut i zwiększ ochronę. Już kilka drobnych zmian, może przynieść wymierne korzyści w przyszłości.

WAŻNE! W ramach oferty home.pl możesz skorzystać z usługi SiteLock, czyli rozwiązania dla klientów, którzy chcą zabezpieczyć swoją stronę WWW przed atakami hakerów, jak i również „wyleczyć” ją, kiedy ta zostanie już zainfekowana złośliwym oprogramowaniem. Usługa SiteLock działa bezpośrednio na serwerze, na którym znajduje się strona WWW. Możesz także zakupić oprogramowanie antywirusowe firmy Kaspersky, które gwarantuje kompleksową ochronę antywirusową oraz bezpieczeństwo w Internecie.
Kliknij tutaj, aby przeczytać więcej o zabezpieczaniu panelu administracyjnego w CMS WordPress.

Ograniczenie dostępu do panelu z jednego adresu IP

Metoda ta opiera się na ograniczeniu dostępu do wybranych zasobów tylko do jednego adresu IP. Domyślnie dostęp do panelu administracyjnego Joomla ograniczany jest tylko do znajomości poprawnego loginu i hasła. Dzięki opisanemu w tym punkcie rozwiązaniu, ograniczamy również dostęp do panelu administracyjnego z poziomu tylko wybranego adresu IP.

W pliku .htaccess umieść poniższe dyrektywy. Plik .htaccess należy umieścić w katalogu /administrator.

AuthName "Example Access Control"
AuthType Basic

order deny,allow
deny from all
allow from 46.242.149.10

W miejscu „46.242.149.10” wpisz adres IP, który ma mieć dostęp do panelu administracyjnego. Jeśli masz wątpliwości czy przydzielony adres IP jest stały, skontaktuj się z dostawcą Internetu.

Kliknij tutaj, aby dowiedzieć się więcej o tworzeniu i możliwościach zastosowania pliku .htaccess.

Dodatkowy login i hasło – .htpasswd

Metoda ta opiera się na dodaniu do katalogu /administrator dodatkowego pliku .htpasswd, który odpowiedzialny będzie za wymuszanie dodatkowej autoryzacji przy próbie dostępu do wybranych zasobów.

Stosując podwójną autoryzację, w pierwszej kolejności wywołanie panelu administracyjnego, skutkować będzie prośbą „od serwera” o podanie uprawnień dostępu do katalogu /administrator, dopiero po pierwszej autoryzacji nastąpi wywołanie okna logowania do panelu administracyjnego Joomla, gdzie podajesz właściwe dane dostępowe do konta administratora w Joomla.

Utwórz lub edytuj plik .htaccess w katalogu /administrator. W pliku .htaccess umieścić poniższe dyrektywy:

AuthType Basic
AuthName "Wymagana autoryzacja:"
AuthUserFile .htpasswd
Require valid-user

Następną wymaganą czynnością jest utworzenie pliku .htpasswd, który będzie zawierał nazwy użytkowników oraz ich hasła dostępu. Zawartość pliku .htpasswd tworzy się według poniższego schematu:

nazwa_uzytkownika:hasło_dostępu

Odpowiednie loginy i hasła do pliku .htpasswd możesz zakodować pod tym adresem. Pamiętaj, aby na podanej stronie wybrać algorytm kodowania o nazwie crypt(). Więcej informacji na temat pliku .htpasswd w home.pl możesz przeczytać pod tym adresem.

W powyższym przykładzie „hasło_dostępu” jest odpowiednio zakodowane algorytmem crypt(). Przykładowo dla użytkownika „kowalski” i hasła „haslodostepu”, plik .htpasswd powinien mieć poniższą zawartość:
kowalski:OUAjBiIAMyfvg

Oba pliki .htaccess oraz .htpasswd umieść w katalogu /administrator na serwerze FTP w katalogu ze stroną internetową. Pamiętaj, aby podczas kodowania hasła wybrać algorytm kodowania o nazwie crypt(). Efektem powyższych działań, będzie każdorazowe pojawienie się dodatkowego okna logowania podczas uruchamiania panelu administracyjnego Joomla.

WAŻNE! Zadbaj o to, aby login i hasło do obu autoryzacji (.htpasswd oraz panelu Joomla) różniły się od siebie. W ten sposób skutecznie zwiększysz poziom bezpieczeństwa Twojej aplikacji CMS.

Dodatkowy plik index.html w katalogu /administrator

Panel administracyjny Joomla! domyślnie dostępny jest pod adresem www.mojadomena.pl/administrator. Adres ten w rzeczywistości przekierowuje i wywołuje plik index.php, tj. www.mojadomena.pl/administrator/index.php.

Wpisanie obydwu powyższej wspomnianych adresów daje ten sam efekt w postaci konsoli logowania do CMS Joomla! Mniej ambitni hakerzy, którzy zaczynają swoją przygodę od włamania do paneli administracyjnych systemów CMS, zwykle wprowadzają skróconą wersję adresu WWW, aby ułatwić i przyśpieszyć sobie zadanie. Możemy spróbować zniechęcić ich do dalszych prób, generując dodatkowy komunikat błędu, pozostawiając sobie otwartą furtkę do panelu.

Domyślna kolejność wywoływania plików index na serwerze współdzielonym w home.pl, przyznaje pierwszeństwo plikowi index.html nad index.php. Oznacza to w praktyce tyle, że umieszczone dwa pliki index w jednym katalogu i próba wywołania adresu tego katalogu, spowoduje uruchomienie w pierwszej kolejności pliku index.html. Tym sposobem, umieszczając pusty plik (bez zawartości) index.html w katalogu /administrator, a następnie wywołując adres www.mojadomena.pl/administrator, spowodujemy wyświetlenie białej strony zamiast konsoli logowania do panelu administracyjnego.

Aby w dalszym ciągu móc zalogować się do panelu administracyjnego Joomla, konieczne będzie ręczne wpisanie adresu w postaci: www.mojadomena.pl/administrator/index.php

Powyższe rozwiązanie raczej nie będzie skuteczne w przypadku ataku aplikacji/robota, może jednak skutecznie zniechęcić potencjalnego nowicjusza, który odkryje w takim działaniu błąd aplikacji i zaniecha dalszych prób „zgadywania” loginu i hasła do panelu administracyjnego.

Jeśli dodatkowo zamiast białej strony chcielibyśmy przekierować użytkownika z adresu www.mojadomena.pl/administrator na inny adres, to możemy w pliku index.html dodać poniższy wpis, gdzie zamiast adresu „mojadomena.pl” należy podać adres URL, na który użytkownik ma zostać przekierowany.

 <meta http-equiv="refresh" content="0;url=http://mojadomena.pl">
Więcej na temat definiowania ustawień strony startowej w htaccess znajdziesz pod tym adresem.

Dodatki i rozszerzenia do systemu CMS

Jeśli z jakiś powodów obawiamy się o ingerencję w pliki na serwerze FTP, możemy także wyręczyć się dodatkami instalowanymi bezpośrednio w samym panelu Joomla.

Wśród najciekawszych znajdziemy m.in. te odpowiedzialne za edycję adresu URL panelu administracyjnego, wykonywanie automatycznych kopii zapasowych, ochronę dodatkowym hasłem czy kodem captcha.

AdminExile / JSecure

Dodatek odpowiedzialny za zmianę adresu strony logowania, zamiast standardowego www.domena.pl/administrator, możemy wywołać adres znany tylko nam, np. www.domena.pl/administrator/index.php?moja-fraza

Rozwiązanie to skutecznie niweluje ataki z zewnątrz, które domyślnie skierowane są na podstawowy adres panelu administracyjnego. Dodatkowo, jeśli zależy nam na ukryciu informacji w jakim CMS jest stworzona nasza strona, uniemożliwi to jakąkolwiek próbę wywołania okna logowania do Joomla, które zwykle zdradza wiele szczegółów.

Przejdź na stronę Joomla.org i pobierz dodatek: Admin Exile.

Akeeba Backup

Dodatek ten nie zapewnia żadnego zabezpieczenia przed próbą nieuprawnionego dostępu do panelu administracyjnego, jest jednak jednym z ciekawszych i najczęściej wybieranych rozszerzeń z powodu możliwości zrobienia kopii zapasowej całego serwisu.

Wraz z tworzeniem kolejnych kopii zapasowych, tworzymy sobie punkty przywracania, do których możemy się w przyszłości odnieść. Tego typu rozwiązanie jest przydatne zarówno w sytuacji kiedy dokonamy, niekoniecznie poprawnych, modyfikacji strony lub gdy spotkamy się z koniecznością odtworzenia kopii zapasowej np. z powodu przeprowadzonego ataku na stronę WWW.

Posiadanie wielu kopii zapasowych, pozwoli nam także porównać dostępne wersje plików, a w przyszłości sprawdzić jakie zmiany zostały wykonane, np. w okresie czasu kiedy sami nic nie modyfikowaliśmy.

Kliknij tutaj, aby dowiedzieć się więcej o rozszerzeniu Akeeba Backup i jego możliwościach.

jHackGuard

Plugin do CMS Joomla! chroniący stronę WWW przed różnego rodzaju atakami z zewnątrz, m.in.:SQL injection, PHP injection, File Incusion czy XSS – czyli przede wszystkim dołączaniu skryptów do wnętrza aplikacji, poprzez niezabezpieczone luki w stronach WWW. Efektem takich działań intruzów może być np. przejęcie kontroli nad serwisem, jego uszkodzenie lub stosowanie różnego rodzaju przekierowań.

Zmiana loginu admin

Najczęstsze ataki na strony WWW, np. typu brute force, bazują na prostym algorytmie, który bez znajomości loginu i hasła utworzonego przez administratora, podejmuje próby ich złamania. Algorytm ten poprzez wielokrotne wprowadzenie popularnych kombinacji znaków lub całych haseł i loginów, próbuje uzyskać dostęp, np. do panelu administracyjnego.

Wychodząc od tej krótkiej informacji radzimy, aby nie ustawiać loginów, ale także haseł, które są logicznym ciągiem znaków, popularnymi słowami lub domyślnymi wartościami proponowanymi przez system. Każda modyfikacja tych danych, np. przez przestawienie znaków lub dodanie własnych znaków specjalnych, spowoduje że złamanie naszych danych dostępowych będzie o wiele trudniejsze!

Ochrona komputera (oprogramowanie antywirusowe)

Działania zmierzające do ochrony komputera, to przede wszystkim stosowanie programów antywirusowych, np. Kaspersky Internet Security oraz korzystanie ze sprawdzonych klientów FTP/SSH. Warto także pamiętać o nie zapisywaniu haseł bezpośrednio w pamięci aplikacji (np. klientów FTP).

Te pozornie proste i błahe metody są często pomijane w ochronie stron WWW, poczty i swoich danych, tymczasem warto pamiętać, że posiadanie wirusa czy innego programu szpiegującego na komputerze, może łatwo doprowadzić do wycieku naszych danych w tym loginów i haseł.

Kliknij tutaj, aby dowiedzieć się więcej o oprogramowaniu Kaspersky Internet Security.

Jeśli już zrealizowaliśmy pierwszy punkt, instalując odpowiednie oprogramowanie ochraniające komputer, nie zapominajmy mimo wszystko o właściwym przechowywaniu danych dostępowych:

  • nie zapisujemy ich w notatniku i nie umieszczamy na Pulpicie, korzystamy z menadżerów haseł, np. darmowego KeePass lub Kaspersky Password Manager (Android),
  • unikamy zapamiętywania loginów i haseł w przeglądarce lub innych aplikacjach jak np. klient FTP, SSH,
  • regularnie aktualizujemy hasła i pamiętamy o stosowaniu wielu, różnych znaków, niekoniecznie układających się w logiczną całość.
Kliknij tutaj, aby dowiedzieć się więcej o budowie silnego i bezpiecznego hasła.
  • Czy artykuł był pomocny ?
  • Tak   Nie

Hosting stworzony dla WordPressa

Masz stronę WWW na WordPressie? My też uwielbiamy ten system dla stron internetowych. Dlatego stworzyliśmy hosting specjalnie dla jego użytkowników.