WP-CLI dla Wordfence i wsparcie Abilities API: zarządzanie bezpieczeństwem WordPressa z terminala i przez agentów AI
W środowiskach, gdzie utrzymujesz wiele instalacji WordPressa albo po prostu większość pracy robisz w terminalu, klikanie po panelu administracyjnym pod kątem zadań bezpieczeństwa szybko zaczyna przeszkadzać. Pojawił się właśnie ciekawy, otwartoźródłowy dodatek, który dorzuca pełne wsparcie WP-CLI dla Wordfence Security – i co ważniejsze: należy do pierwszych pluginów implementujących WordPress Abilities API z WordPressa 6.9.
W praktyce dostajesz dwa kanały sterowania Wordfence: klasyczne polecenia wp w terminalu oraz ustandaryzowany interfejs (Abilities API), dzięki któremu funkcje bezpieczeństwa mogą być „odkrywane” i wywoływane przez narzędzia automatyzujące oraz agentów AI bez pisania dedykowanej integracji pod każdą akcję.
Co dokładnie wnosi plugin
Plugin dodaje do WP-CLI nową przestrzeń poleceń wp wfsec, która mapuje najważniejsze operacje Wordfence na komendy terminalowe. Zakres jest szeroki: od skanów malware, przez zarządzanie WAF, po pracę z wykrytymi problemami i konfiguracją.
1) Skanowanie bezpieczeństwa (Security Scanning)
- Uruchamianie szybkiego skanu lub pełnego skanu malware.
- Monitorowanie postępu skanu w czasie rzeczywistym.
- Podgląd historii skanów oraz szczegółowych logów.
2) Zarządzanie zaporą (Firewall Management)
- Blokowanie i odblokowywanie adresów IP.
- Ustawianie czasu trwania blokady oraz powodu (reason).
- Sprawdzanie, czy konkretny adres IP jest zablokowany.
- Włączanie lub wyłączanie ochrony WAF (Web Application Firewall).
3) Praca z incydentami i wykryciami (Issue Tracking)
- Wylistowanie wszystkich wykrytych problemów bezpieczeństwa.
- Filtrowanie po statusie: new, ignored, resolved.
- Usuwanie lub zarządzanie pojedynczymi zagrożeniami.
4) Konfiguracja (Configuration)
- Odczyt i zmiana ustawień Wordfence.
- Sprawdzanie statusu licencji.
- Eksport i import konfiguracji.
Szybkie przykłady: komendy wp wfsec w praktyce
Poniżej kilka poleceń, które dobrze pokazują, jak wygląda codzienna obsługa Wordfence bez wchodzenia do kokpitu. To szczególnie wygodne w skryptach utrzymaniowych, CI/CD albo przy pracy na wielu serwerach.
# Sprawdź ogólny status Wordfence
wp wfsec status
# Uruchom pełny skan bezpieczeństwa
wp wfsec scan start --type=full
# Podejrzyj postęp skanu
wp wfsec scan status
# Wylistuj wszystkie problemy bezpieczeństwa
wp wfsec issues ls --status=all
# Zablokuj IP na 24 godziny (86400 sekund)
wp wfsec firewall block 192.168.1.100 --duration=86400 --reason="Brute force attempt"
# Sprawdź status licencji
wp wfsec license status
Wszystkie komendy wspierają też --format=json, co jest kluczowe, jeśli chcesz podpinać to pod automatyzacje (np. parsowanie wyników w skryptach) albo integrować z własnymi dashboardami.
Abilities API w WordPress 6.9: po co to w ogóle Wordfence’owi?
Najciekawsza część tego projektu to implementacja WordPress Abilities API – nowego, ustandaryzowanego interfejsu wprowadzonego w WordPressie 6.9. Założenie jest proste: zamiast zgadywać, jakie endpointy lub niestandardowe integracje ma dany plugin, narzędzia (w tym agenci AI) mogą „odkryć” dostępne możliwości WordPressa i bezpiecznie je wywoływać przez interfejs opisany schematem i walidowany po stronie serwera.
W kontekście bezpieczeństwa to otwiera kilka sensownych scenariuszy: automatyczne, okresowe uruchamianie skanów; budowanie monitoringu opartego o dane z Wordfence; integrację z zewnętrznymi panelami; a nawet delegowanie rutynowych kontroli do automatyzacji/agentów AI – bez klejenia dedykowanego kodu integracyjnego dla każdego wywołania.
Jakie „abilities” udostępnia plugin
Plugin wystawia siedem kluczowych możliwości (abilities), które pokrywają najbardziej użyteczne operacje związane z Wordfence:
- scan-status – pobranie bieżącego stanu skanowania i postępu.
- scan-start – programowe uruchomienie skanu bezpieczeństwa.
- issues-list – pobranie listy wykrytych problemów bezpieczeństwa.
- issues-count – zliczenie problemów według poziomu/severity.
- firewall-status – sprawdzenie stanu WAF.
- firewall-block – blokowanie IP przez API.
- license-status – odczyt informacji o licencji.
Uwierzytelnianie: Application Passwords + Basic Auth
Autoryzacja po stronie Abilities API jest rozwiązana przez WordPress Application Passwords (hasła aplikacyjne) używane z Basic Auth. To podejście jest praktyczne dla integracji i automatyzacji, bo pozwala nadawać dostęp w sposób kontrolowany (oddzielne hasło per integracja) bez ujawniania głównego hasła użytkownika.
Wymagania techniczne
- WordPress 6.9+
- PHP 8.0+
- WP-CLI 2.5+
- Zainstalowany plugin Wordfence Security (wersja darmowa lub premium).
Instalacja: ZIP lub Composer
Jeśli instalujesz klasycznie, pobierz paczkę ZIP i wrzuć ją do katalogu /wp-content/plugins/, a następnie aktywuj plugin w WordPressie.
Alternatywnie, jeśli pracujesz w układzie typu Bedrock, instalacja przez Composer ma więcej sensu (zarządzanie zależnościami i wersjami w repo).
Podsumowanie: kiedy to ma największy sens
Ten plugin jest szczególnie przydatny, gdy utrzymujesz wiele instancji WordPressa, pracujesz na serwerach bez GUI, automatyzujesz utrzymanie albo budujesz własne procesy bezpieczeństwa. wp wfsec daje Ci wygodny interfejs w terminalu, a Abilities API w WordPressie 6.9 dokłada warstwę integracyjną pod automatyzacje i agentów AI – w formie ustandaryzowanej, samopiszącej się (self-describing) i walidowanej schematami.
Odniesienia / Źródła
Magdalena Wiśniewska
Inżynier infrastruktury chmurowej, specjalistka Terraform i Infrastructure as Code. Automatyzacja i skalowalność to moja pasja.
Wszystkie wpisyWięcej od Magdalena Wiśniewska
WP Media Cleanup: jak bezpiecznie usuwać nieużywane warianty obrazków w WordPressie i odzyskać miejsce na dysku
Checklist GDPR dla właścicieli stron: kompletna lista zgodności (z praktyką dla WordPressa)
Krytyczna eskalacja uprawnień w ACF Extended: kiedy formularz rejestracji może dać atakującemu admina