Domanda

Mi chiedevo se proteggere una directory web con un file .htaccess (con il file .htpasswd al di fuori del Webroot apache pubblico) è un modo sicuro per proteggere una directory (e il relativo contenuto).

qualcuno potrebbe spiegare il Do e cosa non fare di questo tipo di protezione?

È stato utile?

Soluzione

L'autenticazione sarà passato senza protezione oltre la rete, se si utilizza il protocollo HTTP standard. Questo non è considerato come sicuro, come qualcuno potrebbe fiutare la password.

Se si limita accesso a HTTPS è abbastanza sicuro. Ciò significherebbe per installare e attivare il modulo apache ssl per il traffico http criptato (porta 433, https: // nella riga indirizzo del browser) e disattivare il traffico HTTP standard per questa directory sulla porta 80. Username e Password sarà ssl criptato. Assicurarsi di selezionare una buona password (lunga e complessa a sufficienza, non è possibile indovinare o la forza bruta).

configurazione di Apache può essere difficile, in modo da prendere un sacco di cura per mantenere le cose semplici e il test contro i possibili errori.

Può essere una buona idea di spostare la configurazione restrizione di accesso dal file .htaccess al file di configurazione di Apache principale, se si dispone di conoscenze e il controllo di esso. Potrebbe anche essere più facile per voi per mantenere nel file Htacces. E "facile" può essere più sicuro. Farlo nel modo ci si sente semplice e sicuro e facile da mantenere e ricordare per voi.

Si tratta di una semplice messa a punto per migliorare la sicurezza e di protezione contro gli infortuni:

Se avete PHP e-mail configurati sulla macchina in cui la directory protetta è che si può scrivere uno script di allarme semplice. Basta un file php "alarm.php" con una sola riga con la funzione php mail che invia una e-mail, che ti dice che la protezione .htaccess non funziona.

Se il vostro percorso di dominio e la directory è " http://mybox.example.com/secretdir /alarm.php " si può entrare in questo in un browser su una macchina diversa e si dovrebbe ottenere che la posta finché .htaccess viene 'aperta'. Se è protetto è possibile inserire il nome utente e la password e si riceverà anche la posta.

Per effettuare un allarme automatico fuori da questo si potrebbe usare una scatola di UNIX diverso che cerca di ottenere questo URL ogni 15 minuti o giù di lì. La linea per la crontab:

* / 15 * * * * user1 wget http://mybox.example.com/ secretdir / alarm.php

user1 è un utente su questa macchina che è consentita l'esecuzione wget, e wget deve essere installato.

È possibile disattivare la protezione htaccess come una prova e dovrebbe prendere la posta ogni 15 minuti.

Dalla mia esperienza è una falla di sicurezza comune che una directory che si pensa è protetto perde la sua protezione quando si cambia qualcosa e non sono a conoscenza, in questo modo si ottiene l'e-mail che ti avvisa.

Altri suggerimenti

Per quanto ne so, htaccess è facile da hackerare se è stato intercettato (f.e. Stai accedendo da un internet cafè con una rete sniffer in esecuzione). Per quanto ne so , l'autenticazione Digest aiuta a superare il problema.

.htaccess è un modo abbastanza standard come apportare modifiche alla configurazione per-directory per le risorse servite da Apache HTTPD nei casi in cui si non hanno accesso per principale file di configurazione / non avere accesso come root.

Se si ha accesso alla configurazione principale, è molto più facile per avere tutte le configurazioni (tra cui l'autenticazione) posto in una posizione centrale (anche se è suddiviso in più file), dove non è così facile da trascurare. Dalla mia esperienza posso dire, è solo una questione di tempo prima di dimenticare i tuoi file .htaccess.

La documentazione ufficiale è ricordare a più riprese che l'uso di htaccess file dovrebbe essere evitato quando possibile.

Se l'uso del <=> è l'unica scelta, assicurarsi di seguire le precauzioni di sicurezza generali con i principali config HTTPD, vale a dire evitare che utenti non autorizzati da loro lettura, i file sono leggibili da server, assicurarsi che hai elenco di directory disabili, sempre assicurarsi che la password vengono memorizzati in formato crittografato / hash, ecc.

Per maggiori informazioni, si prega, controllare Apache <=> esercitazione

Un file .htaccess è piuttosto comodo, ma ... questo non vi proteggerà da qualcuno sfruttando il codice e la lettura di tutti i file che vuole. Se verrà sfruttata vostro sito (anche un piccolo script), né .htaccess nè altre soluzioni vi proteggerà, come l'hacker guadagnerà diritti dell'utente esegue lo script (di solito www-data).

Ciò è particolarmente doloroso in CGI, ma altri script vengono hackerato pure.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top