info su .htaccess in locale e sul server remoto

Ciao

Volevo un po' capire come funzione la faccenda della protezione dei file in cartelle con .htaccess.

Come funziona questo sistema?

Devo creare la cartella da proteggere e inserirvi il file .htaccess con questo codice ad esempio trovato in rete:

AuthPAM_Enabled off

AuthUserFile /home/sites/www.tuosito.com/web/.htpasswd

AuthGroupFile /dev/null

AuthName Servizi

AuthType Basic

require valid-user

Non ho capito tanto bene il discorso del percorso assoluto per il file .htpasswd.

Vorrei sperimentarlo prima in locale dove uso xampp.

Ammesso che io voglia creare nella directory "sito" posta nella directory "htdocs" di xampp una cartella chiamata "protetta" cosa dovrei fare precisamente?

Il file .htpasswd posso metterlo nella stessa cartella "protetta".

Insomma dovreste aiutarmi a chiarire le idee.

Grazie anticipatamente.

inviato 9 anni fa
frankphp
X 0 X

Le righe realmente necessarie nel file .htaccess sono:

AuthUserFile /percorso/a/.htpasswd
AuthName "Titolo da mostrare nella finestra di richiesta credenziali"
AuthType Basic
Require valid-user

per inserire un unovo utente in .htpasswd devi lanciare il seguente comando (ti verrà chiesta la password):

htpasswd -c /percorso/a/.htpasswd nome_nuovo_utente

Il comando htpasswd lo trovi nella cartella bin di Apache (es.: C:\Programmi\Apache Software Foundation\Apache2.2\bin)

.htpasswd puoi anche metterlo nella stessa cartella da protegere, metre .htaccess DEVE stare nella cartella da proteggere.

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Le righe realmente necessarie nel file .htaccess sono:

AuthUserFile /percorso/a/.htpasswd
AuthName "Titolo da mostrare nella finestra di richiesta credenziali"
AuthType Basic
Require valid-user

per inserire un unovo utente in .htpasswd devi lanciare il seguente comando (ti verrà chiesta la password):

htpasswd -c /percorso/a/.htpasswd nome_nuovo_utente

Il comando htpasswd lo trovi nella cartella bin di Apache (es.: C:\Programmi\Apache Software Foundation\Apache2.2\bin)

.htpasswd puoi anche metterlo nella stessa cartella da protegere, metre .htaccess DEVE stare nella cartella da proteggere.

 :bye:

allora per inserire un nuovo utente dovrei lanciare un comando.

Io ho trovato htpasswd.exe in  D:\Programmi\xampp\apache\bin..dovrebbe essere questo (sto provando con xampp sotto windows xp, ma ho anche xampp per linux). Sbaglio?

Non mi è chiaro ancora cosa devo mettere per percorso assoluto precisamente.

Grazie

risposto 9 anni fa
frankphp
X 0 X

Percorso assoluto si intende il percorso dalla radice fino al file, quindi se è in d: il percorso sarà tipo:

D:\Programmi\xampp\apache\www\htdocs\..........\.htpasswd

risposto 9 anni fa
LonelyWolf
X 0 X

Percorso assoluto si intende il percorso dalla radice fino al file, quindi se è in d: il percorso sarà tipo:

D:\Programmi\xampp\apache\www\htdocs\..........\.htpasswd

ho fatto così:

Ho creato manualmente con il blocco note il file .htaccess nella directory da proteggere

(es: C:\Programmi\xampp\htdocs\secure\.htaccess)

Ho inserito nel file questo codice con il blocco note:

AuthUserFile C:\Programmi\xampp\htdocs\secure\.htpasswd

AuthName "Directory Protetta"

AuthType Basic

Require valid-user

Ho inserito per prova un file immagine da proteggere (frank.jpg) nella cartella "secure"

Con il prompt dei comandi di windows sono andato qui:

C:\Programmi\xampp\apache\bin

e ho avviato il file htpasswd dal prompt dei comandi

(inserendo anche il nome utente nuovo) così:

htpasswd -c C:\Programmi\xampp\htdocs\secure\.htpasswd ciccio

Poi il programma mi ha chiesto la password.

Cercando di aprire il file frank.jpg usciva la finestra di login

Inseriti i dati ho visualizzato l'immagine.

OK!! Tutto bene.

Il problema adesso resta da capire come avviare il file htpasswd sul server di altervista dove ho il sito.

Ciao

risposto 9 anni fa
frankphp
X 0 X

mi sembra che dal pannello di controllo di altervista puoi crearlo online.

risposto 9 anni fa
LonelyWolf
X 0 X

Uhm ... e se faccio localhost/secure/.htpasswd dopo essermi loggato, cosa vedo?  ::) oh tutte le password di tutti gli utenti  :o

Consiglio dopo aver creato .htpasswd di cambiargli i permessi almeno fino a utente, gruppo e guest nulla, che si attacchino ;)

risposto 9 anni fa
Marco Grazia
X 0 X

Visto che non posso più editare il mio post scrivo qui.

Una semplice pagina dove tramite un semplice tools si possono creare al volo file .htaccess e .htpasswd

http://tools.dynamicdrive.com/password/

risposto 9 anni fa
Marco Grazia
X 0 X

i file .htpasswd non sono accessibili da browser  :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X
i file .htpasswd non sono accessibili da browser  :bye:

Se lo dici tu  ::)

http://www.google.it/search?q=filetype:htpasswd+htpasswd&hl=it&start=30&sa=N

http://www.google.it/search?q=intitle:index.of+passwd&hl=it&start=10&sa=N

E sono due ricerchine semplici semplici su google, roba che chiunque può fare sia chiaro.

La sicurezza di htpasswd è dovuta alle impostazioni del server e da dove viene messo il file.

La sicurezza migliore (non assoluta ovviamente) si ottiene infilando quel piccolo file prima della directory public_html ovvero meglio sarebbe, in una cartella a cui possono accedere solo gli utenti a livello di gruppo.

risposto 9 anni fa
Marco Grazia
X 0 X

Ma nella configurazione di default di Apache non sono presenti queste righe?

<Files ~ "^\.ht">
Order allow,deny
Deny from all
</Files>

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

Normalmente sì, ma sono a prescindere.

Prima non puoi mai fidarti del fatto che siano presenti, come dici tu sono predefinite e ciò non vuol dire che qualche pierino non le abbia cambiate.

Poi se uno è tanto pazzo, o per motivi suoi che non conosco, tramite .htaccess locale le cambia o chiede di modificarle solo per il suo virtualhosting, e l'amministratore di sistema non è così bastardo dal .... :knuppel: be tutto questo non puoi saperlo a priori, ma il risultato è che la prima tecnica per l'hacking di un sito è proprio cercare quei file e se essi ci sono, e sono pure leggibili, be ma allora metà del lavoro è fatto e non è mica colpa tua (cracker) se l'utonto è pure pazzo.

Fatto è che se segui i link che ti ho dato, molti mostrano proprio l'inmostrabile.

risposto 9 anni fa
Marco Grazia
X 0 X
Fatto è che se segui i link che ti ho dato, molti mostrano proprio l'inmostrabile.

Si, ho notato :o

Certo che ce ne sono di amministratori di sistema con i controfiocchi... :lamo:

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

allora ragazzi.

Fate capire qualcosa anche a me.

Marcolino dice: "Consiglio dopo aver creato .htpasswd di cambiargli i permessi almeno fino a utente, gruppo e guest nulla, che si attacchino"

che significa precisamente?

Devo cambiare i permessi di lettura? E poi?

Che significa: "fino a utente, gruppo e guest nulla, che si attacchino"?

 ??? ??? ???

Grazie

risposto 9 anni fa
frankphp
X 0 X

Parlo per una macchina linux che è quella che conosco meglio, anche se ultimamente anche la microsoft si è gettata nel copia e incolla  ;)

Quindi: ogni account ha tre livelli di accesso ai programmi, ovvero utente (l'account vero e proprio), gruppo, cioè un gruppo di utenti e infine tutti gli altri, ovvero guest.

Ognuno di questi ha tre livelli: lettura, scrittura ed esecuzione.

Quindi se setti nulla di questi tre livelli per gli utenti classificati come guest (gli altri) da fuori nessuno può vedere, scrivere o lanciare un programma.

Ma la sicurezza totale per quanto riguarda il file passwd ce l'hai anche in un modo più semplice, ovvero, mettendolo in una directory dove nessun guest potrà mai giungere ne prima e ne dopo :D ovvero prima della cartella public_html.

In un percorso sul server tipo /home/nome_utente/public_html che è uno schema classico per un Apache montato su linux, i file che vengono puntati dal dominio, ovvero dal classico www.miosito.it sono dentro la cartella public_html e non c'è modo di andare più indietro.

Infatti se fai www.miosito.it/../ comunque punti sempre alla cartella public_html.

Ebbene, se metti dei files prima di public_html non c'è modo di vederli, qualsiasi permessi abbiano, a meno di non bucare l'intero sito, ovvero di non riuscire ad avere la tua password personale per l'account su server.

risposto 9 anni fa
Marco Grazia
X 0 X

vabbe!

Io ho xampp installato in locale anche sotto linux ubuntu.

Quindi (per fare una prova in locale)  non metto i permessi di lettura e scrittura del file .htpasswd  per guest e gruppo?

va bene così?

grazie

risposto 9 anni fa
frankphp
X 0 X

Fai tute le prove che ti pare, in locale fai proprio come ti pare, d'altra parte se non provi non comprenderai mai il meccanismo.

Semmai commenta qui ciò che provi e le soluzioni che hai trovato, faranno bene a tutti :)

risposto 9 anni fa
Marco Grazia
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda