4 069
contributi
S3v (discussione | contributi) mNessun oggetto della modifica |
|||
(17 versioni intermedie di 4 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Lenny|Squeeze|Wheezy}} | {{Versioni compatibili|Lenny|Squeeze|Wheezy|Jessie|Stretch}} | ||
== Introduzione == | == Introduzione == | ||
Tra i vari server FTP disponibili in Debian, VSFTPD è a mio parere quello più snello, sicuro e prestazionale; inoltre, come ulteriore garanzia, è il server FTP scelto da Red Hat e consigliato da IBM. | Tra i vari server FTP disponibili in Debian, VSFTPD è a mio parere quello più snello, sicuro e prestazionale; inoltre, come ulteriore garanzia, è il server FTP scelto da Red Hat e consigliato da IBM. | ||
Riga 11: | Riga 11: | ||
== Prerequisiti == | == Prerequisiti == | ||
Dopo aver installato Apache ([[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5]]) e configurato i Virtual Host ([[Apache e Virtual Hosts: configurare Apache2 per ospitare più siti web]]) abbiamo adesso bisogno di permettere ai proprietari dei domini ospitati sui Virtual Host di accedere al loro spazio web via FTP senza causare danni agli altri Virtual Host e senza avere la possibilità di gironzolare per il nostro server.<br/> | Dopo aver installato Apache ([[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5]] oppure [[Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5 - Stretch]]) e configurato i Virtual Host ([[Apache e Virtual Hosts: configurare Apache2 per ospitare più siti web]]) abbiamo adesso bisogno di permettere ai proprietari dei domini ospitati sui Virtual Host di accedere al loro spazio web via FTP senza causare danni agli altri Virtual Host e senza avere la possibilità di gironzolare per il nostro server.<br/> | ||
Supponiamo quindi di avere una situazione in cui vogliamo creare due utenti virtuali, senza accesso alla console, che possano ad esempio accedere via FTP solo alle directory del loro sito web. | Supponiamo quindi di avere una situazione in cui vogliamo creare due utenti virtuali, senza accesso alla console, che possano ad esempio accedere via FTP solo alle directory del loro sito web. | ||
<br/> | <br/> | ||
Riga 75: | Riga 75: | ||
# Disabilito FTP anonimo | # Disabilito FTP anonimo | ||
anonymous_enable=NO | anonymous_enable=NO | ||
anon_upload_enable=NO | #anon_upload_enable=NO | ||
anon_mkdir_write_enable=NO | #anon_mkdir_write_enable=NO | ||
anon_other_write_enable=NO | #anon_other_write_enable=NO | ||
# | # Imposto la visualizzazione di messaggi | ||
dirmessage_enable= | dirmessage_enable=YES | ||
#force_dot_files=NO | #force_dot_files=NO | ||
Riga 97: | Riga 96: | ||
connect_from_port_20=YES | connect_from_port_20=YES | ||
# Abilito le porte passive | |||
pasv_enable=YES | |||
pasv_min_port=60000 | |||
pasv_max_port=65000 | |||
pasv_addr_resolve=YES | |||
# Abilito utenti locali e/o virtuali | |||
local_enable=YES | local_enable=YES | ||
local_umask=022 | local_umask=022 | ||
max_login_fails=3 | max_login_fails=3 | ||
max_per_ip=4 | max_per_ip=4 | ||
# Senza il server sarebbe read-only | |||
write_enable=YES | |||
# Definisco il sistema di autenticazione | # Definisco il sistema di autenticazione | ||
Riga 111: | Riga 118: | ||
# Imposto il banner di benvenuto | # Imposto il banner di benvenuto | ||
ftpd_banner=EasyLAB Doc FTP Server | ftpd_banner=EasyLAB Doc FTP Server | ||
#force_dot_files=yes | |||
# I file caricati hanno proprietario www-data | # I file caricati hanno proprietario www-data | ||
Riga 123: | Riga 130: | ||
chroot_local_user=YES | chroot_local_user=YES | ||
secure_chroot_dir=/var/run/vsftpd | secure_chroot_dir=/var/run/vsftpd | ||
user_sub_token=$USER | |||
local_root=/home/vsftpd/$USER | |||
# Mappo gli utenti verso un utente locale | # Mappo gli utenti verso un utente locale | ||
virtual_use_local_privs=YES | virtual_use_local_privs=YES | ||
# Attivo gli utenti virtuali | |||
# Attivo gli | |||
guest_enable=YES | guest_enable=YES | ||
# Ogni utente viene mappato come vsftpd | # Ogni utente viene mappato come vsftpd | ||
guest_username=vsftpd | guest_username=vsftpd | ||
nopriv_user=vsftpd | |||
Riga 163: | Riga 168: | ||
local_root=/var/www/sitoweb | local_root=/var/www/sitoweb | ||
</pre> | </pre> | ||
Impostiamo i permessi corretti: | |||
<pre> | |||
# chown -R vsftpd:www-data /var/www/sitoweb | |||
</pre> | |||
{{Warningbox|Ricordarsi che da Debian Stretch 9 la directory root di Apache è diventata <tt>/var/www/html</tt>. Occorre tenerne conto quando si impostano i path degli utenti FTP}} | |||
== Connessione al database MySQL == | == Connessione al database MySQL == | ||
Riga 258: | Riga 268: | ||
# Permetto SSL v2 | # Permetto SSL v2 | ||
ssl_sslv2= | ssl_sslv2=YES | ||
# Permetto SSL v3 | # Permetto SSL v3 | ||
ssl_sslv3= | ssl_sslv3=YES | ||
# Disabilito SSL session reuse (da usare con WinSCP) | # Disabilito SSL session reuse (da usare con WinSCP) | ||
Riga 272: | Riga 282: | ||
rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem | rsa_cert_file=/etc/vsftpd/ssl/vsftpd.pem | ||
</pre> | </pre> | ||
Con un riavvio del server: | |||
<pre> | |||
# /etc/init.d/vsftpd restart | |||
</pre> | |||
rendiamo attive le modifiche. | |||
<br/> | |||
Da adesso sarà possibile configurare il nostro client FTP per utilizzare sessioni crittate.<br> | |||
Tramite uno script perl<sup>[[#Collegamenti esterni|[1]]]</sup> è possibile gestire facilmente le utenze. | |||
Il software mantiene allineato il database con i relativi file di configurazione necessario per ogni utente. | |||
== Collegamenti esterni == | |||
[1] [https://github.com/bogomips/syncFtp.pl script perl] <br/> | |||
== Bibliografia == | == Bibliografia == |