Server FTP di rete con ProFTPD e utenti virtuali: differenze tra le versioni

nessun oggetto della modifica
(Utenti ad accesso limitato)
Nessun oggetto della modifica
Riga 2: Riga 2:
== Introduzione ==
== Introduzione ==
In questa guida verrà spiegata la l'installazione e la configurazione di un server FTP all'interno della propria LAN utilizzando ProFTPD.<br/>
In questa guida verrà spiegata la l'installazione e la configurazione di un server FTP all'interno della propria LAN utilizzando ProFTPD.<br/>
L'installazione di ProFTPD porta, di default, ad una autenticazione degli accessi basata sui file "/etc/passwd" e "/etc/group" presenti sul server. Questo significa che, per avere accesso al server FTP. l'amministratore del server deve creare un utente (con relativa home directory).<br/>
L'installazione di ProFTPD porta, di default, ad una autenticazione degli accessi basata sui file "/etc/passwd" e "/etc/group" presenti sul server. Questo significa che, per avere accesso al server FTP. l'amministratore deve creare un utente (con relativa home directory).<br/>
Questo approccio è, tipicamente, valido nel caso in cui gli accessi al server siano pochi e l'amministratore non debba preoccuparsi più di troppo di ciò che hanno in mente di fare gli utenti e dello spazio occupato da ciascuna home directory. All'aumentare delle utenze, però, i rischi legati alla sicurezza aumentano e serve trovare una strada più comoda per amministrare facilmente gli accessi.
Questo approccio è, tipicamente, valido nel caso in cui gli accessi al server siano pochi e l'amministratore non debba preoccuparsi più di troppo di ciò che hanno in mente di fare gli utenti e dello spazio occupato da ciascuna home directory. All'aumentare delle utenze, però, i rischi legati alla sicurezza aumentano e serve trovare una strada più comoda per amministrare facilmente gli accessi.


Riga 98: Riga 98:
Il passo successivo consiste nel creare le directory personali di ciascun utente in quanto la directory home è stata creata da [[root]] e non ha permessi di scrittura per utenti diversi. Infatti:
Il passo successivo consiste nel creare le directory personali di ciascun utente in quanto la directory home è stata creata da [[root]] e non ha permessi di scrittura per utenti diversi. Infatti:
<pre>
<pre>
$ ls -l /home
...
...
drwxr-xr-x  4 root  root  4096 dic 30 22:01 ftp-share
drwxr-xr-x  4 root  root  4096 dic 30 22:01 ftp-share
</pre>
</pre>
Riga 125: Riga 128:
=== Directory pubblica ===
=== Directory pubblica ===
Avere tutte directory private può già essere considerata una situazione ragionevole in molti contesti ma, più in generale, è auspicabile che esista una directory pubblica per condividere dati tra diversi utenti.<br/>
Avere tutte directory private può già essere considerata una situazione ragionevole in molti contesti ma, più in generale, è auspicabile che esista una directory pubblica per condividere dati tra diversi utenti.<br/>
Creeremo, quindi, una directory in cui tutti potranno inviare o prelavare dati attraverso FTP: la chiameremo <code>Pubblica</code> e si troverà all'interno di <code>/home/ftp-share/</code>.
Creeremo, quindi, una directory in cui tutti potranno inviare o prelevare dati attraverso FTP: la chiameremo <code>Pubblica</code> e si troverà all'interno di <code>/home/ftp-share/</code>.
<pre>
<pre>
# mkdir /home/ftp-share/Pubblica
# mkdir /home/ftp-share/Pubblica
Riga 155: Riga 158:
Il secondo file conterrà le direttive per consentire (o negare) il login al server FTP. Creiamo il file <code>01Login.conf</code> contenente:
Il secondo file conterrà le direttive per consentire (o negare) il login al server FTP. Creiamo il file <code>01Login.conf</code> contenente:
<pre>
<pre>
# Login solo dalla subnet 192.168.x.x
# Login solo dalla subnet 192.168.
<Limit LOGIN>
<Limit LOGIN>
   Order allow,deny
   Order allow,deny
Riga 169: Riga 172:
</Limit>
</Limit>
</pre>
</pre>
La prima direttiva permette l'accesso solo agli indirizzi IP "192.168.x.x" mentre la seconda permette il login solo al gruppi "ftp-virtuali". Un client che non soddisfa entrambe le condizioni non ha accesso al server FTP.<br/>
La prima direttiva permette l'accesso solo agli indirizzi IP "192.168.x.x" mentre la seconda permette il login solo al grupp ''ftp-users''. Un client che non soddisfa entrambe le condizioni non ha accesso al server FTP.<br/>
Chiaramente adattate questa configurazione al vostro caso.
Chiaramente adattate questa configurazione al vostro caso.


Riga 180: Riga 183:
</pre>
</pre>
;RequireValidShell:Necessaria per consentire il login senza possedere una [[shell]] valida (è stata impostata a "/bin/false").
;RequireValidShell:Necessaria per consentire il login senza possedere una [[shell]] valida (è stata impostata a "/bin/false").
;DefaultRoot ~ ftp-full:La home directory di chi appartiene al gruppo "ftp-full"; di default abbiamo scelto all'inizio che sia <code>/home/ftp-share</code> (home directory durante la creazione dell'utente).
;DefaultRoot ~ ftp-full:La home directory di chi appartiene al gruppo ''ftp-full''; di default abbiamo scelto all'inizio che sia <code>/home/ftp-share</code> (home directory durante la creazione dell'utente).


== Test di funzionamento ==
== Test di funzionamento ==
Riga 187: Riga 190:
# service proftpd restart
# service proftpd restart
</pre>
</pre>
e connettersi con il proprioclient FTP preferito specificando l'indirizzo IP del server, il proprio username e la password.
e connettersi con il proprio client FTP preferito specificando l'indirizzo IP del server, il proprio username e la password.


== Utenti ad accesso limitato ==
== Utenti ad accesso limitato ==
Riga 195: Riga 198:
# ftpasswd --passwd --home /home/ftp-share/Pubblica/ --name paperino --shell /bin/false --uid 4000
# ftpasswd --passwd --home /home/ftp-share/Pubblica/ --name paperino --shell /bin/false --uid 4000
</pre>
</pre>
Creare un gruppo per raggruppare questo tipo di utenti. Chiamiamolo ''ftp-downonly" e aggiungiamoci ''paperino'':
Creare un gruppo virtuale per raggruppare questo tipo di utenti. Chiamiamolo ''ftp-downonly" e aggiungiamoci ''paperino'':
<pre>
<pre>
# ftpasswd --group --name downonly --file /etc/proftpd/ftpd.group -m paperino --gid 4000
# ftpasswd --group --name downonly --file /etc/proftpd/ftpd.group -m paperino --gid 4000
Riga 201: Riga 204:
Bisognerà aggiungere ''paperino'' anche al gruppo ''ftp-users'' (come spiegato nel paragrafo[[#Aggiungere un utente a un gruppo]]) per consentirgli un accesso FTP al server.
Bisognerà aggiungere ''paperino'' anche al gruppo ''ftp-users'' (come spiegato nel paragrafo[[#Aggiungere un utente a un gruppo]]) per consentirgli un accesso FTP al server.


Successivamente bisogna modificare il file ''02Direttive.conf" aggiungendo la riga:
Successivamente è necessario modificare il file ''02Direttive.conf" aggiungendo la riga:
<pre>
<pre>
DefaultRoot    ~      ftp-downonly
DefaultRoot    ~      ftp-downonly
6 999

contributi