Configurare un server FTP su Windows rimane uno dei modi più semplici per condividere rapidamente file all'interno di una rete locale o su Internet , senza dover ricorrere a servizi cloud o limiti di dimensione. Sebbene oggi esistano alternative più moderne come SFTP o soluzioni di archiviazione online, FTP continua a essere ampiamente utilizzato per l'hosting, gli ambienti di test e i trasferimenti di dati su larga scala.
Tuttavia, se si vuole fare le cose per bene, non basta che il server "funzioni": è fondamentale configurare correttamente utenti, porte, permessi, firewall e misure di sicurezza , soprattutto se il server sarà accessibile dall'esterno della rete. Questa guida completa mostrerà come installare e configurare FTP basato su IIS su diverse versioni di Windows, come regolare la sicurezza del servizio e i metodi di connessione disponibili, oltre agli errori più comuni e a come evitarli.
Che cos'è FTP e che ruolo svolge in Windows e IIS?
FTP (File Transfer Protocol) è un protocollo consolidato utilizzato per inviare e ricevere file tra un client e un server su una rete TCP/IP . In pratica, consente di connettersi a una macchina remota, visualizzare cartelle e file e caricare o scaricare contenuti quasi come se si trattasse di un'altra unità sul proprio computer.
In Windows Server (e anche in Windows 7, 8, 8.1, 10 e versioni successive), il server FTP viene in genere configurato su IIS, il server web di Microsoft. Internamente, IIS espone un elemento `<ftpServer>` all'interno della configurazione del sito , e all'interno di questo elemento si trova `<security>`, ovvero il blocco in cui vengono controllati l'autenticazione, l'autorizzazione, il filtro dei comandi e la protezione del canale dati e SSL.
Questo elemento <security> include diverse sezioni critiche: <authentication> (anonymous, basic, certificates, custom) , <commandFiltering> per limitare i comandi pericolosi, <dataChannelSecurity> per rafforzare la sicurezza tra i canali di controllo e dati e i blocchi <ssl> e <sslClientCertificates> per definire l'utilizzo di certificati e FTPS.
Nelle versioni moderne di IIS (7.5, 8.0, 8.5, 10.0), la sintassi per `<security>` rimane stabile, sostituendo la classica configurazione FTP di IIS 6.0 che risiedeva nel metabase LM/MSFTPSVC. A partire da Windows 7/Windows Server 2008 R2, il ruolo FTP 7.5 è integrato come funzionalità di IIS, quindi non è necessario scaricarlo separatamente.

Prerequisiti: attrezzatura, rete e pianificazione
Prima di apportare qualsiasi modifica, è fondamentale assicurarsi che l'ambiente sia pronto per ospitare un server FTP e che si comprenda chiaramente quali utenti si connetteranno, da dove e che tipo di informazioni verranno trasferite . Questo influenzerà ogni aspetto, dalla struttura delle cartelle alle politiche di sicurezza da implementare. Ecco i requisiti:
- Ha privilegi di amministratorePer installare il ruolo del server FTP, modificare la configurazione IIS e regolare il firewall.
- Spazio su disco sufficiente per la cartella dati FTP E per la crescita prevista. Se il server deve gestire molti client contemporaneamente o trasferimenti molto pesanti, potrebbe valere la pena aggiornare la RAM, la CPU o la connessione di rete stessa.
Dal punto di vista della rete, è fondamentale che il firewall e il router consentano il traffico necessario. Di default, FTP utilizza le porte 20 e 21 in modalità non sicura , ma se si utilizzano varianti sicure (FTPS o FTP su SSH), vengono utilizzate altre porte, come la porta 22 nel caso di SSH. La vostra azienda potrebbe aver bloccato FTP per motivi di sicurezza, quindi dovrete coordinarvi con l'amministratore di rete o il provider di servizi Internet. Per comprendere meglio l'assegnazione degli indirizzi e il NAT, consultate la sezione su come i dispositivi ottengono i loro indirizzi IP.
Infine, decidi se il tuo server sarà accessibile solo internamente o anche da Internet. Questa decisione influisce sulla configurazione delle porte, sul NAT, sul DNS, sui certificati SSL e sul tipo di autenticazione che consentirai . Per gli ambienti esposti esternamente, FTPS e password complesse sono praticamente obbligatori.
Installazione di un servizio FTP basato su IIS su Windows
In Windows, il server FTP viene installato come servizio ruolo all'interno di Internet Information Services (IIS) . La procedura esatta varia leggermente a seconda della versione del sistema operativo, ma l'idea generale è sempre la stessa: aggiungere il ruolo server web e, al suo interno, il servizio FTP.
Installa FTP su Windows Server 2012 / 2012 R2
In Windows Server 2012 e 2012 R2, la procedura viene eseguita da Server Manager. Dalla barra delle applicazioni, accedere a "Server Manager > Gestisci > Aggiungi ruoli e funzionalità" e seguire la procedura guidata, selezionando un'installazione basata sui ruoli o sulle funzionalità e il server di destinazione appropriato.
Nella schermata Ruoli del server, espandere "Server Web (IIS)" e selezionare "Server FTP ". La procedura guidata richiederà di aggiungere le funzionalità necessarie; in genere è consigliabile accettarle così come sono, inclusi gli strumenti di amministrazione. Dopo aver fatto clic su Avanti nelle schermate intermedie, confermare l'installazione e attendere il completamento.
Installa FTP su Windows Server 2008 / 2008 R2
In Windows Server 2008 R2, dal menu Start vai a "Strumenti di amministrazione > Gestione server" . Nel riquadro Ruoli, seleziona "Server Web (IIS)" e fai clic su "Aggiungi servizi ruolo". Nella procedura guidata, individua "Server FTP", espandilo e seleziona "Servizio FTP".
Dopo aver selezionato il servizio ruolo, segui la procedura guidata fino alla schermata di conferma e fai clic su "Installa" per aggiungere il componente . Quando la procedura guidata visualizza i risultati, puoi chiudere la finestra e continuare con la configurazione in IIS.
Installa FTP su Windows 7, 8, 8.1 e 10
Sui sistemi desktop come Windows 7, 8, 8.1 e 10, il server FTP è incluso anche come componente di Windows. Dal Pannello di controllo, vai su "Programmi e funzionalità > Attiva o disattiva funzionalità di Windows" ed espandi "Servizi Internet Information Services".
All'interno di IIS, troverai l'opzione "Server FTP"; seleziona il servizio FTP (e l'estensione FTP se desideri funzionalità aggiuntive) e conferma con OK. In Windows 10, la procedura è molto simile: accedi allo stesso pannello delle impostazioni e assicurati di selezionare sia "Server FTP" che gli strumenti di amministrazione Web per poter utilizzare facilmente Gestione IIS.
Installazione su Windows Server 2019
In Windows Server 2019, la procedura è praticamente identica a quella di Windows Server 2012/2016: in Server Manager, vai su "Aggiungi ruoli e funzionalità", seleziona "Server Web (IIS)" e, nella sezione "Servizi ruolo", includi "Server FTP" tra i componenti da installare . Dopo l'installazione, puoi creare i tuoi siti FTP in Gestione IIS.
Creazione di utenti e gruppi per FTP
Una buona pratica di sicurezza consiste nell'evitare di riutilizzare account utente con privilegi elevati per le connessioni FTP . È preferibile creare utenti dedicati (e, se necessario, gruppi) che abbiano accesso solo alle cartelle necessarie per il caricamento e il download dei contenuti.
Su un server Windows, è possibile utilizzare la Console di gestione Utenti e gruppi. Nella barra di ricerca, digitare qualcosa come "utenti" e accedere all'opzione "Aggiungi, modifica o elimina altri utenti" . Da lì, oppure dallo strumento "Utenti e gruppi locali" (o Utenti e computer di Active Directory in un dominio), è possibile creare nuovi account.
Quando si crea un utente FTP, è necessario definire un nome utente, il nome completo e una descrizione; l'identificativo di accesso è fondamentale. Successivamente, si sceglie una password complessa e si configurano opzioni come "l'utente non può cambiare la password" o "la password non scade mai ", a seconda di come si intende utilizzare l'account FTP.
Se si prevede di gestire più utenti con autorizzazioni identiche, è consigliabile creare un gruppo specifico, ad esempio "FTP_Users". Dalla scheda Gruppi, è possibile creare un nuovo gruppo, assegnargli un nome e una descrizione e aggiungere gli utenti che condivideranno i diritti . Questo gruppo potrà poi essere utilizzato in seguito sia per le autorizzazioni NTFS che per le regole di autorizzazione IIS.
Negli ambienti con Active Directory (come in molti sistemi Windows Server 2019) è comune creare un'unità organizzativa dedicata, ad esempio "Servizio FTP", e al suo interno definire gli account che avranno accesso al servizio , facilitando l'amministrazione centralizzata e le politiche di sicurezza.
Configurazione della cartella radice (home) FTP
Una volta installato il servizio FTP e creati gli utenti, il passo successivo consiste nel preparare la cartella che fungerà da directory di base per il sito FTP . Questa posizione può essere una semplice "C:\FTP" in un ambiente di test o un volume dedicato in produzione.
Da Esplora file, crea la cartella nella posizione desiderata e poi accedi alle sue proprietà (clic destro > "Proprietà"). Nella scheda "Sicurezza", vai su "Avanzate" per gestire le autorizzazioni in modo più preciso e, se necessario, interrompere l'ereditarietà delle autorizzazioni del disco.
In genere, per interrompere l'ereditarietà è sufficiente cliccare su "Disabilita ereditarietà" e scegliere "Rendi esplicite le autorizzazioni ereditate su questo oggetto" , in modo da poter modificare chi può accedere alla cartella senza dover trascinare l'intero elenco di controllo degli accessi (ACL) dal disco o dalle cartelle superiori.
Tornando alla finestra di sicurezza, si consiglia di rimuovere tutte le voci non necessarie (come il gruppo generico "Utenti") e di aggiungere solo l'utente o il gruppo FTP creato. Nell'editor dei permessi, concedere a tale utente/gruppo il "Controllo completo" per garantire che possa leggere, scrivere, eliminare e rinominare i file senza problemi.
Negli scenari multiutente è possibile fare un ulteriore passo avanti e creare sottocartelle per ciascun utente , configurando autorizzazioni separate in modo che ognuno visualizzi solo il proprio contenuto, oppure intervenire sulle autorizzazioni di IIS per isolare le directory in base all'identità.

Creare e configurare il sito FTP in IIS
Una volta abilitato il ruolo FTP e configurata la cartella base con le relative autorizzazioni, è necessario creare il sito FTP in Gestione Internet Information Services (IIS) . Questa operazione collega l'indirizzo IP, la porta, il percorso fisico e i criteri di autenticazione/autorizzazione. Ecco i passaggi da seguire:
- Aprire Gestione IIS dal menu Strumenti di amministrazione (o cercandolo direttamente).
- Nel pannello delle connessioni, fare clic con il pulsante destro del mouse su "Siti.
- Scegli il tuo prodotto preferito “Aggiungi sito FTP”Si aprirà un piccolo assistente guidato.
- Nella prima schermata dell'assistente, definire il Nome del sito FTP e percorso fisico alla cartella di basePuoi digitare il percorso manualmente o cliccare sul pulsante Sfoglia per individuare la cartella creata in precedenza (ad esempio, "C:\FTP"). Dopo aver impostato la directory home, clicca su "Avanti".
- La seconda schermata configura la sezione "Link e SSL". Scegli l'indirizzo IP su cui il sito ascolterà (o lascia "Tutti non assegnati" se ne hai solo uno) e specifica la porta TCP che desideri utilizzare (il valore predefinito è 21 per FTP standard o 990 se desideri FTPS implicito).
- Per quanto riguarda SSL, hai tre opzioni di base:
- Disattivarlo ("No SSL").
- Consentilo facoltativamente ("Consenti SSL").
- Forzalo ("Richiedi SSL").
- La terza schermata della procedura guidata definisce l'autenticazione e l'autorizzazione. È possibile abilitare l'autenticazione anonima, l'autenticazione di base o entrambe. Nella sezione Autorizzazione, è possibile scegliere chi può connettersi e quali autorizzazioni avrà. IIS consente di specificare "Tutti gli utenti", "Utenti anonimi", "Utenti specificati" o gruppi predefiniti. Ad esempio, è possibile selezionare "Utenti specificati", specificare un account o un gruppo e selezionare la casella. Autorizzazioni di lettura e scrittura per abilitare il caricamento e il download dei file.
- Fare clic su "Fine" e il sito FTP verrà creato.
Autenticazione FTP: anonima, base e avanzata
La sezione <autenticazione> delle impostazioni FTP di IIS determina come vengono identificati i client che tentano di connettersi . Dalla visualizzazione delle funzionalità del sito FTP, facendo doppio clic su "Autenticazione FTP" verranno visualizzate diverse opzioni.
- Autenticazione anonima. Permette a chiunque di entrare senza credenziali, utile solo per siti completamente pubblici in cui vuoi solo condividere i download E non ci sono restrizioni. Dalla scheda di autenticazione, selezionando "Autenticazione anonima" e utilizzando le azioni "Abilita" o "Disabilita", è possibile attivarla o bloccarla a seconda delle esigenze.
- Autenticazione di baseRichiede al cliente di inviare un nome utente e password validi sul dominio o sulla macchinaQuesto è il metodo più comune per ambienti di hosting interni o di piccole dimensioni, ma tieni presente che il nome utente e la password viaggiano in testo normale se non usi SSL, quindi su Internet è altamente consigliato combinarlo con FTPS.
- Autenticazione tramite certificati client Active Directory (clientCertAuthentication). Il client si identifica con un certificato digitale invece di nome utente/password.
- Autenticazione personalizzata (customAuthentication). Consente di collegare moduli propri o di terze parti per convalidare le credenziali in modi più avanzati.
Se si desidera modificare il metodo di autenticazione predefinito, è sufficiente selezionare "Autenticazione di base" nella schermata "Autenticazione FTP" e fare clic su "Abilita", disabilitando così l'autenticazione anonima. Questa semplice modifica riduce significativamente l'esposizione del server , soprattutto se combinata con regole di autorizzazione restrittive.

Sicurezza, SSL/FTPS e filtraggio dei comandi
Oggigiorno, lasciare un server FTP non crittografato in ascolto su Internet non è una buona idea, quindi vale la pena esaminare più da vicino le opzioni di sicurezza avanzate offerte dalla sezione <sicurezza> FTP in IIS . Queste includono l'utilizzo di SSL, la protezione del canale dati e il filtraggio dei comandi.
Per proteggere il traffico, è possibile utilizzare i certificati SSL. IIS consente di creare un certificato autofirmato direttamente da "Certificati server" in Gestione IIS oppure di importarne uno emesso da un'autorità di certificazione attendibile. Una volta ottenuto il certificato, nelle impostazioni FTP del sito (in "Impostazioni SSL FTP"), selezionarlo e spuntare la casella "Richiedi connessione SSL" se si desidera che tutte le connessioni siano crittografate (FTPS esplicito o implicito, a seconda della porta).
Il blocco entro Consente di modificare policy quali controlChannelPolicy e dataChannelPolicy, che indicano se è richiesto o meno SSL sui canali di controllo e dati.
D'altra parte, il filtro dei comandi FTP tramite `<commandFiltering>` consente di negare comandi specifici che si considerano pericolosi o non necessari.
Per la sicurezza del canale dati, <dataChannelSecurity> aggiunge ulteriori livelli di protezione, come ad esempio la richiesta che l'indirizzo del client sul canale dati corrisponda all'indirizzo sul canale di controllo. Ciò rende più difficile l'esecuzione di determinati attacchi che tentano di dirottare o reindirizzare la sessione FTP sfruttando il port forwarding dinamico.
Infine, `<sslClientCertificates>` controlla la politica relativa ai certificati client in SSL, consentendo di ignorarli (`CertIgnore`), accettarli o richiederli. Se si lavora in un ambiente aziendale molto chiuso, richiedere i certificati client aggiunge una barriera di sicurezza molto forte contro gli accessi non autorizzati.
Windows Firewall e apertura delle porte
Avere un server FTP perfetto è inutile se il firewall blocca tutto il traffico. Su Windows, il Firewall di Windows con sicurezza avanzata blocca per impostazione predefinita molte connessioni in entrata , quindi sarà necessario creare regole specifiche o utilizzare quelle predefinite.
Dal "Pannello di controllo > Sistema e sicurezza > Firewall di Windows Defender", è possibile accedere a "Consenti a un'app o funzionalità di passare attraverso il Firewall di Windows" . Qui, assicurati che "Server FTP" sia abilitato sia per le reti private che per quelle pubbliche, a seconda dell'utilizzo previsto.
Per un controllo più granulare, apri "Windows Firewall con sicurezza avanzata" e, in "Regole in entrata", crea una nuova regola predefinita per "Server FTP", selezionando tutti i componenti pertinenti . Questo genererà automaticamente le voci necessarie per la porta 21 e gli altri servizi associati.
In alcuni casi, sarà necessario autorizzare anche processi come svchost.exe, che è il servizio host in cui vengono eseguite molte funzioni di Windows. Se si rilevano conflitti, è possibile utilizzare l' opzione "Consenti a un'altra applicazione" e aggiungere svchost all'elenco delle applicazioni consentite , procedendo sempre con cautela e comprendendo le implicazioni.
Se desideri che il tuo server FTP sia accessibile anche da Internet, dovrai aprire la porta 21 (o la porta che utilizzi per FTP) sul tuo router creando una regola di port forwarding verso l'indirizzo IP interno del server . Questa operazione si effettua tramite le impostazioni WAN o NAT del router, specificando il servizio, la porta esterna, l'indirizzo IP interno e la porta interna, solitamente 21/TCP se utilizzi FTP classico.

Modi per connettersi a un server FTP in Windows
Una volta che il server è attivo e funzionante, esistono diversi modi per connettersi da un client Windows e trasferire i file . Alcuni sono più intuitivi e basati su interfaccia grafica, altri sono più tecnici ma molto utili per la diagnostica.
Oggigiorno il metodo più comune consiste nell'utilizzare un client FTP dedicato come FileZilla, WinSCP o altri . Questi programmi offrono un'interfaccia a due pannelli (locale/remoto), funzionalità di trascinamento e rilascio e gestione della coda; è sufficiente specificare l'host (IP o dominio), il tipo di protocollo, il nome utente, la password e la porta (vedi i tre migliori client FTP ).
Un'altra opzione è utilizzare il browser web digitando un URL come ftp://indirizzo-IP-server o ftp://ftp.tuodominio.com nella barra degli indirizzi . Se il browser supporta ancora l'FTP, verrà visualizzata una richiesta di nome utente e password e il contenuto verrà elencato. Tuttavia, i browser moderni hanno rimosso il supporto FTP per motivi di sicurezza e scarso utilizzo, quindi questo metodo è ormai quasi obsoleto.
È possibile utilizzare anche il prompt dei comandi. Aprire "cmd", eseguire il comando ftp per accedere al client di base integrato in Windows e quindi digitare "open IP-or-host port" per connettersi. Se il server utilizza la porta 21, è sufficiente digitare "open 192.168.xx"; se si trova su una porta diversa, è necessario specificarla, ad esempio "open 192.168.0.26 214".
Infine, Esplora file di Windows consente di trattare un server FTP come una posizione di rete. Da "Questo PC", è possibile scegliere "Aggiungi una posizione di rete" e, nella procedura guidata, selezionare "Scegli una posizione di rete personalizzata" e immettere l'indirizzo del server nel formato ftp://server-o-IP . Dopo aver inserito le credenziali e assegnato un nome descrittivo, la posizione FTP verrà visualizzata come icona in "Questo PC".
Gestione di più account e permessi in FTP
Negli scenari in cui più persone utilizzeranno il server, è normale voler creare più account FTP con permessi differenti , in modo che alcuni possano solo leggere, altri anche scrivere e altri ancora siano limitati a una specifica sottocartella.
In Windows 10 e versioni successive, è possibile creare nuovi account utente da Impostazioni > Account > Famiglia e altri utenti, utilizzando l' opzione "Aggiungi un altro utente a questo PC" e selezionando "Aggiungi un utente senza un account Microsoft" per i semplici account locali. Inserisci un nome utente e una password e avrai un profilo aggiuntivo.
Successivamente, sul server, accedere alla cartella FTP, andare su Proprietà > Sicurezza e aggiungere il nuovo account all'elenco di sicurezza, concedendo le autorizzazioni desiderate (ad esempio, solo "Modifica" e "Lettura ed esecuzione"). In questo modo si controlla ciò che l'utente può fare a livello di file system ed è possibile automatizzare le attività relative ai file con strumenti come FreeCommander XE.
Infine, in Gestione IIS, all'interno del sito FTP, apri la funzionalità "Regole di autorizzazione" e crea una nuova regola di autorizzazione specificando "Utenti specificati" con il nome dell'account o del gruppo a cui desideri consentire l'accesso. Assegna le autorizzazioni di lettura e/o scrittura in base al ruolo dell'utente , in modo che lo stesso sito FTP possa ospitare account con privilegi molto diversi.
Ripetendo questo processo con utenti diversi, si creerà un ambiente FTP multiutente molto più organizzato , in cui ogni persona visualizzerà solo ciò che le spetta e il server non sarà un insieme disordinato accessibile tramite un unico account condiviso.
Con tutti questi elementi correttamente assemblati (installazione del ruolo FTP in IIS, creazione di utenti e gruppi specifici, configurazione accurata della cartella radice, regolazione dell'autenticazione, utilizzo di SSL, apertura delle porte e comprensione dei diversi metodi di connessione), è possibile configurare un server FTP robusto e relativamente sicuro su Windows, personalizzato in base alle proprie esigenze , sia per la semplice condivisione di file nella rete locale (LAN) sia per esporre un repository accessibile da qualsiasi parte del mondo.