Guida completa: come predisporre un server FTP sul proprio PC

Desiderate trasferire file via Internet o rendere disponibili documenti particolarmente voluminosi senza imbattervi nei tanti limiti dei servizi di web hosting? FTP è un protocollo robusto e affidabile, in grado di offrire una serie di vantaggi di primo piano. Grazie ad un potente software open source, è possibile predisporre un server con la massima sicurezza e semplicità: vediamo come procedere.

 

Al giorno d'oggi, fra messaggistica istantanea, protocolli di filesharing P2P, file hoster via web ed eccellenti soluzioni come DropBox, i metodi per scambiare file in rete sono davvero moltissimi.

Ciò nonostante, la predisposizione di un server FTP sul proprio PC rimane un'operazione altamente consigliata, perlomeno per gli utenti più esigenti.

Questo approccio ha infatti una serie di vantaggi sicuramente notevoli rispetto a tutti gli altri elencati:

  • Nessun limite alla dimensione dei file (contrariamente a quanto avviene con RapidShare e cloni)
  • Possibilità di lavorare in modo asincrono (contrariamente a quanto avviene trasferendo i file via Windows Live Messenger e simili, in cui è necessario che il mittente e il destinatario accettino ogni singolo trasferimento)
  • Tutela della privacy: rispetto agli host on-line, in cui i file da scambiare sono affidati a una terza parte, un server FTP evita di dover affidare il proprio lavoro ad un soggetto estraneo
  • Possibilità di negare l'accesso a chi non conosce nome utente e password, al contrario di quanto avviene utilizzando i programmi di filesharing peer-to-peer
  • Nessun software addizionale da installare: basterà un tradizionale web browser per interagire con il server

Vi sono però anche alcuni aspetti negativi;

  • Velocità di trasferimento limitata rispetto a quanto ottenibile scaricando un file da un web hoster: in particolare, ricordate che i client che si collegheranno al vostro server potranno scaricare al massimo alla velocità di upload prevista dal vostro contratto di connessione
  • Maggiore complessità nel configurare il server
  • Disponibilità dei file limitata ai momenti in cui il PC è acceso e collegato ad Internet

A mio personale parere, i vantaggi sono tali da portarmi ad evitare quasi sempre l'impiego dei web hoster, se non in casi eccezionali.

Siete convinti? Vediamo come preparare il tutto.

Spiacente, utenti Fastweb

Per poter consentire il collegamento al vostro server FTP, è necessario aprire e rendere possibile la connessione ad una porta TCP (la numero 20, per impostazione predefinita).

Il sistema Fastweb ad IP mascherato, inibisce questa possibilità.

L'unico modo per risolvere il problema è quello di richiedere all'operatore un (costoso) IP pubblico, oppure sfruttare le 20 ore mensili di IP pubblico comprese nell'abbonamento e rendere disponibile il proprio FTP solamente in tali momenti.

L'alternativa è costituita dalla creazione di una VPN con soluzioni quali Hamachi: ne ho parlato nell'articolo "Realizzare VPN in pochi clic: guida rapida ad Hamachi".

FileZilla Server

Sebbene siano numerose le soluzioni software atte allo scopo (in passato abbiamo proposto una approfondita guida anche a Serv-U, ad esempio), la mia prima scelta per predisporre server FTP è senza dubbio alcuno FileZilla Server.

Si tratta di uno strumento leggero ma allo stesso tempo potente, altamente configurabile e con il vantaggio della licenza open source GPL, grazie alla quale è possibile utilizzare il programma liberamente anche in ambienti professionali

FileZillaServer.MAIN.jpeg

Installazione

Per prima cosa, è necessario scaricare il programma di installazione dal sito ufficiale ed avviare il setup.

Le prime schermate sono quelle tradizionali: scelta dei componenti da installare (selezionateli tutti), percorso in cui copiare i file, accettazione della licenza d'uso e via dicendo.

La prima videata interessante è Startup settings relativa appunto alle modalità con cui avviare il server.

FileZillaServer.Install.1.jpeg

Personalmente sono allergico al software che parte automaticamente all'avvio del PC, e preferisco piuttosto attivare manualmente i vari programmi alla bisogna.

Se volete adottare il mio approccio, selezionate Do not install as service... In caso contrario lasciate la scelta di default.

Ricordate comunque che questo tipo di avvio è raccomandabile solamente in caso vogliate mantenere il massimo controllo sul programma, e non è indicato per calcolatori adibiti strettamente a lavorare come server remoti.

Se avete optato per l'avvio manuale, suggerisco di selezionare Start manually alla schermata successiva.

FileZillaServer.Install.2.jpeg

All'ultima videata della procedura d'installazione, lasciate attiva la voce proposta per attivare immediatamente il programma.

A questo punto, potreste essere accolti da un avviso di Windows Firewall: accettate la possibilità che FileZilla Server possa accedere alla rete e aprire porte in ingresso

FileZillaServer.Install.3.jpeg

Apparirà ora la finestra di dialogo seguente: sebbene non approfondiremo questo aspetto nel corso della guida, è infatti possibile amministrare anche installazioni di FileZilla Server remote.

Lasciate tutto come sta, attivate l'opzione Always connect to this server e confermate

FileZillaServer.Options.jpeg

Dovreste poter vedere ora la schermata principale del programma: il server è attivo, anche se non ancora accessibile.

 

Selezionate la terza icona della barra degli strumenti, e potrete così accedere alle opzioni del programma.

Sebbene la completezza di quanto offerto possa disorientare, vi sono in vero solamente un pugno di impostazioni che risulta interessante modificare.

Welcome message

A scope prettamente dilettevole, potete modificare il messaggio di benvenuto visualizzato dai client subito dopo la connessione

FileZillaServer.Options (2).jpeg

Ricordate che quanto inserito in quest'area non verrà mostrato a coloro i quali utilizzassero un tradizionale navigatore web per accedere ai file offerti, ma solamente ai client FTP dedicati.

Prestate attenzione inoltre a non rivelare password o altre informazioni riservate! Il messaggio verrà infatti mostrato prima dell'autenticazione, e sarà quindi pubblico!

IP Filter

La Rete è piena di scocciatori che, utilizzando automatismi di vario tipo, finiranno per scoprire l'esistenza del vostro server e inizieranno a provare svariate combinazioni di nomi utente e password per tentare di garantirsi l'accesso.

Potete mettere alla porta tali utenti semplicemente elencando, uno dopo l'altro, i loro IP nella prima casella di testo del ramo di opzioni IP Filter. Potrete prendere nota degli IP degli aggressori tenendo d'occhio la schermata principale di FileZilla Server, oppure agire preventivamente bloccando il traffico da Stati esteri secondo quanto proposto da Blockacountry.com.

Siete veramente paranoici? Allora bloccate qualsiasi connessione inserendo nella prima casella 0.0.0.0-255.255.255.255, e quindi inserite solamente IP italiani e degli Stati dai quali contate di ricevere connessioni nella casella sottostante, sempre utilizzando Blockacountry.com come fonte informativa. Ricordatevi però di questo limite, quando andrete in vacanza negli Stati Uniti e vorrete caricare le foto via FTP!

Passive mode settings

La spiegazione teorica della modalità passiva legata al protocollo FTP è oltre gli scopi di questa guida (per maggiori informazioni, si veda la buona spiegazione proposta da Wikipedia Inglese).

Per il momento, basti dire che, operando dietro un router con firewall, è necessario impostare FileZilla Server di modo che possa offrire la connessione passiva su una porta alternativa.

Nel ramo di opzioni in questione, abilitate quindi Retrieve external IP address from: senza modificare l'indirizzo proposto.

Spuntate quindi Use custom port range: e specificate due porte a piacere, maggiori di 1024. Nel prosieguo userò 2121 e 2122

FileZillaServer.Options (4).jpeg

Ricordate che, in caso aveste problemi di connessione, sarà probabilmente questo il ramo di opzioni da verificare.

Miscellaneous

Il pannello di amministrazione di FileZilla Server parte, per impostazione predefinita, ridotto a icona nell'area delle notifiche.

Se avete optato per l'avvio manuale del programma durante la fase di installazione, suggerisco di disabilitare l'opzione Start minimized presente in questo gruppo di impostazioni

FileZillaServer.Options (5).jpeg

Non modificate altro in questo ramo e proseguite oltre.

Speed Limits

Piuttosto importante è la schermata relativa ai limiti di velocità, ed in particolare quello legato alla velocità massima di download dal vostro server.

Se non imposterete un limite infatti, un singolo client connesso mediante una tradizionale ADSL potrebbe saturare completamente la vostra banda in upload, rendendo la tradizionale navigazione in Internet dal vostro PC particolarmente lenta (o peggio).

Se utilizzate una ADSL italiana di taglio medio (velocità di upload nominale: 384 kbit/s), impostate Download Speed Limits - Constant Speed Limit al valore 32, mentre se siete sottoscrittori di abbonamenti da 20 Mega (velocità di upload nominale: 1 Mbit/s ma che difficilmente supera i 5-600), potete digitare 64

FileZillaServer.Options (6).jpeg

Non ritengo particolarmente utile impostare un limite massimo per l'upload: perché un client riesca a saturare la banda di download di una ADSL di taglio medio sarebbe necessario caricare ad oltre 5 Mbit per secondo: questo significa che dovrebbero essere connessi al vostro FTP più di 13 client impegnati in attività di upload contemporaneo.

Se temete questa eventualità comunque, impostate Upload Speed Limits - Constant Speed Limit al valore 512 (1500 per le 20 Mega).

Filetransfer compression

FileZilla Server offre la possibilità di comprimere "al volo" ed in modo completamente trasparente i file in transito, qualora anche il client supporti a propria volta tale modalità. Questo significa una mole di dati minori da veicolare e, quindi, trasferimenti più rapidi (soprattutto per i file non già compressi, quali documenti di testo, immagini bitmap o RAW e via dicendo).

Potete attivare questa opzione spuntando Enable MODE Z support nel ramo Filetransfer compression

FileZillaServer.Options (7).jpeg

Il rovescio della medaglia è un (concreto) aumento nell'uso del processore durante il trasferimenti dei file più corposi.

Il mio suggerimento è comunque quello di attivare tale opzione, a meno chè non utilizziate lo stesso calcolatore anche per eseguire applicazioni voraci di risorse come i videogiochi tridimensionali: in tutte le altre occasioni infatti, l'impatto sulla CPU non è tale da compromettere l'usabilità della macchina.

Autoban

Un importante meccanismo difensivo reso disponibile da FileZilla Server è l'autoban, ovvero il blocco di ulteriori tentativi di connessione da parte di quei client che fornissero credenziali di accesso errate per un numero troppo elevato di volte consecutive (possibile segnale di un attacco a forza bruta in corso).

Impostando il valore 25 nel primo campo (di modo da non escludere a priori gli amici più imbranati) e 2 nel secondo, farete sì che tutti i client che sbaglino l'autenticazione per più di 25 volte in una sola ora vengano bloccati per ulteriori 2 ore

FileZillaServer.Options (8).jpeg

Videoguide