X

Restringi l'accesso all'amministrazione di WordPress per indirizzo IP

Questo è un guest post di Eric Sizemore, uno sviluppatore web, programmatore e domainer.

Alla luce dei recenti eventi, chiunque utilizzi WordPress è apparentemente suscettibile a quello che viene chiamato "Distributed WordPress admin account cracking". Puoi leggere questo articolo per maggiori informazioni. Questo post mira a fornire un ulteriore livello di sicurezza sia alla tua cartella wp-admin che al file wp-login.php.

Passaggio 1 – Determinare chi avrà accesso

Prima di tutto, questo ulteriore livello di sicurezza comporta il blocco di tutti gli IP tranne pochi selezionati. Se il tuo IP è dinamico, potrebbe non essere l'opzione migliore per te. Se hai molti utenti a cui consenti l'accesso al tuo blog, questo potrebbe richiedere molto tempo. Se sei l'unico autore del blog e comunque non consenti registrazioni, questo sarà piuttosto semplice.

Passaggio 2 – Creazione di .htaccess

Innanzitutto, otteniamo il tuo indirizzo IP. Vai su IPChicken e prendi nota del tuo indirizzo IP. Successivamente, scarica i file .htaccess che sono stati creati per questo post.

Una volta estratto l'archivio, dovresti vedere un file .htaccess e una cartella wp-admin con un file .htaccess al suo interno. Apri il file .htaccess principale e dovresti vedere:

Order Deny,Allow Deny from all Allow from xx.xx.xx.xx

Modifica la riga "Allow from" per riflettere il tuo indirizzo IP. Per aggiungere altri indirizzi IP, aggiungi una nuova riga con "Allow from" e il prossimo indirizzo IP, e così via. Ora, è probabile che tu abbia già un file .htaccess nella tua cartella principale di WordPress. In tal caso, modifica il file e copia incolla il contenuto del tuo file .htaccess modificato dallo zip, e salva/ri-carica.

Ora apri il file .htaccess all'interno della cartella wp-admin dallo zip. Dovresti vedere qualcosa di simile a:

Order Deny,Allow Deny from all Allow from xx.xx.xx.xx

Fai come hai fatto sopra. E aggiungi eventuali IP aggiuntivi che vuoi consentire nell'area wp-admin. È probabile che tu non abbia un file .htaccess nella tua cartella wp-admin, quindi carica semplicemente il file .htaccess modificato dallo zip nella tua cartella wp-admin.

Passaggio 3 – Hai finito

E questo è tutto! :)

Commenti   Lascia una risposta

  1. Nessun file scaricabile.

  2. Perfetto

  3. Sunil Ilanthila 24 luglio 2021 alle 15:51

    Sto riscontrando un problema non accettabile da un IP, ma funziona da un altro IP, ci sono soluzioni?

    1. Potresti voler contattare il supporto del tuo hosting per questo.

  4. So che questo sito web offre post di qualità e altro materiale, esiste un altro sito web che presenta dati di tale qualità?

  5. Non funziona. Ho ricevuto: Internal Server Error

    1. Potresti voler contattare il supporto del tuo hosting per questo.

  6. Grazie. Era proprio quello che cercavo

    1. Siamo lieti che tu l'abbia trovato utile 🙂

  7. ciao a tutti,
    Ho una restrizione IP sul mio sito per wp-login.php in .htaccess. ma, i miei clienti non riescono a disconnettersi, mostrando un errore per la restrizione IP. qualcuno può darmi una soluzione migliore solo per la restrizione IP per la pagina di accesso dell'amministratore.

    1. Qual è il codice per la restrizione che stai usando? È stato aggiunto solo alla cartella wp-admin?

    2. Valerie Cudnik 25 aprile 2022 alle 20:04

      Non esiste un accesso diverso per l'amministratore. Il problema con la disconnessione è che WP utilizza wp-login.php sia per l'accesso che per la disconnessione.

      L'opzione migliore è creare una pagina di disconnessione diversa per i clienti.

  8. Attenzione: se il tuo sito web Wordpress utilizza Woocommerce, il codice seguente impedirà l'invio delle nuove email d'ordine!

  9. Paramjeet Singh 25 agosto 2019 alle 13:15

    Ciao, grazie per l'articolo utile, sono in grado di aggiungere un ulteriore livello di sicurezza al mio sito web.
    Ma ho 1 domanda, questo permetterà solo al mio IP di accedere alla dashboard di WP-admin, ecc. Ha un impatto sui plugin o sui file, ecc., intendo dire che hanno bisogno o non hanno bisogno della connessione alla pagina wp-login?

    1. Questo codice è specificamente per bloccare l'accesso alla pagina di accesso. Detto questo, se i plugin installati sono stati codificati correttamente, allora se un visitatore non può accedere, non dovrebbe avere accesso alle pagine di amministrazione.

  10. Non ha funzionato per me.

    Questo funziona, l'ho trovato in uno dei miei vecchi progetti 🙂

    RewriteEngine on
    RewriteCond %{REQUEST_URI} ^(.*)?wp-login\.php(.*)$ [OR]
    RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
    RewriteCond %{REMOTE_ADDR} !^95\.154\.22\.86$
    RewriteCond %{REMOTE_ADDR} !^77\.243\.128\.133$
    RewriteRule ^(.*)$ – [R=403,L]

    1. L'opzione Riscrivi funziona per me ma non riesco ad accedere alla pagina web di amministrazione da localhost

  11. Questo non funziona su Apache 2.4 perché order allow,deny è deprecato.
    Invece devi usare mod_rewrite.c.

  12. Qualcuno potrebbe aiutarmi con quale IP dovremmo inserire nel file htaccess. È l'IP pubblico che vedo quando cerco il mio IP su Google, o è quello statico?

  13. Abbastanza utile per la sicurezza. Di recente ho subito alcuni attacchi sul mio sito wp e sto cercando una buona soluzione.

  14. Elizabeth Richardson 20 febbraio 2010 alle 17:12

    Dopo aver lasciato questo sistema in vigore per un paio di mesi, ora sono riuscito a rilassarmi. Sembra funzionare dato che in precedenza ero stato hackerato più volte.

    Uso un intervallo di IP invece di un IP specifico nel mio .htaccess e funziona fantasticamente. Grazie mille.

    1. Sono felice di sentire che sta funzionando per te. 😀

  15. Grazie per le informazioni
    Ero molto frustrato perché il mio blog era stato hackerato per la quarta volta.
    Volevo essere sicuro al 100% di fermare tutti gli attacchi dei bot.
    Negli ultimi giorni ho provato molti plugin, incluso askapache, ma non funziona bene a causa di alcuni problemi con il mio hosting.

    Finalmente ho trovato una soluzione personalizzata, ho messo un file .htaccess nella cartella wp-admin e l'ho bloccato per IP in modo che si apra solo con il mio intervallo di IP. e funziona. Ora nessun bot può provare a controllare le mie opzioni e i file di configurazione. A meno che il bot non sia nel mio PC stesso.

    : )

    Saluti

  16. Ma accedo al mio sito da posti diversi, incluso il mio cellulare.

    Quello che mi piacerebbe davvero è limitare l'accesso a tutto ciò che è al di fuori del Nord America e questo probabilmente ridurrebbe molti attacchi hacker, non credi?

    Sì, è ancora aperto ma molto meno di quanto non fosse in precedenza.

    Qualcuno ha provato qualcosa di simile?

    1. Forse, ma dovresti integrarlo con un database di geolocalizzazione IP, il che potrebbe essere un po' eccessivo per qualcosa del genere.

      Se accedi da molti posti/IP, potresti voler considerare qualcosa come Login Lockdown.

  17. Anche il plugin Login Lockdown è ottimo. Limita e poi blocca i tentativi di accesso falliti. Un po' come IPtables per wp.
    http://wordpress.org/extend/plugins/login-lockdown/

    Lo abbiamo aggiunto alla nostra pre-installazione per i clienti di page.ly in modo che venga attivato per impostazione predefinita dopo la registrazione.

    PS.. adoro il nuovo design di themelab.com.

    1. Sembra che possa essere piuttosto efficace. Soprattutto se accedi da molte posizioni diverse con indirizzi IP diversi, potrebbe non essere pratico aggiungere una regola .htaccess per ciascuno.

      E sono contento che ti piaccia il design!

  18. @Elizabeth: Nessun problema! Fammi sapere come funziona per te.

  19. Grazie mille per questo.

    Ho riscontrato tentativi di exploit su diversi miei siti web WordPress e ho usato ht.access per bloccare gli IP individuali. Ma questo sembra molto più efficace. Spero che funzioni bene.

    Grazie Leland.

  20. @badcat: È una buona domanda, ma non credo che dovrai ripetere il processo poiché questi file .htaccess non sono inclusi nell'aggiornamento effettivo.

  21. Dovrai ripetere questo processo dopo l'uscita di una nuova versione di WordPress?

    O avrebbe più senso negare la cartella wp-admin nel file .htaccess principale del sito, dato che non viene aggiornato quando WP aggiorna il suo core?

Aggiungi un commento

Siamo lieti che tu abbia scelto di lasciare un commento. Tieni presente che tutti i commenti sono moderati secondo la nostra normativa sulla privacy e tutti i link sono nofollow. NON utilizzare parole chiave nel campo del nome. Avviamo una conversazione personale e significativa.

Checklist per il lancio di WordPress

La Guida Definitiva per il Lancio di WordPress

Abbiamo raccolto tutti gli elementi essenziali della checklist per il lancio del tuo prossimo sito web WordPress in un comodo ebook.
Sì, Inviami l'eBook Gratuito!