bookmark bookmark
Olivs On novembre - 27 - 2005

Requisiti: OS X 10.2 o superiore, un buon editor di testo, privilegi di amministratore, utente root attivo.

Con il grande boom della banda larga in tutte le case, molte persone si divertono ad avere il proprio sito su spazi
web con abilitato Apache e Php. La comodità di poter testare in locale i propri progetti può essere minata da intrusi.
Per evitare visite sgradite nella nostra Web Application, ecco un modo semplice e veloce per creare un filtro di accesso.
Seguite punto per punto senza saltarne nessuno per evitare brutte sorprese.

1. Aprire il terminale in Applicazioni–>Utilities–>Terminal

2. loggatevi come SuperUser, ovvero scrivete:

su

invio
inserite la vostra password di amministratore(Attenzione i caratteri della password non si visualizzano) e premete invio.
3. ora scrivete

htpasswd -c /private/etc/httpd/passwords vostrouser

dove vostrouser indica il nome col quale vi volete loggare.
4. ora apparirà:

New password

e scrivete la password che utilizzerete per avere accesso al vostro sito in locale.
Attenzione a non dimenticarla, usate una password diversa dal login per evitare che tutti quelli che la conoscono accedano, annotatela da qualche parte.
5.

Re-type new-password

e ci rimettete la password
6. Dal Finder ora fate Mela+SHIFT(Maiuscola)+G, e scrivete

/etc/httpd

7. Ora siete nella cartella dei file di configurazione di Apache.
8. Selezionate il file httpd.conf e per sicurezza duplicatelo.
9. Ora aprite httpd.conf con un editor di testo (Subethaedit, Smultron, BBEdit sono validissimi)
10. Cercate Directory /Users/*/Sites

# e appena sotto al tag #

fate qualche invio
e aggiungete una riga commentata con scritto

#PROTEZIONE CARTELLA SITES AGGIUNTA DA MIOUSER

così quando volete trovarla vi basta cercare il nome del vostro user per trovare dove avete fatto le vostre modifiche.
11. Bene ora inserite questo codice:

Authtype Basic       AuthName "Quello che volete: qui compare il testo che viene  fuori nel pop-up che vi chiede username e password"       AuthUserFile /private/etc/httpd/passwords       Require user vostroUser che avete appena abilitato nel terminal

Nel TAG è indicata la cartella servita da Apache che si vuole proteggere, per esempio Users/mioUser/Sites/mioSito.
12. Ora salvate httpd.conf riavviate Apache da System Preferences –>Sharing –> Personal Web Sharing
11. Collegandovi ora alla vostra Url protetta vi comparirà una finestra con il testo che avete messo in AuthName e vi chiederà username e password per l’accesso.
12. Se volete aggiungere degli User che vogliono accedere alle vostre cartelle protette vi basta fare questa semplice procedura
13. loggatevi come SuperUser, ovvero scrivete:

su

inserite la vostra password e premete invio.

14. Quindi:

htpasswd /private/etc/httpd/passwords nuovoUser

invio
15. Date a questo user la password
16. Ora tornate su http.conf e per abilitare lo user appena abilitato andate alla riga Require user aggiunta da voi, e aggiungete il nuovo user, salvate e riavviate Apache e controllate che il nuovo user abbia l’accesso

Articoli correlati:

  1. Virtualhost sul proprio Mac OSX
  2. Creazione di VirtualHost
  3. Ripristino di Apache, php e MySQL da PPC a PPC
  4. Configurare PhpMyAdmin
  5. Leopard: abilitare php5
Categorie: osX, webdev
  • Miky

    Ciao sarebbe possibile avere un esempio di codice perche dopo il passaggiod dal pumto 10 non mi e molto chiaro dove aggiungo le stringe da te spiegate, Authtype Basic “AuthName”
    Ti ringrazio per l’aiuto

    Bye…

    # Control access to UserDir directories. The following is an example
    # for a site where these directories are restricted to read-only.
    #
    #
    # AllowOverride FileInfo AuthConfig Limit
    # Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    #
    # Order allow,deny
    # Allow from all
    #
    #
    # Order deny,allow
    # Deny from all
    #
    #

    Like or Dislike: Thumb up 0 Thumb down 0

  • Miky

    ???????

    Like or Dislike: Thumb up 0 Thumb down 0

  • http://www.mactutorials.it Olivs

    hai ragione si è mangiato un pezzo di codice cerca:

    Directory /Users/*/Sites

    Like or Dislike: Thumb up 0 Thumb down 0

  • Miky

    Ciao Ollvs quella parte lo trovata ma non ho capito come inserire il codice mi faresti te un piccolo esempio?
    qiando insertisco le suddette righe
    Authtype Basic
    AuthName “Quello che volete”

    il server non mi parte piu’
    se saresti gentile da mettermi tutta la parte relativa al
    Directory /Users/*/Sites te ne sarei gratissimo…

    Bye…

    Like or Dislike: Thumb up 0 Thumb down 0

  • http://www.mactutorials.it Olivs

    Puoi postare sul forum che facciamo prima? :)

    Like or Dislike: Thumb up 0 Thumb down 0

  • http://www.mactutorials.it Olivs

    iscriviti e mandami una email cosi vedo subito

    Like or Dislike: Thumb up 0 Thumb down 0

  • skill83

    a me cosi’ funziona… il mio utente si chiama “pure” e la cartella da proteggere è questa “/Users/pure/Sites/test/backoffice/”

    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all

    Authtype Basic
    AuthName “Metti la pass!”
    AuthUserFile /private/etc/httpd/passwords
    Require user skill83
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all

    Like or Dislike: Thumb up 0 Thumb down 0

  • skill83

    mi ha saltato delle righe

    Like or Dislike: Thumb up 0 Thumb down 0

  • skill83

    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all

    Authtype Basic
    AuthName "Metti la pass!"
    AuthUserFile /private/etc/httpd/passwords
    Require user skill83
    Options Indexes MultiViews
    AllowOverride None
    Order allow,deny
    Allow from all

    Like or Dislike: Thumb up 0 Thumb down 0

  • skill83

    mancano le righe delle directory

    Like or Dislike: Thumb up 0 Thumb down 0