Installare un server FTP con ProFTPD: differenze tra le versioni

Quote
(Quote)
Riga 112: Riga 112:
# Fare in modo che abbia come utente:gruppo proprietari "ftp:nogroup":<pre># chown ftp:nogroup /home/ftp-anonimo</pre>
# Fare in modo che abbia come utente:gruppo proprietari "ftp:nogroup":<pre># chown ftp:nogroup /home/ftp-anonimo</pre>
# Modificare la riga di "proftpd.conf" in:<pre><Anonymous /home/ftp-anonimo></pre>
# Modificare la riga di "proftpd.conf" in:<pre><Anonymous /home/ftp-anonimo></pre>
== Quote ==
Le quote (''quota'') sono il meccanismo con cui ProFTPD impone dei limiti al numero di byte/file che possono essere inviati/trasferiti/scaricati da/al server FTP. Questo evita che le directory diventino luoghi in cui trovare un po' di tutto e, soprattutto, consumino senza alcun limite lo spazio disponibile sul disco.<br/>
In alternativa, il meccanismo delle quote può essere implementato dall'amministratore direttamente a livello di filesystem.
Per la gestione delle quote, ProFTPD utilizza il comando "ftpquota".
=== Le tabelle ===
ProFTPD gestisce le quote utilizzando due tabelle:
;''ftpquota.limittab'':permette a ProFTPD di conoscere che tipo di limite imporre e a chi (utente, gruppo, classe).
;''ftpquota.tallytab'':permette a ProFTPD di tener traccia dei byte/file trasferiti/inviati/scaricati dal server.
La loro creazione avviene con:
<pre>
# ftpquota --create-table --table-path /etc/proftpd/ftpquota.limittab --type=limit
# ftpquota --create-table --table-path /etc/proftpd/ftpquota.tallytab --type=tally
</pre>
;--type=''tipo'': necessario per creare una tabella di tipo "limit" o "tally"
;--table-path ''/path/tabella'': facoltativo. Se non si utilizza questa opzione, verrà creata la tabella nella directory corrente con il nome di default "ftpquota.limittab" o "ftpquota.tallytab" in base al tipo scelto.
=== Limiti ===
Le quote possono essere impostate sui byte trasferiti/inviati/scaricati dal server e/o sui file trasferiti/inviati/scaricati dal server. È importante sapere che:
* I byte/file trasferiti sono la somma dei byte/file inviati e dei byte/file scaricati
* Il limite predominante è il valore più basso impostato: se il limite di invio byte è 10MB e quello di scaricamento è di 20MB, non sarà possibile il download se si sono già raggiunti i 10MB in upload.
I limiti che è possibile impostare sono:
;File inviati: si utilizza l'opzione "--file-upload".
;File scaricati: si utilizza l'opzione "--file-download".
;File trasferiti: si utilizza l'opzione "--file-xfer".
;Byte inviati: si utilizza l'opzione "--byte-upload". Se non viene specificata l'opzione "--units", il numero indica i byte.
;Byte scaricati: si utilizza l'opzione "--byte-download". Se non viene specificata l'opzione "--units", il numero indica i byte.
;Byte trasferiti: si utilizza l'opzione "--byte-xfer". Se non viene specificata l'opzione "--units", il numero indica i byte.
==== Limiti hard e soft ====
Un limite "hard" o "soft" indica a ProFTPD come comportarsi se l'operazione che si sta svolgendo porta a superare il limite impostato. Influenza solo limiti di tipo byte-*.
;hard limit: l'operazione non andrà a buon fine se porta a superare la quota impostata.
;soft limit: l'operazione sarà consentita anche se porta a superare la quota impostata. Le successive operazioni che portano a superare la quota non saranno, però, consentite.
Un limite di tipo "hard" o "soft" si imposta con l'opzione "--limit-type". Di default si ha un hard limit.
=== Creazione ===
Per impostare una quota si deve aggiungere un record alla tabella "ftpquota.limittab". Nel successivo esempio di imposta una quota di 60 MB in upload per l'utente "nomeutente":
<pre>
# ftpquota --add-record --type limit --limit-type hard --quota-type user --name nomeutente --bytes-upload 60 --units Mb --table-path /etc/proftpd/ftpquota.limittab
</pre>
;--add-record: aggiunge un record alla tabella specificata.
;--type limit: indica che si sta operando sulla tabella "ftpquota.limittab".
;--limit-type hard: il limite sarà "hard".
;--quota-type user: necessario per operare sui limiti per gli utenti.
;--name ''nomeutente'': il nome dell'utente interessato dal limite imposto.
;--bytes-upload 60 --units Mb: il tipo di limite (byte in upload) espresso in Megabyte, in questo caso ci sarà un limite di 60MB.
;--table-path ''/etc/proftpd/ftpquota.limittab'': il percorso e il nome della tabella su cui si sta agendo.
È ovviamente possibile operare anche sui gruppi:
<pre>
# ftpquota --add-record --type limit --limit-type hard --quota-type group --name nomegruppo --bytes-upload 100 --units Gb --table-path /etc/proftpd/ftpquota.limittab
</pre>
=== Visualizzazione ===
In qualunque momento è possibile visualizzare il contenuto delle tabelle con l'opzione "--show-records":
<pre>
# ftpquota --show-records --type limit --units Mb --table-path /etc/proftpd/ftpquota.limittab
</pre>
ottenendo:
<pre>
-------------------------------------------
  Name: nomeutente
  Quota Type: User
  Per Session: False
  Limit Type: Hard
    Uploaded Mb:        60.00
    Downloaded Mb:      unlimited
    Transferred Mb:    unlimited
    Uploaded files:    unlimited
    Downloaded files:  unlimited
    Transferred files:  unlimited
</pre>
Allo stesso modo per la tabella <code>ftpquota.tallytab</code>:
<pre>
# ftpquota --show-records --type tally --units Mb --table-path /etc/proftpd/ftpquota.tallytab
ftpquota: (empty table)
</pre>
che, almeno inizialmente, è vuota.
=== Direttive ===
Per abilitare la gestione delle quote è necessario impostare alcune direttive:
;QuotaEngine:<pre><IfModule mod_quotatab.c>QuotaEngine on</IfModule></pre>indispensabile per attivare l'engine di gestione delle quote.
;QuotaLimitTable file:/etc/proftpd/ftpquota.limittab:direttiva necessaria per indicare la tabella "limit".
;QuotaTallyTable file:/etc/proftpd/ftpquota.tallytab:idem come la precedente ma per la tabella "tally".
;QuotaDisplayUnits Kb|Mb|Gb:facoltativa. Indica la quota in Kilobyte, Megabyte, Gigabyte (anziché in byte, comportamento di default) se il client ne fa richiesta.
.
Per maggiori informazioni, leggere anche le seguenti pagine<sup>[[#Documentazione esterna|[6]]][[#Documentazione esterna|[7]]]</sup>


== Note ==
== Note ==
Riga 173: Riga 267:
[4] [http://www.proftpd.org/docs/howto/FTP.html Comandi FTP supportati da ProFTPD]<br/>
[4] [http://www.proftpd.org/docs/howto/FTP.html Comandi FTP supportati da ProFTPD]<br/>
[5] [http://sourceforge.net/projects/proftpd-admin/ proftpd-admin]<br/>
[5] [http://sourceforge.net/projects/proftpd-admin/ proftpd-admin]<br/>
'''Quote'''<br/>
[6] [http://www.proftpd.org/docs/howto/Quotas.html Quotas HowTo]<br/>
[7] [http://www.proftpd.org/docs/utils/ftpquota.html Documentazione per ftpquota]<br/>


{{Autori
{{Autori
Riga 179: Riga 276:
:[[Utente:S3v|S3v]] 11:17, 27 dic 2014 (CET)
:[[Utente:S3v|S3v]] 11:17, 27 dic 2014 (CET)
|Estesa_da=
|Estesa_da=
:[[Utente:S3v|S3v]] 11:17, 27 dic 2014 (CET) (FTP anonimo)
:[[Utente:S3v|S3v]] (FTP anonimo - Quote)
|Numero_revisori=1
|Numero_revisori=1
}}
}}


[[Categoria:FTP server]]
[[Categoria:FTP server]]
6 999

contributi