Przejdź do treści
TubePress — bezpłatny, samodzielnie hostowany & aktywnie utrzymywany
Użytkownicy i administracja

Bezpieczeństwo

Uwierzytelnianie dwuskładnikowe, captcha, własny adres URL panelu, weryfikacja wieku i utwardzanie.

TubePress jest domyślnie wzmocniony — ochrona CSRF na każdym formularzu, ograniczanie liczby żądań dla wrażliwych operacji, nowoczesne haszowanie haseł i regeneracja sesji są wbudowane. Na tej podstawie kilka dodatkowych kontrolek pozwala gruntownie zabezpieczyć panel administracyjny.

Ta strona omawia uwierzytelnianie dwuskładnikowe, CAPTCHA, przeniesienie logowania do panelu na tajny adres URL, bramkę wiekową, bezpieczeństwo transmisji i kończy się listą kontrolną zabezpieczeń. Większość tych opcji znajduje się w Ustawienia → Bezpieczeństwo.

Przegląd bezpieczeństwa

Dobre zabezpieczenie jest wielowarstwowe: żaden pojedynczy mechanizm nie wystarczy samodzielnie, ale razem sprawiają, że witryna jest trudnym celem. Kontrolki dostępne w ustawieniach bezpieczeństwa to:

  • Uwierzytelnianie dwuskładnikowe — jednorazowy kod przy logowaniu do panelu administracyjnego.
  • CAPTCHA — chroni publiczne formularze przed botami.
  • Niestandardowy adres URL panelu — ukrywa logowanie przed automatycznymi skanerami.

W tle framework haszuje hasła za pomocą Argon2id (lub bcrypt, gdy Argon2 jest niedostępny), weryfikuje token CSRF przy każdym żądaniu zmieniającym stan, regeneruje sesję po zalogowaniu oraz ogranicza liczbę kolejnych prób logowania, rejestracji i resetowania hasła.

Uwierzytelnianie dwuskładnikowe

Uwierzytelnianie dwuskładnikowe (2FA) dodaje czasowy jednorazowy kod (TOTP) do logowania do panelu administracyjnego, dzięki czemu samo skradzione hasło nie wystarczy, aby uzyskać dostęp. Działa z Google Authenticator, Authy, 1Password lub dowolną aplikacją zgodną z TOTP.

Aby się zarejestrować, otwórz Ustawienia → Bezpieczeństwo i:

  1. Kliknij Włącz 2FA, aby wygenerować sekret.
  2. Zeskanuj kod QR aplikacją uwierzytelniającą lub ręcznie wpisz wyświetlony klucz.
  3. Wpisz bieżący 6-cyfrowy kod, aby zweryfikować i włączyć 2FA.

Sekret jest powiązany z indywidualnym kontem, więc każdy administrator rejestruje się osobno. Wyłączenie 2FA wymaga podania bieżącego kodu, a bramka jest fail-closed: po ustawieniu kodu panel administracyjny wymaga go przy wejściu, nawet jeśli zalogowano się przez publiczny formularz logowania.

Zachowaj kopię klucza. Zapisz klucz tajny (wyświetlony obok kodu QR) w menedżerze haseł podczas rejestracji. Jeśli zgubisz telefon, ten klucz pozwoli Ci ponownie dodać konto do nowej aplikacji uwierzytelniającej.

CAPTCHA

CAPTCHA zapobiega automatycznemu nadużywaniu publicznych formularzy. Wybierz dostawcę w Ustawienia → Bezpieczeństwo:

Wyłączone
Brak CAPTCHA.
Google reCAPTCHA
Albo v2 (pole wyboru „Nie jestem robotem") albo v3 (niewidoczne, oparte na wyniku).
Cloudflare Turnstile
Bezpłatne i przyjazne prywatności, bez zagadek — większość odwiedzających przechodzi niewidocznie.

Wklej klucz witryny i klucz tajny dostawcy, wybierz jasny lub ciemny motyw widżetu, a następnie zaznacz, które formularze chronić — Rejestracja, Komentarze i Formularz kontaktowy są przełączane niezależnie i domyślnie włączone po ustawieniu dostawcy. CAPTCHA łączy się z zestawem antyspamowym komentarzy opisanym w Komentarze.

Logowanie administratora nie jest chronione CAPTCHA. Formularz logowania jest chroniony ograniczaniem liczby żądań — wielokrotne nieudane próby są blokowane. CAPTCHA obejmuje widoczne dla odwiedzających formularze rejestracji, komentarzy i kontaktu.

Niestandardowy adres URL panelu

Automatyczne skanery atakują dobrze znane ścieżki, takie jak /admin/login. Możesz przenieść formularz logowania na tajny slug, dzięki czemu te sondy niczego nie znajdą. W Ustawienia → Bezpieczeństwo ustaw niestandardowy slug logowania (3–50 znaków, małe litery, cyfry i myślniki). Logowanie będzie wtedy dostępne pod adresem /your-secret-slug zamiast /admin/login; sam panel pozostaje pod adresem /admin, nadal chroniony uwierzytelnianiem.

Dodaj do zakładek, inaczej zablokujesz się. Gdy aktywny jest niestandardowy slug, domyślne /admin/login przestaje działać. To bezpieczeństwo przez zaciemnienie — nie zastępuje silnego hasła i 2FA. Jeśli zapomnisz sluga, wyczyść go bezpośrednio w bazie danych: DELETE FROM settings WHERE setting_key='admin_login_slug'.

Bramka wiekowa

Dla stron dla dorosłych dołączona wtyczka Age Gate wyświetla pełnoekranową ścianę weryfikacji wieku przed treścią, z wieloma trybami weryfikacji, opcjonalnym metatagiem RTA i linkami do stron Regulaminu, 2257 i Prywatności. Jest włączana i konfigurowana z poziomu /admin/plugins.

Ponieważ jest częścią konfiguracji moderacji i zgodności, pełny opis znajduje się na stronie Moderacja.

HTTPS & nagłówki

Zawsze serwuj witrynę przez HTTPS — chroni hasła i ciasteczka sesji podczas transmisji. Wystarczy bezpłatny certyfikat od Let's Encrypt (Certbot). Jeśli TLS jest kończony na serwerze proxy lub load balancerze, przekaż schemat (na przykład nagłówek X-Forwarded-Proto), aby aplikacja wiedziała, że żądanie jest bezpieczne.

Na produkcji wyłącz również display_errors PHP (aby ślady stosu nigdy nie docierały do odwiedzających) i expose_php (aby wersja nie była ujawniana). Sprawdzenie kondycji oznacza wszystkie trzy dla Ciebie.

Lista kontrolna zabezpieczeń

Przejdź przez tę listę przed — i regularnie po — uruchomieniu witryny:

  1. Ustaw długie, unikalne hasło administratora.
  2. Zarejestruj 2FA na każdym koncie pracownika.
  3. Przenieś logowanie na niestandardowy adres URL panelu.
  4. Włącz CAPTCHA na rejestracji, komentarzach i kontakcie.
  5. Serwuj wszystko przez HTTPS.
  6. Wyłącz display_errors i expose_php.
  7. Nadaj pracownikom minimalną wymaganą rolę — preferuj moderatora nad administratorem.
  8. Utrzymuj PHP i TubePress aktualne i wykonuj regularne kopie zapasowe.

Następne kroki

Nadal masz problem?

Otwórz zgłoszenie z poziomu panelu, a nasz zespół Ci pomoże.

Wypróbuj demo na żywo → Pobierz TubePress →