Dimensione: 12796
Commento:
|
Dimensione: 9674
Commento:
|
Le cancellazioni sono segnalate in questo modo. | Le aggiunte sono segnalate in questo modo. |
Linea 5: | Linea 5: |
<<Informazioni(forum="http://forum.ubuntu-it.org/viewtopic.php?t=333742";rilasci="12.10 12.04 11.10 10.04")>> | = Introduzione = '''FTP''' (File Transfer Protocol) è uno dei protocolli maggiormente usati per il trasferimento dei file. Solitamente prevede l'autenticazione degli utenti e una serie di comandi semplici per scaricare e caricare file. Questa guida si occupa della configurazione del servizio FTP utilizzando il programma '''vsftpd''' (acronimo di '''Very Secure FTP Daemon'''), uno dei programmi più usati e sicuri per l'implementazione di questo servizio. = Installazione = È necessario [[AmministrazioneSistema/InstallareProgrammi|installare]] il pacchetto ''vsftpd'', reperibile dal [[Repository/Componenti|componente]] '''universe'''. <<Anchor(avvio)>> = Avvio e arresto del servizio = Una volta installato il pacchetto ''vsftpd'', il servizio FTP viene avviato automaticamente. Per fermare il servizio digitare il seguente comando: {{{ sudo /etc/init.d/vsftpd stop }}} Per avviare il servizio, una volta arrestato, digitare il seguente comando: {{{ sudo /etc/init.d/vsftpd start }}} Per riavviare il servizio è utile digitare il seguente comando: {{{ sudo /etc/init.d/vsftpd restart }}} = Prova del servizio = Ora, consideriamo di doverci collegare al computer, con indirizzo IP '''192.168.1.2''', su cui è stato installato il servizio FTP. Per fare ciò, da un terminale, digitare: {{{ ftp 192.168.1.2 }}} Viene visualizzato un messaggio di richiesta di immissione delle credenziali di accesso simile al seguente: {{{ Connected to 192.168.1.2 Name (192.168.1.2): }}} Inserire come nome utente: {{{ anonymous }}} e premere «'''Invio'''». Viene dunque richiesta la password. In questo caso è sufficiente premere «'''Invio'''». Generalmente, per l'utente '''anonymous''' non viene impostata alcuna password. Una volta effettuato l'accesso sarà possibile esplorare le cartelle disponibili sul server, dunque caricare e scaricare i file, limitatamente ai permessi impostati per il proprio utente. Gli utenti anonimi possono avere accesso soltanto alla cartella `/home/ftp` del server, nella quale, a seconda dei parametri di configurazione impostati, potranno soltanto leggere/scaricare, oppure anche scrivere/caricare. = Configurazione = Per configurare un server FTP in cui gli utenti abilitati ad accedere siano gli stessi del sistema, è necessario modificare il file di configurazione del servizio {{{/etc/vsftpd.conf}}} con uno degli [[Ufficio/EditorDiTesto|editor di testo]] messi a disposizione da Ubuntu. Aprire una finestra di terminale e digitare il seguente comando: {{{ sudo gedit /etc/vsftpd.conf }}} Cercare la seguente riga e cancellare il carattere di cancelletto «'''#'''» presente all'inizio della stessa: {{{ #local_enable=YES }}} Ora è possibile tentare di collegarsi al server con il comando descritto in precedenza ed effettuare l'accesso utilizzando uno degli account utente presenti sul sistema locale. Gli utenti del sistema avranno accesso al servizio FTP potendo esplorare tutte le cartelle del sistema. Applicando le impostazioni sopra discusse, gli utenti del sistema avranno accesso, tramite il servizio FTP, a tutte le cartelle del filesystem locale. Per evitare ciò è opportuno limitare l'accesso degli utenti solamente alla propria cartella '''Home'''. A tale scopo è utile decommentare la seguente riga: {{{ #chroot_local_user=YES }}} = Limitare l'accesso = Per rafforzare la sicurezza, è possibile scegliere gli utenti ai quali vietare l'accesso al servizio FTP. Per far ciò è utile modificare il file {{{/etc/ftpusers}}}, il quale contiene la lista degli utenti ai quali non è consentito accedere al servizio. Il seguente è del contenuto di default del file {{{/etc/ftpusers}}}: {{{ # /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5). root daemon bin sys sync games man lp news uucp nobody }}} ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''È consigliato aggiungere gli utenti all'elenco senza cancellare quelli pre-esistenti.''' || Per non consentire l'utilizzo del servizio all'utente '''mario''', è sufficiente aggiungere il nome dell'utente in coda all'elenco, in questo caso '''mario'''. Effettuate le modifiche, è necessario [[#avvio|riavviare il servizio]]. = Elenco dei parametri di vsftpd.conf = Di seguito vengono presentati alcuni dei parametri che è possibile configurare per '''vsftpd''': * {{{ anonymous_enable=YES }}} Abilita/disabilita l'accesso anonimo. * {{{ local_enable=YES }}} Abilita/disabilita l'accesso agli utenti locali. * {{{ write_enable=YES }}} Abilita/disabilita agli utenti l'accesso in scrittura. * {{{ anon_upload_enable=YES }}} Abilita/disabilita la possibilità degli utenti anonimi di caricare file. Valido solo se l'opzione precedente è impostata a vero. * {{{ anon_mkdir_write_enable=YES }}} Abilita/disabilita la possibilità degli utenti anonimi di creare nuove directory. * {{{ xferlog_enable=YES }}} Attiva i log su tutte le operazioni di scaricamento e caricamento file. * {{{ xferlog_file=/var/log/vsftpd.log }}} Specifica il percorso per i [[AmministrazioneSistema/LogDiSistema|file di log]]. * {{{ ftpd_banner= }}} Imposta un messaggio di benvenuto visualizzato all'accesso al server FTP. = Gestione di un server FTP = Ci sono principalmente tre modi per configurare un server ftp: 0. '''[[#ftp1|FTP anonimo]]''' Sarà possibile accedere al server senza aver bisogno di un account registrato; tutti gli utenti saranno liberi di eseguire upload, che verranno ovviamente controllati da alcune regole impostate dall'amministratore di sistema (limite di dimensione, controllo anti-pirateria, etc). 0. '''[[#ftp2|FTP anonimo e controllato da password]]''' Questo metodo darà la possibilità di accedere al server sia ad utenti anonimi che a quelli con un regolare account a cui sarà dato accesso ad alcune cartelle predefinite dall'amministratore, eccetto che per l'utente '''root''' che potrà vedere/modificare/cancellare tutte i file e/o le cartelle. |
Linea 7: | Linea 148: |
= Introduzione = La procedura qui descritta si basa sull'installazione della versione '''alternate''' di Ubuntu, che rispetto alla versione [[Installazione/Grafica|desktop]] presenta un programma di installazione testuale. La procedura è riferita alla versione '''10.04''' di Ubuntu, ma si adatta anche per l'installazione di versioni precedenti o successive. Alcune parti potrebbero risultare leggermente diverse, ma il senso generale dell'installazione è invariato. ||<tablestyle="text-align: justify; width:64%;" style="border:none;" 5%><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Dalla 12.10 la versione standard di Ubuntu sarà installabile solo in modalità Live. La modalità "alternate" sarà comunque disponibile per le derivate (Kubuntu, Xubuntu, ecc..).'''|| <<Anchor(download)>> = Come procurarsi il CD di installazione = Per scaricare il CD di installazione di Ubuntu, consultare [[http://www.ubuntu-it.org/download|Ottenere Ubuntu]]. Una volta scaricato, il file viene salvato sul proprio disco fisso con un'estensione '''.iso''' e deve essere masterizzato su un CD. Per maggiori informazioni su come masterizzare tale file, consultare la pagina [[Hardware/DispositiviPartizioni/MasterizzareIso|MasterizzareIso]]. = Prima dell'installazione = * È utile fare una copia di backup dei propri dati personali o altri file che si ritengono importanti. * Controllare lo spazio disponibile: assicurarsi di avere almeno un minimo di '''5 GB''' di spazio disponibile. * Se è presente anche una copia di Windows sul sistema in cui si andrà a installare Ubuntu, eseguire una deframmentazione dell'intero disco. Alcune utili letture possono aiutare durante il processo di installazione: * [[Repository|Comprendere come è organizzato il software con Ubuntu]] * [[AmministrazioneSistema/Sudo|Come svolgere compiti di amministrazione del sistema con Ubuntu]] <<Anchor(avvio)>> = Avviare l'installazione = Per avviare l'installazione, il PC deve essere impostato per effettuare il boot dal CD. Inserire il CD d'installazione nel lettore CD-ROM e riavviare il computer. Se l'installazione non dovesse partire è necessario impostare il BIOS affinché esegua l'[[Installazione/AvvioDaCd|avvio dal lettore CD-ROM]] (consultare il manuale d'uso). Se il proprio PC non supporta l'avvio da CD, è possibile usare [[http://linux.simple.be/tools/sbm|Smart Boot Manager floppy]] per effettuare il boot. Una volta avviata l'installazione apparirà questa schermata. Spostarsi con i tasti freccia fino a selezionare «'''Italiano'''» e premere «'''Invio'''»: <<Immagine(Installazione/Generale/01-1004.png,,center)>> <<Immagine(Installazione/Generale/02-1004.png,,center)>> Ora, usando i tasti freccia, è possibile selezionare le varie opzioni: * «'''Installa Ubuntu'''» avvia il processo di installazione * «'''Controlla difetti sul disco'''» esegue un controllo di integrità del CD * «'''Test della memoria'''» esegue un test sulla memoria RAM del proprio computer * «'''Boot dal primo disco rigido'''» avvia il sistema trovato nel primo disco rigido * «'''Ripristina un sistema danneggiato'''» serve per eseguire un controllo su una precedente installazione per riparare ciò che si è danneggiato Premendo il tasto «'''F4'''» è possibile selezionare le seguenti opzioni: * «'''Installazione OEM (per assemblatori)'''» avvia il processo di installazione non creando alcun utente sul sistema; sarà in questo modo possibile offrire tale possibilità all'utilizzatore finale * «'''Installa un sistema a riga di comando'''» avvia il processo di installazione creando un [[Installazione/CdMinimale|sistema minimale]] privo di interfaccia grafica * «'''Installa un server LTSP'''» serve per i "costruttori" di computer che hanno bisogno di installare tante copie di Ubuntu su computer simili * «'''Installa un server'''» avvia il processo di installazione predisponendo il sistema per la gestione dei [[Hardware/UbuntuLtsp|Thin Client]] Premendo «'''F5'''» è possibile utilizzare alcuni strumenti per rendere l'installazione accessibile anche a persone diversamente abili. Per una panoramica delle opzioni disponibili con il tasto «'''F6'''», utili per sistemi con particolari configurazioni hardware, fare riferimento alla [[Installazione/ParametriAvvio|relativa guida]]. Selezionare «'''Installa Ubuntu'''» e premere «'''Invio'''». == Configurazione della tastiera == Sarà necessario configurare la tastiera. Nella seguente schermata, selezionare '''Italia''' e premere '''Invio''': <<Immagine(Installazione/Generale/03-1004.png,,center)>> Successivamente selezionare '''No''': <<Immagine(Installazione/Generale/04-1004.png,,center)>> Dalla lista delle disposizioni di tastiera disponibili, scegliere '''Italy''': <<Immagine(Installazione/Generale/05-1004.png,,center)>> Infine '''Italia''': <<Immagine(Installazione/Generale/06-1004.png,,center)>> <<Anchor(confrete)>> == Configurazione automatica della rete == Inserire il nome che si vuole dare al computer per identificarlo nella propria rete locale. In questo caso è stato usato '''ubuntu'''. <<Immagine(Installazione/Generale/07-1004.png,,center)>> == Configurazione dell'orologio == Confermare '''Europe/Rome''' per impostare correttamente il fuso orario di riferimento: <<Immagine(Installazione/Generale/08-1004.png,,center)>> == Partizionamento del disco fisso == ||<tablestyle="text-align: justify; width:100%;" style="border:none;" 5%><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''Se sul sistema è già presente Windows Vista, il programma di partizionamento di Ubuntu potrebbe comprometterne l'integrità. Prima di procedere, è consigliato consultare la [[Hardware/DispositiviPartizioni/RidimensionarePartizioneWindows|guida al partizionamento di Windows Vista]].'' || In questa fase dell'installazione vengono controllati i propri dischi fissi e le partizioni contenute. È possibile quindi: <<Immagine(Installazione/Generale/09-1004.png,,center)>> * «'''Guidato - usa l'intero disco'''»: crea automaticamente le partizioni utilizzando l'intero disco. * «'''Guidato - usa l'intero disco e imposta LVM'''»: crea automaticamente le partizioni utilizzando l'intero e imposta [[http://tldp.org/HOWTO/LVM-HOWTO/|LVM]] (Logical Volume Management) su di esso. * «'''Guidato - usa l'intero disco e imposta LVM cifrato'''»: crea automaticamente le partizioni utilizzando l'intero disco utilizzando e imposta [[http://tldp.org/HOWTO/LVM-HOWTO/|LVM]] cifrato su di esso. * «'''Manuale'''»: consente di modificare manualmente le partizioni, creando delle partizioni personalizzate (per utenti esperti). In questa guida verrà utilizzata la seconda opzione: «'''Guidato - usa l'intero disco e imposta LVM'''». ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5% ^><<Immagine(Icone/Piccole/note.png,,center)>> ||<style="padding:0.5em; border:none;">''Nel caso si renda necessario modificare manualmente la tabella delle partizioni, consigliamo la lettura della [[Hardware/DispositiviPartizioni/PartizionamentoManuale|seguente guida]].'' || Selezionare il disco sul quale si desidera effettuare l'installazione di '''Ubuntu''': <<Immagine(Installazione/Generale/10-1004.png,,center)>> Confermare premendo '''Invio''' su '''Sì''' (leggere le avvertenze segnalate): <<Immagine(Installazione/Generale/11-1004.png,,center)>> Inserire la dimensione massima che è possibile utilizzare: <<Immagine(Installazione/Generale/12-1004.png,,center)>> Sono permesse le seguenti diciture: * '''XX GB''': sostituire a XX un numero per inserire un'esatta grandezza in GB (è possibile utilizzare anche MB) del disco; * '''XX%''': sostituire XX con un numero compreso fra 0 e 100 per utilizzare una sola percentuale di disco; * '''max''': per utilizzare l'intero contenuto del disco; Confermare l'operazione premendo '''Invio''' su '''Sì''': <<Immagine(Installazione/Generale/13-1004.png,,center)>> L'installazione di base avrà inizio, attendere la fine delle operazioni. == Impostazione dell'utente == <<Immagine(Installazione/Generale/14-1004.png,,center)>> È necessario inserire il proprio nome e cognome. Inserire prima il nome e poi il cognome. <<Immagine(Installazione/Generale/15-1004.png,,center)>> Questo è il nome utente da utilizzare durante la fase di accesso (login) nel sistema una volta completata l'installazione. Se il nome fornito dall'installazione può andare bene, selezionare «'''Continua'''» e premere «'''Invio'''», altrimenti è possibile modificare il nome a proprio piacimento. Il nome deve iniziare con una lettera minuscola e '''non''' può contenere segni di punteggiatura. ||<tablestyle="text-align: justify; width:100%; " style="border:none;" 5% ^><<Immagine(Icone/Piccole/warning.png,,center)>> ||<style="padding:0.5em; border:none;">'''Linux fa distinzione tra maiuscole e minuscole, quindi i nomi «massimo» e «Massimo» indicano due persone differenti.''' || Prendere nota del nome inserito, in quanto, una volta completata l'installazione, sarà l'unico utente ad avere accesso al sistema. <<Immagine(Installazione/Generale/16-1004.png,,center)>> Ora è necessario inserire una password da associare all'utente creato in precedenza. È utile scegliere una password abbastanza lunga che contenga non solo caratteri, ma anche numeri o segni di punteggiatura.<<BR>> Prendere nota della password inserita o non sarà possibile accedere al sistema.<<BR>> Come ulteriore sicurezza verrà chiesto di inserire nuovamente la password. È possibile configurare il sistema affinché utilizzi la propria directory personale in modo cifrato: <<Immagine(Installazione/Generale/17-1004.png,,center)>> Si consiglia l'utilizzo di questa funzione soprattutto su computer portatili. == Configurare il gestore di pacchetti == <<Immagine(Installazione/Generale/18-1004.png,,center)>> Nel caso fosse necessario, verrà chiesto di inserire l'indirizzo di un proxy per accedere alla rete esterna. Solitamente questo avviene se durante la fase di configurazione della rete si sono verificati degli errori. È consigliato lasciarlo in bianco. Nella prossima schermata selezionare '''Sì''' per poter scaricare i pacchetti per la corretta localizzazione e traduzione di '''Ubuntu''': <<Immagine(Installazione/Generale/19-1004.png,,center)>> Partirà la fase di installazione, attendere che il processo termini. <<Immagine(Installazione/Generale/20-1004.png,,center)>> Confermare l'installazione del boot loader [[AmministrazioneSistema/Grub|GRUB]] premendo '''Invio''' su '''Sì'''. == Sincronizzazione dell'ora locale == Confermare la sincronizzazione dell'ora di sistema con l'ora locale premendo '''Invio''' su '''Sì''': <<Immagine(Installazione/Generale/21-1004.png,,center)>> == Installazione completata == <<Immagine(Installazione/Generale/22-1004.png,,center)>> Al termine dell'installazione di tutto il software, verrà presentata questa finestra. Selezionare «'''Continuare'''» e premere «'''Invio'''». Se il computer non dovesse riavviarsi, riavviarlo manualmente e togliere il CD dal lettore CD-ROM per permettere l'avvio del sistema operativo. = Il sistema è installato... e adesso? = Dopo il riavvio, e nel caso siano presenti almeno due sistemi operativi, verrà visualizzato un menù grafico (del ''boot loader'' [[AmministrazioneSistema/Grub|GRUB]]) con i possibili sistemi operativi da avviare. In caso contrario si avvierà direttamente '''Ubuntu'''. Terminato l'avvio di '''Ubuntu''', verranno richiesti il proprio nome utente e la password (le stesse inserite durante la procedura di installazione) per accedere al sistema e caricare '''GNOME''' (l'ambiente grafico predefinito in Ubuntu). Il sistema potrebbe non essere completamente in italiano, consultare la pagina [[AmministrazioneSistema/UbuntuItaliano|UbuntuItaliano]] per maggiori informazioni su come rendere '''Ubuntu''' completamente in italiano. Un buon punto di partenza, dopo aver svolto questa operazione, per entrare in contatto con il mondo Ubuntu e Linux, è la lettura della documentazione presente nel sistema operativo. Tale documentazione è raggiungibile dal menù '''''Sistema → Aiuto → Documentazione di sistema''''' oppure all'indirizzo [[http://help.ubuntu-it.org/]]. '''Buon divertimento!''' |
0. '''[[#ftp3|FTP con utenti virtuali e il supporto di un database MySQL]]''' Questo metodo abilita l'accesso al server solo per il gruppo di utenti che non ha un'autenticazione virtuale via shell nel sistema. Sarà richiesto l'uso di un database [[Server/MySql|MySql]] che conterrà tutte le informazioni riguardanti gli utenti. <<Anchor(ftp1)>> == FTP anonimo == Prima di creare un server con accesso anonimo, si dovrà aggiungere al sistema l'utente '''ftp''', con una sua directory home. Per farlo seguite questi comandi: {{{ useradd -d /home/ftp/ftp -s /bin/false ftp mkdir -p /home/ftp/upload }}} Ci sono inoltre numerose opzioni con le quali avviare il server, in modo da configurarne ogni singolo aspetto. Alcune di queste opzioni sono le seguenti: * '''-e''' Accesso solo per gli utenti anonimi. * '''-B''' Avvia il server in modalità background. * '''-i''' Gli utenti anonimi non potranno caricare file. * '''-M''' Permette agli utenti anonimi di creare cartelle. * '''-s''' I file degli utenti ''ftp'' non possono essere scaricati. <<Anchor(ftp2)>> == FTP anonimo e controllato da password == Per consentire l'accesso al server a tutti gli utenti (registrati e anonimi), è possibile seguire questi semplici comandi: * '''-B ,-i ,M, -r, -s''' Stesse variabili descritte in precedenza. * '''-u <uid>''' Autorizza utenti con uno specifico ID(uid) ad accedere al server. * '''-V <Ip address>''' Solo specifici IP potranno accedere al server in modalità non-anonima. <<Anchor(ftp3)>> == FTP con utenti virtuali e il supporto di un database MySQL == Per creare un server che affidi a '''My``SQL''' la gestione degli utenti, è possibile utilizzare procedere come segue: * Aprire una finestra di terminale e digitare il seguente comando: {{{ sudo apt-get install pure-ftpd }}} * Scaricare '''User Manager for PureFTPd''' da [[http://machiel.generaal.net/index.php?subject=user_manager_pureftpd|questo]] indirizzo. * Decomprimere il pacchetto e caricare il contenuto nella directory principale del server web, dunque aprire, con il proprio browser, [[http://localhost/ftp/install.php|questo]] indirizzo. * Seguire le indicazioni a schermo. * Copiare {{{pureftpd-mysql.conf}}} nella cartella di '''User Manager for PureFTPd'''. * Salvare la configurazione e chiudere. Per effettuare l'accesso tramite l'interfaccia web è sufficiente aprire [[http://localhost/ftp|questo]] indirizzo con il proprio browser. === Opzioni varie === * '''-c <num>''' Numero di client massimo abilitato ad effettuare l'accesso al server. Esempio: {{{ pure-ftpd -c 3 }}} * '''-C <num>''' Numero massimo di connessioni per IP. '''Esempio:''' {{{ pure-ftpd -C 3 }}} * '''-T <bandwitdh>''' Massima banda disponibile per ogni connessione (in kb/s). '''Esempio:''' {{{ pure-ftpd -T 150 }}} * '''-n <MBytes>''' Numero massimo di Mb disponibili per ogni utente. '''Esempio:''' {{{ pure-ftpd -n 200 }}} * '''-m <Cpu Loading>''' Blocca gli upload da parte di utenti anonimi nel caso che il caricamento della CPU superi il livello definito in termini di percentuale. Esempio: {{{ pure-ftpd -m 50 }}} = Ulteriori risorse = * [[http://vsftpd.beasts.org/|Sito ufficiale di vsftpd]] * [[http://vsftpd.beasts.org/vsftpd_conf.html|Guida alla configurazione di vsftpd]] |
Linea 203: | Linea 221: |
CategoryInstallazioneSistema | CategoryServer |
Introduzione
FTP (File Transfer Protocol) è uno dei protocolli maggiormente usati per il trasferimento dei file. Solitamente prevede l'autenticazione degli utenti e una serie di comandi semplici per scaricare e caricare file.
Questa guida si occupa della configurazione del servizio FTP utilizzando il programma vsftpd (acronimo di Very Secure FTP Daemon), uno dei programmi più usati e sicuri per l'implementazione di questo servizio.
Installazione
È necessario installare il pacchetto vsftpd, reperibile dal componente universe.
Avvio e arresto del servizio
Una volta installato il pacchetto vsftpd, il servizio FTP viene avviato automaticamente.
Per fermare il servizio digitare il seguente comando:
sudo /etc/init.d/vsftpd stop
Per avviare il servizio, una volta arrestato, digitare il seguente comando:
sudo /etc/init.d/vsftpd start
Per riavviare il servizio è utile digitare il seguente comando:
sudo /etc/init.d/vsftpd restart
Prova del servizio
Ora, consideriamo di doverci collegare al computer, con indirizzo IP 192.168.1.2, su cui è stato installato il servizio FTP. Per fare ciò, da un terminale, digitare:
ftp 192.168.1.2
Viene visualizzato un messaggio di richiesta di immissione delle credenziali di accesso simile al seguente:
Connected to 192.168.1.2 Name (192.168.1.2):
Inserire come nome utente:
anonymous
e premere «Invio».
Viene dunque richiesta la password. In questo caso è sufficiente premere «Invio». Generalmente, per l'utente anonymous non viene impostata alcuna password.
Una volta effettuato l'accesso sarà possibile esplorare le cartelle disponibili sul server, dunque caricare e scaricare i file, limitatamente ai permessi impostati per il proprio utente. Gli utenti anonimi possono avere accesso soltanto alla cartella /home/ftp del server, nella quale, a seconda dei parametri di configurazione impostati, potranno soltanto leggere/scaricare, oppure anche scrivere/caricare.
Configurazione
Per configurare un server FTP in cui gli utenti abilitati ad accedere siano gli stessi del sistema, è necessario modificare il file di configurazione del servizio /etc/vsftpd.conf con uno degli editor di testo messi a disposizione da Ubuntu.
Aprire una finestra di terminale e digitare il seguente comando:
sudo gedit /etc/vsftpd.conf
Cercare la seguente riga e cancellare il carattere di cancelletto «#» presente all'inizio della stessa:
#local_enable=YES
Ora è possibile tentare di collegarsi al server con il comando descritto in precedenza ed effettuare l'accesso utilizzando uno degli account utente presenti sul sistema locale. Gli utenti del sistema avranno accesso al servizio FTP potendo esplorare tutte le cartelle del sistema.
Applicando le impostazioni sopra discusse, gli utenti del sistema avranno accesso, tramite il servizio FTP, a tutte le cartelle del filesystem locale. Per evitare ciò è opportuno limitare l'accesso degli utenti solamente alla propria cartella Home.
A tale scopo è utile decommentare la seguente riga:
#chroot_local_user=YES
Limitare l'accesso
Per rafforzare la sicurezza, è possibile scegliere gli utenti ai quali vietare l'accesso al servizio FTP.
Per far ciò è utile modificare il file /etc/ftpusers, il quale contiene la lista degli utenti ai quali non è consentito accedere al servizio. Il seguente è del contenuto di default del file /etc/ftpusers:
# /etc/ftpusers: list of users disallowed FTP access. See ftpusers(5). root daemon bin sys sync games man lp mail news uucp nobody
Per non consentire l'utilizzo del servizio all'utente mario, è sufficiente aggiungere il nome dell'utente in coda all'elenco, in questo caso mario. Effettuate le modifiche, è necessario riavviare il servizio.
Elenco dei parametri di vsftpd.conf
Di seguito vengono presentati alcuni dei parametri che è possibile configurare per vsftpd:
anonymous_enable=YES
Abilita/disabilita l'accesso anonimo.local_enable=YES
Abilita/disabilita l'accesso agli utenti locali.write_enable=YES
Abilita/disabilita agli utenti l'accesso in scrittura.anon_upload_enable=YES
Abilita/disabilita la possibilità degli utenti anonimi di caricare file. Valido solo se l'opzione precedente è impostata a vero.anon_mkdir_write_enable=YES
Abilita/disabilita la possibilità degli utenti anonimi di creare nuove directory.xferlog_enable=YES
Attiva i log su tutte le operazioni di scaricamento e caricamento file.xferlog_file=/var/log/vsftpd.log
Specifica il percorso per i file di log.
ftpd_banner=
Imposta un messaggio di benvenuto visualizzato all'accesso al server FTP.
Gestione di un server FTP
Ci sono principalmente tre modi per configurare un server ftp:
FTP anonimo Sarà possibile accedere al server senza aver bisogno di un account registrato; tutti gli utenti saranno liberi di eseguire upload, che verranno ovviamente controllati da alcune regole impostate dall'amministratore di sistema (limite di dimensione, controllo anti-pirateria, etc).
FTP anonimo e controllato da password
Questo metodo darà la possibilità di accedere al server sia ad utenti anonimi che a quelli con un regolare account a cui sarà dato accesso ad alcune cartelle predefinite dall'amministratore, eccetto che per l'utente root che potrà vedere/modificare/cancellare tutte i file e/o le cartelle.
FTP con utenti virtuali e il supporto di un database MySQL
Questo metodo abilita l'accesso al server solo per il gruppo di utenti che non ha un'autenticazione virtuale via shell nel sistema. Sarà richiesto l'uso di un database MySql che conterrà tutte le informazioni riguardanti gli utenti.
FTP anonimo
Prima di creare un server con accesso anonimo, si dovrà aggiungere al sistema l'utente ftp, con una sua directory home. Per farlo seguite questi comandi:
useradd -d /home/ftp/ftp -s /bin/false ftp mkdir -p /home/ftp/upload
Ci sono inoltre numerose opzioni con le quali avviare il server, in modo da configurarne ogni singolo aspetto. Alcune di queste opzioni sono le seguenti:
-e Accesso solo per gli utenti anonimi.
-B Avvia il server in modalità background.
-i Gli utenti anonimi non potranno caricare file.
-M Permette agli utenti anonimi di creare cartelle.
-s I file degli utenti ftp non possono essere scaricati.
FTP anonimo e controllato da password
Per consentire l'accesso al server a tutti gli utenti (registrati e anonimi), è possibile seguire questi semplici comandi:
-B ,-i ,M, -r, -s Stesse variabili descritte in precedenza.
-u <uid> Autorizza utenti con uno specifico ID(uid) ad accedere al server.
-V <Ip address> Solo specifici IP potranno accedere al server in modalità non-anonima.
FTP con utenti virtuali e il supporto di un database MySQL
Per creare un server che affidi a MySQL la gestione degli utenti, è possibile utilizzare procedere come segue:
Aprire una finestra di terminale e digitare il seguente comando:
sudo apt-get install pure-ftpd
Scaricare User Manager for PureFTPd da questo indirizzo.
Decomprimere il pacchetto e caricare il contenuto nella directory principale del server web, dunque aprire, con il proprio browser, questo indirizzo.
- Seguire le indicazioni a schermo.
Copiare pureftpd-mysql.conf nella cartella di User Manager for PureFTPd.
Salvare la configurazione e chiudere. Per effettuare l'accesso tramite l'interfaccia web è sufficiente aprire questo indirizzo con il proprio browser.
Opzioni varie
-c <num> Numero di client massimo abilitato ad effettuare l'accesso al server. Esempio:
pure-ftpd -c 3
-C <num> Numero massimo di connessioni per IP. Esempio:
pure-ftpd -C 3
-T <bandwitdh> Massima banda disponibile per ogni connessione (in kb/s). Esempio:
pure-ftpd -T 150
-n <MBytes> Numero massimo di Mb disponibili per ogni utente. Esempio:
pure-ftpd -n 200
-m <Cpu Loading> Blocca gli upload da parte di utenti anonimi nel caso che il caricamento della CPU superi il livello definito in termini di percentuale. Esempio:
pure-ftpd -m 50