Site icon Syrus

Installare e configurare un server FTP su Raspberry

Se devo essere sincero ai miei due piccolini, i due Raspberry PI con i quali gioco ogni tanto, gli ho fatto fare di tutto e a volte anche di più. Dal banale lampeggiante con due led blu e rosso fino al server LAMP con WordPress e integrando tutte le librerie per controllare fino a quattro relais. Consentitemi, prima di entrare nel discorso di installazione e configurazione di un server FTP su Raspberry, di fare una piccola digressione. Se vogliamo usare il “piccolino” con un disco esterno per usarlo come memoria dove depositare i documenti che usiamo dal desktop, dal portatile o dal telefonino allora FTP non ci serve. Ci serve un NAS (network Attached Storage) che oggi, pronto e configurato anche per l’uso attraverso internet, costa nel taglio da 4 Tera Byte intorno ai 200 euro o meno. Un server FTP (File Transfer Protocol) serve per trasferire, come dice il nome, file di qualsiasi tipo dal client (il nostro desktop) al server (il Raspberry) e viceversa. Il NAS; invece, viene visto come se fosse fisicamente collegato al nostro computer.

Installiamo il server FTP

Oltre a pure-ftp, consigliato da Raspberry.org, esiste PROFTPD, compatibile con tutte le versioni Debian e derivate e quindi molto valido dal punto di vista didattico. Dopo aver effettuato l’accesso SSL via terminale (puTTY su Windows, terminal su Mac e Linux) inizieremo con il solito comando di aggiornamento del sistema:

~$ sudo apt update && sudo apt upgrade. Il passo successivo è l’installazione del nostro server FTP con il comando: ~$ sudo apt-get install proftpd

Il sistema ci risponderà con una serie di avvisi e ci chiederà se procedere. Alla conferma il sistema provvederà all’installazione del pacchetto completo e non ci resterà altro da fare che completare la configurazione con i parametri indispensabile per avere un canale FTP stabile e sicuro.

Configuriamo il server FTP

Tutte le informazioni di configurazione del nostro server PROFTPD sono racchiuse in un file di testo, proftpd.conf, nella cartella /etc/proftpd. Per modificarlo useremo il solito editore nano e quindi scriveremo: ~$ sudo nano /etc/proftpd/proftpd.conf. Se vogliamo metterci al sicuro da eventuali errori possiamo fare una copia di riserva del file di configurazione con il comando:

~$ sudo cp /etc/proftpd/proftpd.conf /etc/proftpd/proftpd.old

Non spaventiamoci per la lunghezza del file, per le molte righe e per l’apparente complessità. Teniamo a mente che il simbolo # indica un commento e notiamo che sono moltissime le righe commentate. Per prima cosa definiamo il nome del nostro server cercando (ctrl + W) la stringa ServerName. Sostituiamo al testo fra virgolette il nome scelto per il nostro server (non dimentichiamo le virgolette). Non ci resta che indicare quale è la posizione dove dovranno essere depositati i file (la DefaultRoot) ricordando che Apache, di solito, lavora con i file posizionati in /var/www. Cercheremo, quindi, nel file di configurazione la stringa in questione che ci dovrebbe apparire in questo modo: # DefaultRoot    ~. Cancelliamo il cancelletto iniziale per de commentare e al posto del simbolo ~ inseriamo il valore /var/www. Chiudiamo l’editor (ctrl +x) e confermiamo il salvataggio con Y.

Non ci rimane che definire i gruppi e gli utenti che avranno accesso al nostro server FTP creando un un gruppo, per esempio web-ammin, con il comando: ~$ sudo addgroup web-ammin. Creiamo gli utenti con il comando: ~$ sudo useradd nomeutente e assegniamo loro una password (~$ sudo passwd nomeutente). Non ci resta che aggiungere il nuovo utente al gruppo web-ammin con il comando ~$ sudo usermod –a –G web-ammin nomeutente. Apriamo di nuovo il file di configurazione e aggiungiamo, dopo la linea : # DefaultRoot che abbiamo modificato prima una nuova linea: DefaultRoot /home/public_html web-ammin e salvare di nuovo.

Il nostro server FTP sul Raspberry è pronto a funzionare al prossimo riavvio. Restano da definire i permessi ma questo è un discorso che, per la sua complessità sarà il caso di fare un’altra volta.

 

Syrus

Exit mobile version