Cerca


stampa pdf

La gestione dei permessi FTP su Sistemi UNIX



Anche sui sistemi UNIX, i file sugli spazi di hosting beneficiano di protezione in lettura, scrittura ed esecuzione. E' quindi possibile scegliere se questi file possono essere leggibili e/o modificabili da altri; potete anche impedire che altri utenti lancino i vostri file eseguibili. C'è il principio dei permessi di accesso.

Tale accesso può essere consentito in modi diversi a seconda dell'utente che accede ai file.

Esistono 3 diverse categorie di utenti:

  • i proprietari dei file (owner),
  • i gruppi proprietari dei file (group),
  • tutto il mondo (everyone), ovvero tutti gli altri utenti.



Per ciascuno di questi utenti, è possibile impostare 3 differenti tipologie di permessi:

  • diritti di lettura,
  • diritti di scrittura,
  • diritti di esecuzione.



Per una cartella, il significato di questi permessi è differente:

  • I permessi di lettura permettono di ottenere dall'esterno della directory l'elenco dei file contenuti nella cartella;

  • I permessi di scrittura offrono la possibilità di creare o eliminare i file presenti nella cartella;

  • I permessi di esecuzione concedono invece la possibilità di accedere alle directory.

Esistono due differenti modi per cambiare i permessi associati ad un file o una directory:

1. Attraverso un client FTP: collegatevi in FTP utilizzando il vostro client (FileZilla ad esempio), quindi cliccate col tasto destro sul file o sulla cartella in questione e selezionate Impostazioni del File (vedere sotto);

2. Tramite connessione SSH utilizzando il comando chmod: collegatevi in SSH al vostro server, accedete alla cartella in cui si trova il file e digitate il comando:
chmod 705 nomedelvostrofile.php (vedere sotto);

Esistono due modi per specificare i permessi associati ad un file o una directory:

1. Il più semplice è quello letterale, come indicato di seguito

Gli utenti:
  • a indica all, cioè tutti gli utenti;
  • u indica user, cioè il proprietario;
  • g indica un gruppo di utenti (group);
  • o indica other, ovvero tutti gli altri utenti;




I permessi:
  • - indica assenza di quell'elemento;
  • d identifica una directory;
  • l indica un link simbolico.
  • r indica Reading cioè leggibile;
  • w indica Writing cioè scrivibile;
  • x indica Executing cioè eseguibile.



La struttura di utilizzo è la seguente:

chmod | 1° elemento| 2° elemento| 3° elemento (senza spazi tra gli elementi)

dove:

  • 1° elemento
    Indica i soggetti a cui si applicheranno i chmod che vengono settati.

  • 2° elemento
    Indica il tipo di operazione da fare, cioè se i chmod in questione vanno aggiunti o sottratti. Possibilità: + (i chmod indicati vanno aggiunti ai soggetti indicati); - (i chmod indicati vanno tolti ai soggetti indicati).

  • 3° elemento
    Indica i chmod che dovranno essere aggiunti o tolti, e segue la notazione letterale indicata in precedenza.


Ad esempio: chmod drwxr-xr-x corrisponde a chmod 755


Potete aggiungere più diritti in una sola volta (chmod g+rw ...), a differenti utenti (chmod u+rwx,g+rx,o+x ...). E' possibile anche togliere i permessi (chmod go-w ...), o impostare i permessi in modo assoluto (chmod u=rw,go=r ...).

ATTENZIONE!!:quando viene chiesto al sistema di aggiungere quei chmod al file, quest'ultimo conserverà eventuali permessi già attribuiti.


Ad esempio:
Il file prova.pl ha chmod 755, cioè -rwx-r-xr-x.
Se noi scriviamo:
chmod a+rw prova.pl avremo che ora prova.pl avrà chmod 777
cioè -rwxrwxrwx.



2. L'altro modo per modificare i permessi di un file è quello numerico, utilizzando 3 bytes (valore da 0 a 7) che codificano i permessi per 3 tipi di utenti.

Vediamo come:


  • La cifra 4 rappresenta l'autorizzazione alla lettura;
  • La cifra 2 quella di scrittura;
  • La cifra 1 quella di esecuzione.



Ad esempio chmod 755, non é altro che il tipo di permesso che si imposta su un file (in questo caso un cgi) che serve a renderlo:

  • leggibile-scrivibile-eseguibile al proprietario (prima cifra);

  • leggibile-eseguibile al gruppo (seconda cifra);

  • leggibile-eseguibile agli altri utenti (ultima cifra).


Il chmod 755 si ottiene in questo modo:

Permessi proprietario:
Lettura si = 4
Scrittura si = 2
Esecuzione si = 1
Totale = 7



Permessi gruppo:
Lettura si = 4
Scrittura no = 0
Esecuzione si = 1
Totale = 5



Permessi utenti:
Lettura si = 4
Scrittura no = 0
Esecuzione si = 1
Totale = 5



Affiancando i tre totali si ottiene appunto il 755.

Concretamente, per dare ad un file i permessi di lettura e scrittura al suo proprietario e i soli diritti di lettura ai membri del gruppo proprietario e a tutti gli altri utenti, dobbiamo eseguire il comando chmod 644 nome_file. Per dare ad un file i diritti di lettura, scrittura ed esecuzione al suo proprietario, i diritti di lettura ed esecuzione al gruppo proprietario e agli altri utenti, dobbiamo eseguire il comando chmod 755 nome_file.

ATTENZIONE: I permessi 777 non sono ammessi da OVH.