Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Scrivere su un file htaccess. E' possibile?

    Buon pomeriggio a tutti.
    Vorrei sapere se è possibile scrivere su un file .htaccess e quali problemi di sicurezza potrebbe fare. Ciò che vorrei realizzare è questo:

    1) Negare l'accesso agli indirizzi IP non autorizzati (e questo sembra facile...)
    2) Consentire l'accesso agli indirizzi IP che, pur non essendo autorizzati, sono utilizzati da persone che si sono autenticate sul sito, in modo tale da dare la possibilità di accedere anche a chi ha un IP dinamico.

    Per fare tutto questo ho pensato di aprire, nella pagina di convalida dell'autenticazione al sito, uno script php che apra il file .htaccess, aggiunga una riga del tipo "allow from " + l'indirizzo dell'utente che si è autenticato, e richiuda il file.

    Secondo voi, ammesso che sia possibile, una procedura del genere che falle di sicurezza potrebbe avere?

    Grazie a tutti coloro che vorranno rispondere e spero di non essermi troppo ingarbugliato

  2. #2
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    esiste la direttiva AccessFileName
    http://httpd.apache.org/docs/current...accessfilename
    non ho mai usato htaccess nel modo che ipotizzi, di solito preferisco evitare di utilizzare htaccess se posso

    quanto alle falle, l'ip non è una variabile attendibile per controllare un accesso, imho

  3. #3
    Ti ringrazio per la risposta. Sapresti come usarla, la direttiva FileAccessName?

    In merito all'indirizzo ip, essendo prelevato di volta in volta quando l'utente si autentica, non credi che sia abbastanza sicuro? Se ritieni di no, ti prego di spiegarmene i motivi e se hai un suggerimento, sarà ben accetto.

    Intanto, grazie per l'aiuto.

  4. #4
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    ragionandoci a mente riposata , non puoi usare una pagina dinamica che fa da file htaccess, l'interprete non verrebbe nemmeno invocato.
    Se però rendi l'.htaccess scrivibile, io il nome glielo cambierei

    Quanto all'ip, è un dato che ti viene inviato dal client di cui dai per "scontata la correttezza" (ip spoofing) e per il quale potresti avere dei doppioni pur essendo in presenza di utenti con le giuste credenziali, fastweb o reti lan con tanti utenti.
    Se controlli l'ip ogni volta che controlli la validità della sessione, l'ip ne diventa una proprietà ed è inutile appesantire Apache ulteriormente

    Secondo me

  5. #5
    Penso proprio che tu abbia ragione su tutti i fronti, il ché mi riporta ad una soluziona a cui avevo pensato e per la quale avevo postato una domanda sul forum alla quale nessuno ha risposto.

    Secondo te, con htaccess è possibile mediante le direttive "deny,allow" vietare l'ingresso alla cartella a chi non proviene da una pagina interna al sito?

    Vorrei fare in modo da consentire l'accesso alla cartella "https://nomesito/cartella_incriminata" solo a chi proviene da "https://miosito/" con una direttiva del tipo:

    deny from all
    allow from .... {HTTP_HOST} ... o qualcosa del genere.

    Tu sapresti aiutarmi in questo senso?

  6. #6
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Si, quello che devi fare è controllare l'http_referer, la tecnica è molto simile a quella usata per prevenire l'hotlink, se ne è parlato qui sul forum
    Il fatto è che anche questo header è inviato dal client ......

  7. #7
    Allora cosa mi consigli?

  8. #8
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    Ma vuoi rendere sicuro il sistema di login e di controllo? Scritto in? PHP?
    L'argomento è piuttosto vasto ed un pelino ot per il forum di apache.
    I controlli su Ip e HTTP_REFERRER li puoi fare e intanto scoraggi il buontempone di turno.
    Il livello di sicurezza non ti è sufficiente per i dati che devi proteggere? Forse non è nemmeno sufficiente lavorare in http, meglio passare in https?

    questo thread è interessante, per la soluzione e per la discussione che ne è scaturita:
    http://forum.html.it/forum/showthrea...hreadid=897953
    articoli da php.html.it
    http://php.html.it/articoli/leggi/87...native-in-php/
    http://php.html.it/articoli/leggi/22...in-ajax-e-php/
    http://php.html.it/articoli/leggi/90...tenti-con-php/

    magari però ti basta anche una semplice autenticazione http:
    http://httpd.apache.org/docs/2.2/howto/auth.html
    con una gestione un po' più complessa degli utenti:
    http://httpd.apache.org/docs/2.2/mod/mod_authn_dbm.html
    http://httpd.apache.org/docs/2.2/mod/mod_authn_dbd.html

    Rendere scrivibile un file htaccess per poterci scrivere da PHP non vale la candela della sicurezza che il controllo sull'ip ti da.
    qui alcune addons per firefox che riguardano gli headers
    https://addons.mozilla.org/it/firefo...http%20headers

  9. #9
    Sei stato preziosissimo e ti ringrazio. Il sito è già su https ed il sistema di autenticazione tramite PHP è a posto. Tuttavia, se si conosce il nome di un determinato documento e il suo percorso, questo è raggiungibile, ed è questo che vorrei evitare.

    Esempio. Digitando: https://ipdelsito/clienti/vendite/gennaio.pdf, si apre il documento anche se non si è autenticati. Usando le direttive deny,allow, impedisco l'accesso anche a chi si è autenticato, a meno che non autorizzi determinati indirizzi IP ma poi ho il problema di non poter fare accedere chi ha indirizzi IP dinamici...

    Ovviamente userò HTTP_REFERRER ma già mi dici che non è troppo sicuro... e di nuovo...

    Potrei usare il modulo di autenticazione ma così facendo costringo l'utente ad una nuova autenticazione quando accede ai documenti e...

    Se però esistesse un modo per far verificare ad htaccess e mod_authn_dbd che l'utente è già loggato, avrei risolto il problema. Potrei inserire un campo sul db delle password (o, meglio, degli utenti) e farglielo verificare, ma non ho idea di come impostare la sintassi su htaccess!

    Ti ringrazio di nuovo per la disponibilità.

  10. #10
    Utente di HTML.it L'avatar di Enoa
    Registrato dal
    Jul 2005
    Messaggi
    573
    oh ecco ora è chiaro quello che ti serve

    Proteggi la cartella che contiene i file da accessi esterni con Deny from all, il download lo gestisci tramite PHP che sarà comunque autorizzato ad accedere:
    - controlli che l'utente sia loggato e che magari abbia le permission di aprire quel file (...);
    - apri il file con php
    - invii gli header corretti per il download del file.
    - invii il file

    Example #1 Download dialog http://php.net/manual/en/function.header.php

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.