[WordPress] Jak zablokować XML-RPC, zezwalając na działanie JetPackowi?

Dostałem dzisiaj wiadomość od jednej z użytkowniczek forum wsparcia WordPress, która odwiedziła stronę i wysłała wiadomość poprzez ten formularz.

Zgodnie z zaleceniami zablokowałam dostęp do pliku xmlrpc.php, jednak po aktywacji tej blokady nie mogę korzystać z JetPacka i aplikacji WordPress w telefonie – czy jest możliwość blokady tego pliku w taki sposób, aby Jetpack i aplikacja w telefonie dalej mogły działać?

Czym jest plik xmlrpc.php w WordPress?

Jest zwany „plikiem zdalnej kontroli” – w prostych słowach umożliwia zewnętrznym systemom (np. aplikacji WordPress) na wykonywanie pewnych operacji na stronie. ale też wiele szkodliwych i złośliwych, które wykorzystują go np. do łamania haseł, próbują dodać spam na stronie etc. – z tego też względu zaleca się jego blokadę.

Jeżeli plik ten jest zablokowany: nie można zarządzać stroną poprzez platformę WordPress.com, aplikacja WordPress nie jest w stanie się połączyć z serwisem, VaultPress nie jest w stanie wykonywać kopii zapasowych, a podczas próby aktywacji wtyczki otrzymasz błąd 403 site_inaccessible 

Jak zablokować XML-RPC w WordPress i poprawić bezpieczeństwo?

Aby zablokować ten plik, wystarczy zablokować jego wykonywanie na serwerze, poprzez dodanie poniższego kodu do pliku .htaccess

#Dodaj do htaccess
#Blokada xmlrpc.php
<Files xmlrpc.php>
order deny,allow
deny from all
</Files>

Jednak jak wspominałem – zablokuje to wykonywanie wszelkich skryptów i możliwość połączenia się z witryną przez te, które wymagają tego pliku do działania.

Jak zablokować XML-RPC i pozwolić na działanie JetPackowi, ValuePress oraz aplikacji WordPress?

Po dodaniu kodu z poprzedniego akapitu w panelu WordPress.com zobaczymy taki komunikat, a aktywacja wtyczki JetPack będzie niemożliwa, podobnie jak logowanie poprzez WordPress.com i wszystkie funkcje związane z tą wtyczką:

Ta strona jest niedostępna. Disconnect Site

Aby JetPack działał poprawnie do pliku .htaccess należy dodać tę formułę – jednocześnie usuwając poprzednią (o ile istnieje):

#Dodaj do htaccess
#Blokada xmlrpc.php
#Zezwól na JetPACK
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
Allow from 192.0.64.0/18
Satisfy All
</Files>

Od teraz wszystkie usługi będą działać bez problemu.

Jeżeli chcesz zezwolić innym skryptom i/lub serwisom na dostęp do strony, wystarczy dodać linijkę z adresem IP/zakresem adresów, które mają zgodę na połączenie, analogicznie do 7 linijki powyższego kodu.

Oceń ten artykuł jako pierwszy
Powiązane tematy: WordPress
Strona w trakcie przebudowy :) Wróć niebawem, aby zobaczyć różnice.Na stronie mogą znajdować się linki polecające (affiliacyjne), które pozwalają utrzymać bloga. Zakup z mojego polecenia nie generuje dla Ciebie dodatkowych kosztów, a ja otrzymam prowizje od kwoty zapłaconej.

2 Replies to “[WordPress] Jak zablokować XML-RPC, zezwalając na działanie JetPackowi?”

  1. Ewelina

    A co jeśli ma się zmienne IP? Nie uśmiecha się dopisywać każde IP do kodu :)

    1. Jakub Jaworowicz[ Post Author ]

      IP Jetpack jest niezmienne stąd nie wywołuje błędu. Pozostałe adresy będą zablokowane.

Przyłącz się do dyskusji

Bądź na bieżąco

Newsy i promocje - Marketing & WordPress

Maksymalnie trzy wiadomości w miesiącu dopasowane do Ciebie. Polityka Prywatności dostępna jest tutaj. Dla każdego subskrybenta prezent niespodzianka.

Dziękuję za zapis.

Niebawem przyjdzie do Ciebie mail powitalny. Twoja darmowa godzina na pracę w #WordPress została aktywowana.

Formularz kontaktowy

Z pomocą tego formularza, możesz poprosić o wsparcie lub wysłać prośbę o wycenę

Dane przetwarzane tylko na cele odpowiedzi. Bez Newslettera.

Wiadomość wysłana!
Dziękuję!