Condividi tramite


Guida alla distribuzione di FTP e pubblicazione con VWD

di Walter Oliver

Il servizio FTP per IIS è un componente chiave della piattaforma Web Di Windows. Offre una soluzione affidabile e sicura per FTP in un ambiente Windows. Gli amministratori dell'ambiente di hosting condiviso possono usare consentire ai clienti di caricare e sincronizzare il contenuto. L'articolo Novità di Microsoft e FTP? introduce le nuove funzionalità FTP. Ecco le novità:

  • Integrazione con IIS:

    • Nuovo archivio di configurazione basato sul formato XML .NET *.config
    • Nuovo strumento di amministrazione
  • Sicurezza e supporto per nuovi standard Internet:

    • FTP tramite SSL
    • Account non Windows per l'autenticazione
    • UTF8 e IPv6
  • Miglioramenti dell'hosting condiviso:

    • Ospitare contenuto FTP e Web dallo stesso sito aggiungendo un'associazione FTP a un sito Web esistente
    • Supporto del nome host virtuale, rendendo possibile ospitare più siti FTP nello stesso indirizzo IP
    • Miglioramento dell'isolamento degli utenti tramite directory virtuali per utente
  • Funzionalità di registrazione e supporto migliorate:

    • La registrazione FTP avanzata include tutto il traffico correlato a FTP, il rilevamento univoco per le sessioni FTP, gli stati secondari FTP e altri campi di dettaglio nei log FTP
    • Risposte dettagliate sugli errori durante l'accesso in locale a un server FTP
    • Informazioni dettagliate quando si usa Traccia eventi per Windows (ETW), che fornisce informazioni aggiuntive per la risoluzione dei problemi

Il video seguente offre una panoramica e dimostrazioni di diverse funzionalità in FTP 7.0.

Distribuzione di FTP

FTP è uno dei server front-end nella condivisa.

Diagramma della distribuzione del servizio F T P che implica le interazioni tra i server front-end e back-end.

Questa immagine evidenzia diverse caratteristiche importanti della distribuzione FTP nell'ambiente di hosting condiviso:

  1. Il servizio FTP può condividere lo stesso computer usato per i servizi Di amministrazione remota (Gestione Web - WMSVC) e MS Deploy.
  2. Il computer FTP fa parte della usata dai server della web farm, il che significa che i componenti installati in questo computer devono trovarsi anche nei server della web farm. Tuttavia, poiché la Web farm non verrà usata per elaborare le richieste FTP, FTP, Gestione Web (WMSVC) e i servizi di distribuzione MS possono essere arrestati.
  3. Il computer FTP non è destinato ad ospitare applicazioni Web.
  4. Il router firewall con connessione Internet esegue l'inoltro della porta del traffico FTP al server FTP.

Configurazione distribuzione

Il server FTP per IIS offre diverse funzionalità che lo rendono ideale per gli scenari di hosting condivisi. Le linee guida seguenti sfruttano la nuova funzionalità di isolamento utenti FTP. Questa funzionalità consente:

  • Gli amministratori per limitare l'accesso utente solo alla directory fisica o virtuale definita per l'utente. Ciò significa implementare un singolo sito FTP; questo sito conterrà una directory fisica o virtuale specifica per ogni nome utente.
  • Gli amministratori possono abilitare SSL e usare un singolo certificato per tutte le connessioni quando richiesto in modo esplicito dagli utenti.
  • Gli utenti per visualizzare il sito FTP come se fossero solo i loro. Quando accedono al server FTP, saranno limitati alla directory specifica e non saranno in grado di spostarsi verso l'alto dell'albero delle directory.

Passaggi

  1. Selezionare il computer FTP e installare il nuovo FTP per il servizio IIS. Seguire le istruzioni riportate in .

  2. Creare una cartella radice da usare per il sito FTP, ad esempio: %*SystemDrive*%\inetpub\ftproot.

  3. Facoltativamente, se sono presenti requisiti di disponibilità elevata FTP e/o bilanciamento del carico, Microsoft offre soluzioni quali Bilanciamento carico di rete bilanciamento del carico di o , il round robin DNS potrebbe essere sufficiente.

  4. Creare un sito che consente connessioni SSL e autenticazione di base. Seguire la procedura descritta nella sezione Crea sito abilitato PER SSL .

  5. Abilitare la funzionalità Isolamento utenti. Seguire la procedura descritta nella sezione Configura isolamento utente per tutte le directory .

  6. Configurare le impostazioni del firewall FTP come descritto nella sezione corrispondente seguente.

  7. Arrestare il servizio di attivazione dei processi di Windows (WAS):

    • Al prompt dei comandi digitare services.msc Verrà visualizzata la console servizi.
      Screenshot della console di Servizi con il servizio attivazione processi di Windows selezionato.
    • Fare doppio clic su Servizio attivazione processo di Windows.
      Screenshot delle proprietà del servizio attivazione processo di Windows con tipo di avvio impostato su Disabilitato.
    • Nella finestra di dialogo Proprietà servizio attivazione processo windows assicurarsi che il tipo di avvio per questo servizio sia impostato su Disabilitato. Fare clic su Arresta e quindi su OK.

Creare il sito abilitato per SSL

In questa sezione verrà creato un nuovo sito FTP che può essere aperto usando uno degli account utente.

  1. Passare a Gestione IIS. Nel riquadro Connessioni fare clic sul nodo Siti nell'albero.

  2. Fare clic con il pulsante destro del mouse sul nodo Siti nell'albero e scegliere Aggiungi sito FTP oppure fare clic su Aggiungi sito FTP nel riquadro Azioni.
    Screenshot di un'opzione Aggiungi sito F T P evidenziata dopo aver fatto clic con il pulsante destro del mouse su Siti nel riquadro Connessioni.

  3. Quando viene visualizzata l'Aggiunta guidata sito FTP:

    • Immettere "Nuovo sito FTP" nella casella di testo nome sito FTP e quindi passare alla cartella radice creata per il sito FTP (ad esempio: %*SystemDrive*%\inetpub\ftproot).

      Nota

      Se si sceglie di digitare nel percorso della cartella del contenuto, è possibile usare le variabili di ambiente nei percorsi.

    • Fare clic su Avanti.
      Screenshot della finestra di dialogo Aggiungi sito F T P con le informazioni del sito specificate.

  4. Nella pagina successiva della procedura guidata:

    • Scegliere un indirizzo IP per il sito FTP nella casella di testo Indirizzo IP oppure scegliere di accettare la selezione predefinita di "All Unassigned". In questo esempio viene usato l'IP di loopback locale "127.0.0.1".
    • Immettere la porta TCP/IP per il sito FTP nella casella di testo Porta . In questo esempio viene usata la porta predefinita "21".
    • Assicurarsi che la casella di testo Host virtuale sia vuota. Non usare un nome host.
    • Assicurarsi che l'elenco a discesa Certificati sia impostato sul certificato appropriato che si intende usare. In questo esempio viene usato un certificato autofirmato denominato "Certificato FTP personale". Per istruzioni, vedere .
    • Assicurarsi che l'opzione Consenti SSL sia selezionata.
    • Fare clic su Avanti.
      Screenshot della finestra di dialogo Aggiungi sito F T con l'associazione e le impostazioni S L specificate.
  5. Nella pagina successiva della procedura guidata:

    • Selezionare Basic per le impostazioni di autenticazione .

    • Per le impostazioni di autorizzazione :

      • Scegliere "Tutti gli utenti" dall'elenco a discesa Consenti l'accesso.
      • Selezionare Lettura e scrittura per l'opzione Autorizzazioni .
    • Al termine di questi elementi, fare clic su Fine.
      Screenshot della finestra di dialogo Aggiungi sito F T con le informazioni di autenticazione e autorizzazione specificate.

Riepilogo

È stato creato un nuovo sito FTP basato su SSL usando il nuovo servizio FTP. Esaminare gli elementi completati in questa procedura:

  • È stato creato un nuovo sito FTP denominato "My New FTP Site" che inserisce la radice del contenuto del sito in %*SystemDrive*%\inetpub\ftproot.
  • È stato associato il sito FTP all'indirizzo IP per il computer sulla porta 21.
  • Si è scelto di consentire Secure Sockets Layer (SSL) per il sito FTP e selezionare il certificato.
  • È stata abilitata l'autenticazione di base e è stata creata una regola di autorizzazione per tutti gli account utente per l'accesso in lettura e scrittura.

Per la modifica diretta dei file di configurazione XML, vedere modificando i file di configurazione IIS.

Configurare l'isolamento utente per tutte le directory

Quando si isolano gli utenti per tutte le directory, tutte le sessioni utente FTP sono limitate alla directory fisica o virtuale con lo stesso nome dell'account utente FTP. Inoltre, tutte le directory virtuali globali create verranno ignorate. In questo passaggio verrà configurato l'isolamento utente per tutte le directory.

  1. Creare una cartella in %*SystemDrive*%\inetpub\ftproot\LocalUser\. Questa cartella conterrà tutte le directory dell'account utente locale. È possibile creare questa cartella nel server di condivisione file (NAS). Quando si effettua il provisioning degli account utente, è necessario assegnare anche l'accesso in lettura e scrittura alle cartelle di contenuto degli utenti.
  2. In Gestione IIS fare clic sul nodo per il sito FTP appena creato. Verranno visualizzate le icone per tutte le funzionalità FTP.
  3. Fare doppio clic sull'icona Ftp User Isolation (Isolamento utente FTP) per aprire la funzionalità di isolamento utente FTP.
    Screenshot del riquadro My New F T P Site Home con F T P User Isolation selezionato.
  4. Quando viene visualizzata la pagina della funzionalità Isolamento utenti FTP, selezionare Directory nome utente (disabilita directory virtuali globali) e quindi fare clic su Applica nel riquadro Azioni.
    Screenshot del riquadro F T P User Isolation con la limitazione degli utenti alla directory Nome utente.

Riepilogo

Verifica degli elementi completati in questa procedura: l'isolamento utente FTP è stato configurato usando l'opzione Nome utente (disabilita directory virtuali globali). Quando si usa questa modalità di isolamento utente, tutte le sessioni utente FTP sono limitate alla directory virtuale o fisica con lo stesso nome dell'account utente FTP e tutte le directory virtuali globali create verranno ignorate.

Per creare le home directory per ogni utente, è innanzitutto necessario creare una directory virtuale o fisica nella cartella radice del server FTP denominata dopo il dominio o denominato LocalUser per gli account utente locali. Successivamente, è necessario creare una directory virtuale o fisica per ogni account utente che accederà al sito FTP. La tabella seguente elenca la sintassi della home directory per i provider di autenticazione forniti con il servizio FTP:

Tipo di account utente Sintassi della home directory fisica
Utenti anonimi % FtpRoot%\LocalUser\Public
Account utente di Windows locali (richiede l'autenticazione di base) % FtpRoot%\LocalUser\%UserName%
Account di dominio di Windows (richiede l'autenticazione di base) % FtpRoot%\%UserDomain%\%UserName%
Gestione IIS o ASP.NET account utente di autenticazione personalizzati % FtpRoot%\LocalUser\%UserName%

Nota

Nella tabella precedente %FtpRoot% è la directory radice per il sito FTP; ad esempio . C:\Inetpub\Ftproot

Le directory virtuali globali vengono ignorate; non è possibile accedere alle directory virtuali configurate a livello radice del sito FTP da parte di utenti FTP. Tutte le directory virtuali devono essere definite in modo esplicito nel percorso della home directory fisica o virtuale di un utente.

Configurare le impostazioni del firewall FTP

Configurare l'intervallo di porte passivo per il servizio FTP

In questa sezione verrà configurato l'intervallo di porte a livello di server per le connessioni passive al servizio FTP. Eseguire la procedura descritta di seguito:

  1. Passare a Gestione IIS. Nel riquadro Connessioni fare clic sul nodo a livello di server nell'albero.
    Screenshot dell'opzione MY SERVER selezionata nel riquadro Connessioni con il riquadro Home di MY SERVER visualizzato.

  2. Fare doppio clic sull'icona Supporto firewall FTP dell'elenco di funzionalità.
    Screenshot del supporto firewall F T P selezionato nel riquadro Home di MY SERVER.

  3. Immettere un intervallo di valori per l'Intervallo di porte canale dati.
    Screenshot dell'intervallo di porte del canale dati impostato su un valore pari a 49152 trattino 65535 nel riquadro Supporto firewall F T P.

  4. Dopo aver immesso l'intervallo di porte per il servizio FTP, fare clic su Applica nel riquadro Azioni per salvare le impostazioni di configurazione.

    Nota

    • L'intervallo valido per le porte è 1025-65535. Le porte 1-1024 sono riservate per l'uso da parte dei servizi di sistema.

    • È possibile immettere un intervallo di porte speciale "0-0" per configurare il server FTP per l'uso dell'intervallo di porte dinamiche TCP/IP di Windows.

    • Per altre informazioni, vedere gli articoli della Microsoft Knowledge Base seguenti:

    • Questo intervallo di porte dovrà essere aggiunto alle impostazioni consentite per il server firewall.

  5. Immettere l'indirizzo IPv4 dell'indirizzo esterno per il server firewall per l'impostazione Indirizzo IP esterno del firewall .
    Screenshot dell'indirizzo IP esterno del firewall impostato su un valore di 131 punti 107 punti 0 punto 100.

  6. Dopo aver immesso l'indirizzo IPv4 esterno per il server firewall, fare clic su Applica nel riquadro Azioni per salvare le impostazioni di configurazione.

Riepilogo

Esaminare gli elementi completati in questa procedura:

  1. È stato configurato l'intervallo di porte passivo per il servizio FTP.
  2. È stato configurato l'indirizzo IPv4 esterno per un sito FTP specifico.

Per informazioni su come configurare Windows Server 2008 Firewall, vedere (facoltativo) Passaggio 3: "Configurare le impostazioni di Windows Firewall. Vedere anche altre informazioni sull'uso dei firewall.

Esempi di nomi di server FTP

FTP è un servizio comunemente incluso quando gli host effettuano il provisioning degli account per i clienti. Le istruzioni fornite in precedenza abiliteranno il servizio FTP per i clienti, ma il nome del server FTP, se basato semplicemente sul nome della società di hosting, potrebbe essere simile al seguente:

ftp.hostingcompany.comSuch un nome può essere sufficientemente chiaro per tutti gli utenti; quando i clienti lo usano per connettersi alla directory FTP, verranno inseriti nella directory e potranno visualizzare solo le proprie cartelle. Tuttavia, il nome del server FTP potrebbe non essere interessante per i clienti come nome di server FTP in base al dominio riservato, ad esempio:

  • ftp.customerdomain.com
  • customerdomain.com

Se i clienti hanno il nome del server FTP associato al nome di dominio riservato, l'esperienza del servizio FTP sarà più personalizzata e accattivante. Funzionalmente, è uguale all'esempio precedente, ma questa opzione semplifica la denominazione del dominio per il cliente. Per configurare un nome server FTP personalizzato per ogni cliente, è necessario creare record DNS appropriati per il dominio del cliente. Questa operazione richiederà passaggi aggiuntivi per il provisioning. Se si specifica un nome server FTP personalizzato per ogni cliente, è anche possibile specificare un nome server alternativo per evitare interruzioni del servizio FTP quando i nomi di dominio vengono aggiornati. Un esempio di nome alternativo da fornire insieme al nome personalizzato potrebbe essere simile a:ftp.username.hostingcompany.comIn questo caso, i clienti riceveranno due nomi di server e sarebbero in grado di connettersi alla stessa directory usando uno dei due nomi; Per esempio:

  • ftp.customerdomain.com (o customerdomain.com)
  • ftp.username.hostingcompany.com

Connettersi da Visual Web Developer

Questo articolo si è concentrato finora su come distribuire FTP in un ambiente di hosting condiviso. Questa sezione descrive come i clienti possono sfruttare Visual Web Developer 2008 (VWD) per pubblicare le applicazioni Web usando il servizio FTP fornito dall'hoster. Nell'esempio seguente si presuppone che:

  • La società di hosting ha effettuato il provisioning di un account a un utente denominato "ftpuser1".
  • La società di hosting ha creato la cartella virtuale corrispondente "ftproot\LocalUser*ftpuser1*".

Per pubblicare il contenuto dell'applicazione Web con VWD, ftpuser1 esegue la procedura seguente:

  1. Ftpuser1 apre il sito Web denominato "WebSite1" in Visual Web Developer 2008 (VWD).
    Screenshot del codice H T M L per Default dot a s p x in Visual Web Developer.

  2. Ftpuser1 seleziona Copia sito Web dal menu Sito Web.
    Screenshot dell'apertura dell'opzione Sito Web sulla barra degli strumenti e selezione di Copia sito Web.

  3. Ftpuser1 fa clic su Connetti.
    Screenshot prima di connettere la copia del sito Web al server F T P specificato.

  4. Ftpuser1 immette i valori seguenti:

    • Nome del server FTP fornito dalla società di hosting. Nell'esempio seguente l'indirizzo IP di loopback è 127.0.0.1.
    • Porta. Nell'esempio seguente il valore predefinito è la porta 21.
    • Opzione Modalità passiva.
    • Opzione di autenticazione di base. Ftpuser1 deseleziona l'account di accesso anonimo.
    • Nome utente: ftpuser1.
    • Password.
  5. Ftpuser1 fa quindi clic su Apri.
    Screenshot della finestra di dialogo Apri sito Web con le informazioni del sito F P specificate.

  6. La cartella di Ftpuser1 viene visualizzata nel riquadro Sito Web remoto. Nell'esempio seguente il riquadro è vuoto perché ftpuser1 pubblica il sito Web per la prima volta.
    Screenshot di un riquadro Sito Web remoto vuoto dopo l'apertura del sito Web F T P.

  7. Ftpuser1 pubblica tutti gli elementi di contenuto nel riquadro Sito Web di origine selezionando tutti i file e le cartelle e quindi facendo clic su Sincronizza:

    • Ftpuser1 fa clic sul riquadro sinistro.
    • Tipi Ftpuser1 CTRL+A per selezionare tutti i file.
    • Ftpuser1 fa clic su Sincronizza (situato tra i due riquadri, terzo pulsante dall'alto).
      Screenshot prima di sincronizzare tutti i file selezionati nel riquadro Sito Web di origine.
  8. I file e le cartelle vengono caricati nel server FTP e archiviati nella directory virtuale dell'utente: ftpuser1. L'utente non sarà a conoscenza del contenuto di altri utenti nello stesso server a causa della restrizione di isolamento utente.
    Screenshot dopo la sincronizzazione con copie dei file sincronizzati nel riquadro Sito Web remoto.

Conclusione

Questa guida fornisce le informazioni necessarie per installare e configurare un servizio FTP per IIS in un ambiente di hosting condiviso. Illustra anche come i clienti possono sfruttare Visual Web Developer per pubblicare il contenuto nella directory del sito FTP.