PS PrestaShop Średnio zaawansowany

Admin Shield: zabezpieczenie panelu PrestaShop 8 i 9

Instalacja i konfiguracja Admin Shield: limit prób, blokada IP i krajów, captcha, tajny link, alerty, sesje, dziennik aktywności i raport.

Zaktualizowano Wersja modułu 1.3.0

Admin Shield chroni dostęp do panelu administracyjnego PrestaShop 8 i 9. Moduł konfiguruje się w Zaawansowane > Admin Shield, w siedmiu zakładkach: Pulpit, Historia logowań, Dziennik aktywności, Aktywne sesje, Blokady i zamknięcia, Ustawienia oraz Dostęp do panelu.

Instalacja

  1. W Moduły > Menedżer modułów kliknij Załaduj moduł i wyślij plik ZIP.
  2. Instalacja czyści pamięć podręczną PrestaShop: wszystkie strony panelu są chronione od następnego żądania.
  3. Moduł nadaje wszystkim profilom pracowników uprawnienie do wyświetlania modułu. Bez niego PrestaShop nie uruchamiałby hooków modułu dla tych pracowników, a ich działania nie byłyby rejestrowane.

Zalecane pierwsze ustawienia

  1. Zakładka Ustawienia, blok Adresy IP: kliknij Dodaj mój obecny adres IP do białej listy. Adres IP z białej listy nigdy nie jest blokowany.
  2. Sprawdź wiersz Wykryty adres IP klienta. Za Cloudflare lub proxy pozostaw tryb Automatyczny albo wybierz odpowiedni.
  3. Skonfiguruj weryfikację antybotową (patrz niżej) i przetestuj klucze.
  4. Kliknij Wyślij mi e-mail testowy, aby sprawdzić, czy e-maile sklepu wychodzą.
  5. Zakładka Dostęp do panelu: zmień nazwę folderu admin, jeśli lista kontrolna oznacza go jako łatwy do odgadnięcia.

Testuj każde zabezpieczenie w oknie prywatnym przeglądarki, nie zamykając głównej sesji.

Limit prób logowania

Domyślnie 5 nieudanych prób na tym samym koncie z tego samego IP albo 15 nieudanych prób z jednego IP dla wszystkich kont w ciągu 15 minut blokuje logowanie na 15 minut. Przy blokadzie progresywnej czas podwaja się przy każdym powtórzeniu w ciągu 24 godzin, maksymalnie do 24 godzin. Po 3 blokadach w ciągu 24 godzin IP zostaje zablokowane na 7 dni. Blokada dotyczy pary IP i konto: atakujący nie może zablokować uprawnionego pracownika logującego się z innego adresu. Prośby o reset hasła są ograniczone do 5 na IP na godzinę.

Zakładka Blokady i zamknięcia pokazuje aktywne blokady logowania, które możesz zdjąć, oraz bany, które możesz usunąć. Możesz tam też ręcznie zablokować adres IP lub zakres CIDR.

Adresy IP i filtr krajów

Biała lista przyjmuje adresy IP oraz zakresy CIDR IPv4 i IPv6, po jednym w wierszu. Opcja Zezwalaj tylko na białą listę odrzuca każdy inny adres; zapisuje się tylko wtedy, gdy Twój obecny adres IP jest na liście.

Filtr krajów działa w trybie zezwalania (tylko wybrane kraje) lub blokowania. Kraj pochodzi z nagłówka Cloudflare, gdy żądanie naprawdę przychodzi z serwerów Cloudflare, a w przeciwnym razie z bazy MMDB. Kliknij Pobierz bazę DB-IP Lite, aby zainstalować darmową bazę krajów, którą warto aktualizować mniej więcej co dwa miesiące. Adresy sieci lokalnej nigdy nie są filtrowane, a zapis zostanie odrzucony, jeśli zablokowałby Twoje własne połączenie.

Odrzuceni odwiedzający dostają stronę 403 albo stronę 404, jeśli wolisz ukryć istnienie panelu.

Weryfikacja antybotowa: Turnstile lub hCaptcha

  1. Utwórz widget na dash.cloudflare.com (Turnstile) lub dashboard.hcaptcha.com, zezwalając na domenę swojego panelu.
  2. W Ustawieniach wybierz dostawcę, wklej klucz witryny i klucz tajny, a następnie zapisz.
  3. Rozwiąż testowy widget i kliknij Zweryfikuj i włącz.

Weryfikacja obejmuje stronę logowania dopiero po udanym teście: błędny klucz nie może zablokować administratorów. Każda zmiana kluczy wyłącza ją do kolejnego testu. Domyślnie logowania przechodzą, gdy dostawca jest niedostępny.

Po włączeniu panel otwiera się tylko w przeglądarce, która raz odwiedziła tajny link; wszyscy inni dostają stronę 404. Przeglądarka, która go włącza, zachowuje dostęp, a link jest wysyłany e-mailem do odbiorców alertów. Wygeneruj nowy link unieważnia wszystkie przeglądarki poza Twoją. Adresy IP z białej listy nigdy nie potrzebują linku.

Zmiana nazwy folderu admin

Proponowana jest losowa nazwa. Przed zmianą nowy adres jest wysyłany e-mailem; następnie folder zmienia nazwę, a pamięć podręczna jest czyszczona. Zaloguj się ponownie pod nowym adresem i zaktualizuj zadania cron wskazujące na stary folder. Jeśli serwer WWW nie może zmienić nazwy folderu, zrób to przez FTP, a potem wyczyść pamięć podręczną w Zaawansowane > Wydajność.

Alerty o nietypowych logowaniach

Pierwsze logowanie każdego pracownika po instalacji staje się punktem odniesienia. Potem alert jest wysyłany dla nowego IP, nowego kraju, nowej przeglądarki lub systemu albo logowania poza podanymi godzinami (na przykład 07-21). Odbiorcami są pracownik, superadministratorzy i dodatkowe adresy. Link To nie ja w e-mailu, ważny 7 dni, blokuje IP, zamyka sesje pracownika i unieważnia jego hasło; pracownik ustawia nowe przez opcję Nie pamiętasz hasła?

Pole webhook publikuje też te alerty, blokady i zmiany wrażliwe na Slacku, Microsoft Teams, Discordzie, Google Chat lub Mattermost.

Aktywne sesje i bezczynność

Zakładka Aktywne sesje pokazuje otwarte sesje z adresem IP, krajem i urządzeniem logowania. Możesz zamknąć sesję, wylogować wszystkie swoje pozostałe sesje albo wylogować pracownika wszędzie. Ustawienie Wyloguj po bezczynności zamyka sesje nieaktywne dłużej niż wybrany czas; automatyczne odświeżanie panelu nie liczy się jako aktywność.

Dziennik aktywności

Każde utworzenie, zmiana i usunięcie w panelu jest zapisywane z pracownikiem, adresem IP, stroną, a przy zmianie z poprzednią i nową wartością każdego pola. Hasła i tokeny są ukrywane. Rejestrowane są też instalacje, odinstalowania i aktualizacje modułów. Zmiany pracowników, profili, kluczy API, adresów URL sklepu oraz instalacje modułów są oznaczane jako wrażliwe i wysyłane e-mailem do administratorów. Filtruj według pracownika, akcji lub obiektu i eksportuj do CSV. Klasy obiektów, których nie rejestrować, dodaj w Ustawieniach.

Raport bezpieczeństwa

Raport jest wysyłany co tydzień lub co miesiąc do superadministratorów i dodatkowych adresów. Aby wysyłka była pewna, wywołuj raz dziennie adres URL crona pokazany w Ustawieniach. Bez crona raport wychodzi przy następnej wizycie w panelu po nadejściu terminu. Przycisk Wyślij mi raport teraz służy jako podgląd.

Dostęp awaryjny

Jeśli zostałeś zablokowany, utwórz przez FTP pusty plik o nazwie disable.flag w modules/dfadminshield/: wszystkie zabezpieczenia zostają wstrzymane do jego usunięcia. Nie usuwaj folderu modułu, kontener Symfony PrestaShop się do niego odwołuje. Wartość DFAS_KEY w tabeli configuration zawiera klucz tajnego linku.

Uwierzytelnianie dwuskładnikowe

Admin Shield chroni stronę logowania i monitoruje dostęp, ale nie wymaga kodu po haśle. Aby dodać ten krok, zainstaluj również moduł 2FA Google Authenticator od DataFirefly: oba działają razem.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia