OldWildWeb Logo

Installare server FTP Raspberry PI

Come installare un server FTP alla Raspberry PI


Installare server FTP Raspberry pi 4

In questo articolo forniremo le istruzioni per installare un server FTP in pochi minuti nella vostra scheda Raspberry PI, sono supportate tutte le versioni di Raspberry.

Il server proposto per questo tutorial è uFTP server, un progetto open source di server FTP progettato per dispositivi embedded.

Rispetto altri server FTP, uFTP server è costituito da un solo file binario portabile e un solo file di configurazione, in aggiunta al quale però vanno aggiunti i certificati se si decide di compilarlo col supporto di criptazione TLS.

uFTP server è ideale per ogni scheda Raspberry PI, si tratta di un progetto tutto italiano realizzato da specialisti dell'embedded, qui potete trovare ulteriori informazioni: https://www.uftpserver.com/.



uFTP server supporta tutte le features principali di un server FTP, supporta connessione cifrata TLS, ed è adatto per qualsiasi scopo generico, io personalmente lo utilizzo come punto di accesso ad un disco usb connesso alla Raspberry, posso collegare vari software all'FTP per accedere ai dati del disco compreso il riproduttore multimediale Kodi.

Per poter installare uFTP è consigliato compilarlo direttamente sulla scheda Raspberry PI, i seguenti pacchetti potrebbero essere necessari a seconda della distribuzione che avete installato: make, gcc, git


#aprite un terminale e installate i pacchetti necessari con il seguente comando
sudo apt-get install gcc make git



#Scaricate i sorgenti dal repository tramite git
git clone https://github.com/kingk85/uFTP.git



#Spostatevi nella cartella dei sorgenti
cd uFTP



# Editate il file makefile
nano Makefile
#Per compilare il software senza supporto TLS (se non ne avete bisogno, commentate le seguenti linee)
#ENABLE_OPENSSL_SUPPORT=-D OPENSSL_ENABLED
#LIBS=-lpthread -lssl -lcrypto

#Salvate le modifiche e compilate il server con il comando make
make



#Copiate il file di configurazione e il binario nelle directory di default
sudo cp build/uFTP /sbin/uFTP
sudo cp uftpd.cfg /etc/uftpd.cfg




sudo nano /etc/uftpd.cfg


Per conoscere tutte le opzioni potete dare un occhiata al wiki: https://www.uftpserver.com/wiki/uftp-server-configuration


#Ultimata la configurazione settate i permessi in modo tale che un utente qualsiasi non può leggere il file di configurazione e quindi anche le password
sudo chown root:root /sbin/uFTP
sudo chown root:root /etc/uftpd.cfg
sudo chmod -rwx /etc/uftpd.cfg
sudo chmod u+rwx /etc/uftpd.cfg



#Se avete deciso di compilare il software con il supporto della criptazione ora avrete bisogno di generare un certificato
#per permettere al server di cifrare la connessione
#Seguite gli step successivi, quando vi verrà richiesto di fornire una password sceglietene una, ne avrete bisogno solo momentaneamente, durante la procedura
#la password verrà alla fine tolta dal certificato per non doverla inserire manualmente ogni volta che si avvia il server FTP
sudo mkdir /etc/uFTP
cd /etc/uFTP
sudo openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365
sudo openssl rsa -in key.pem -out newkey.pem
sudo mv newkey.pem key.pem
sudo chown root:root /etc/uFTP/key.pem
sudo chmod -rwx /etc/uFTP/key.pem
sudo chmod u+rwx /etc/uFTP/key.pem



#Eseguite il server FTP da root.
sudo uFTP


Se desiderate avviarlo all'avvio della Raspberry seguite il passo successivo.


#editate il file di avvio rc.local
sudo nano /etc/rc.local

#Aggiungete la seguente linea prima della riga exit 0 alla fine del file
uFTP


Se avete seguito con precisione i passaggi ora dovreste avere un server FTP correttamente installato.