Konfigurieren der FTP-Benutzerisolierung in IIS 7
von Robert McMurray
Kompatibilität
Version | Hinweise |
---|---|
IIS 7.5 | Der FTP 7.5-Dienst wird als Funktion für IIS 7.5 in Windows 7 und Windows Server 2008 R2 bereitgestellt. |
IIS 7.0 | Die Dienste FTP 7.0 und FTP 7.5 wurden für IIS 7.0 out-of-band bereitgestellt. Dazu musste der Dienst von der folgenden URL heruntergeladen und installiert werden: https://www.iis.net/downloads/microsoft/ftp. |
Einführung
Microsoft hat einen neuen FTP-Dienst entwickelt, der für Windows Server® 2008 komplett neu geschrieben wurde. Dieser neue FTP-Dienst enthält viele neue Funktionen, die es Web-Autoren ermöglichen, Inhalte besser als bisher zu veröffentlichen, und bietet Web-Administratoren mehr Sicherheit und Bereitstellungsmöglichkeiten.
Dieses Dokument führt Sie durch die verschiedenen FTP-Benutzerisolationseinstellungen, die mithilfe der neuen FTP-Benutzeroberfläche und durch die direkte Bearbeitung der IIS-Konfigurationsdateien eingerichtet werden können.
Hinweis
Diese Ablaufbeschreibung enthält eine Reihe von Schritten, bei denen Sie sich mit dem lokalen Administratorkonto bei der FTP-Site anmelden müssen. Diese Schritte sollten nur auf dem Server selbst unter Verwendung der Loopbackadresse oder über SSL von einem Remoteserver aus befolgt werden. Wenn Sie es vorziehen, ein separates Benutzerkonto anstelle des Administratorkontos zu verwenden, müssen Sie die entsprechenden Ordner erstellen und bei Bedarf die richtigen Berechtigungen für dieses Benutzerkonto festlegen.
Voraussetzungen
Sie benötigen die folgenden Dinge, um die in diesem Artikel beschriebenen Verfahren durchzuführen:
IIS 7 muss auf dem Server vom Typ Windows Server 2008 RC0 installiert sein, und der Internetinformationsdienste-Manager muss installiert sein.
Der neue FTP-Dienst muss installiert sein. Sie können den FTP-Dienst über einen der folgenden Links von der Website https://www.iis.net/ herunterladen und installieren:
- FTP 7 für IIS 7.0 (x64)
- FTP 7 für IIS 7.0 (x86)
Sie müssen einen Stammordner für die FTP-Veröffentlichung erstellen:
Erstellen Sie einen Ordner unter
%SystemDrive%\inetpub\ftproot
Legen Sie die Berechtigungen fest, um anonymen Zugriff zu ermöglichen:
Öffnen Sie eine Eingabeaufforderung.
Geben Sie folgenden Befehl ein:
ICACLS "%SystemDrive%\inetpub\ftproot" /Grant IUSR:R /T
Schließen Sie die Eingabeaufforderung.
Sie müssen zusätzliche Inhaltsordner erstellen:
- Erstellen Sie einen Ordner unter
%SystemDrive%\inetpub\ftproot\LocalUser\Public
- Erstellen Sie einen Ordner unter
%SystemDrive%\inetpub\adminfiles
- Erstellen Sie einen Ordner unter
Verwenden des FTP-Site-Assistenten zum Erstellen einer FTP-Site
In diesem ersten Abschnitt erstellen wir eine neue FTP-Site, die von anonymen Benutzern mit schreibgeschütztem Zugriff und vom Administratorkonto aus mit Lese-/Schreibzugriff geöffnet werden kann.
Klicken Sie im IIS-Manager im Bereich Verbindungen auf den Knoten Websites in der Struktur.
Klicken Sie, wie in der Abbildung unten dargestellt, mit der rechten Maustaste auf den Knoten Websites in der Struktur, und klicken Sie auf FTP-Site hinzufügen oder klicken Sie auf FTP-Site hinzufügen im Bereich Aktionen.
Wenn der Assistent FTP-Site hinzufügen angezeigt wird:
- Geben Sie „Meine neue FTP-Site“ in das Feld Name der FTP-Site ein, und navigieren Sie dann zu dem
%SystemDrive%\inetpub\ftproot
Ordner, den Sie im Abschnitt „Voraussetzungen“ erstellt haben. Beachten Sie, dass Sie, wenn Sie den Pfad zum Inhaltsordner eingeben, Umgebungsvariablen in den Pfaden verwenden können. - Wenn Sie diese Einstellungen vorgenommen haben, klicken Sie auf Weiter.
- Geben Sie „Meine neue FTP-Site“ in das Feld Name der FTP-Site ein, und navigieren Sie dann zu dem
Auf der nächsten Seite des Assistenten:
- Normalerweise würden Sie eine IP-Adresse für die FTP-Site aus der Dropdownliste IP-Adresse auswählen. Alternativ können Sie auch die Standardauswahl „Alle nicht zugewiesen“ akzeptieren. Da Sie später in dieser Ablaufbeschreibung das Administratorkonto verwenden werden, sollten Sie sicherstellen, dass Sie den Zugriff auf den Server einschränken und die lokale Loopback-IP-Adresse für Ihren Computer eingeben, indem Sie „127.0.0.1“ in das Feld IP-Adresse eingeben.
- Normalerweise geben Sie den TCP/IP-Port für die FTP-Site in das Feld Port ein. Akzeptieren Sie für diese Ablaufbeschreibung den Standardport 21.
- In dieser Ablaufbeschreibung verwenden Sie keinen Hostnamen. Daher müssen Sie sicherstellen, dass das Feld Virtueller Host leer ist.
- Stellen Sie sicher, dass die Dropdownliste Zertifikate auf „Nicht ausgewählt“ festgelegt ist und die Option SSL zulassen ausgewählt ist.
- Wenn Sie diese Einstellungen vorgenommen haben, klicken Sie auf Weiter.
Auf der nächsten Seite des Assistenten:
- Wählen Sie die Option Anonym für die Authentifizierungs-Einstellungen aus.
- Wählen Sie für die Autorisierungs-Einstellungen die Option „Anonyme Benutzer“ aus der Dropdownliste Zugriff zulassen auf aus, und wählen Sie Lesen als Option unter Berechtigungen aus.
- Klicken Sie auf Fertig stellen, nachdem Sie diese Einstellungen vorgenommen haben.
Klicken Sie im IIS-Manager auf den Knoten für die von Ihnen erstellte FTP-Site; dadurch werden die Symbole für alle FTP-Features angezeigt.
Wir müssen die Standardauthentifizierung hinzufügen, damit sich Benutzer anmelden können. Gehen Sie dafür wie folgt vor: Doppelklicken Sie auf das Symbol der FTP-Authentifizierung, um die Seite der FTP-Authentifizierungsfunktion zu öffnen.
Wenn die Seite FTP-Authentifizierung angezeigt wird, heben Sie die Option Standardauthentifizierung hervor, und klicken Sie dann auf Aktivieren im Bereich Aktionen.
Klicken Sie im IIS-Manager auf den Knoten für die FTP-Site; dadurch werden die Symbole aller FTP-Funktionen angezeigt.
Wir müssen eine Autorisierungsregel hinzufügen, damit sich der Administrator anmelden kann. Gehen Sie dafür wie folgt vor: Doppelklicken Sie auf das Symbol der FTP-Autorisierungsregeln, um die Seite der FTP-Autorisierungsregelfunktion zu öffnen.
Wenn die Seite FTP-Autorisierungsregeln angezeigt wird, klicken Sie auf Zulassungsregel hinzufügen im Bereich Aktionen.
Gehen Sie wie folge vor, wenn das Dialogfeld Zulasssungsautorisierungsregel hinzufügen angezeigt wird:
- Wählen Sie Angegebene Benutzer aus, und geben Sie dann „Administrator“ in das Feld ein.
- Wählen Sie unter Berechtigungen sowohl Lesen als auch Schreiben aus.
- Wenn Sie diese Schritte abgeschlossen haben, klicken Sie auf OK.
Zusammenfassung
Fassen wir nun einmal die Schritte zusammen, die Sie in diesem Abschnitt ausgeführt haben:
- Sie haben eine neue FTP-Site namens "My New FTP Site" erstellt, wobei der Inhaltsstamm der Website hier zu finden ist:
%SystemDrive%\inetpub\ftproot
. - Sie haben die FTP-Site an die lokale Loopbackadresse Ihres Computers an Port 21 gebunden, und wir haben uns dafür entschieden, Secure Sockets Layer (SSL) nicht für die FTP-Site zu verwenden.
- Sie haben eine Standardregel für die FTP-Site erstellt, um anonymen Benutzern den „Lesezugriff“ auf die Dateien zu ermöglichen.
- Sie haben eine Autorisierungsregel hinzugefügt, mit der das Administratorkonto sowohl Lese- als auch Schreibzugriff für die FTP-Site hat.
- Sie haben der FTP-Site die Standardauthentifizierung hinzugefügt.
Untersuchen der neuen FTP-Benutzerisolationseinstellungen
Klicken Sie im IIS-Manager auf den Knoten für die von Ihnen erstellte FTP-Site; dadurch werden die Symbole für alle FTP-Features angezeigt.
Doppelklicken Sie auf das Symbol der FTP-Benutzerisolation, um die FTP-Benutzerisolationsfunktion zu öffnen.
Wenn die Seite der Funktion FTP-Benutzerisolation angezeigt wird, beachten Sie, dass fünf verschiedene Optionen verfügbar sind:
Diese fünf Optionen werden wie folgt definiert:
Benutzer nicht isolieren. Benutzer starten in:
FTP-Stammverzeichnis
Mit dieser Option wird bestimmt, dass alle FTP-Sitzungen im Stammverzeichnis der FTP-Site starten.
Hinweis
Diese Option ist für diesen FTP-Server neu und deaktiviert einfach jede der Benutzerisolations- oder Startordnerlogik.
Benutzernamenverzeichnis
Mit dieser Option wird bestimmt, dass alle FTP-Sitzungen im physischen oder virtuellen Verzeichnis mit demselben Namen wie das derzeit angemeldete Benutzerkonto starten, wenn der Ordner vorhanden ist. Andernfalls startet die FTP-Sitzung im Stammverzeichnis der FTP-Site.
Hinweis
Diese Option entspricht der Auswahl keiner Benutzerisolation im IIS 6.0 FTP-Server. Weitere Informationen zur Verwendung dieser Option finden Sie im Abschnitt „Benutzer nicht isolieren-Modus" im Abschnitt Hosten mehrerer FTP-Sites mit FTP-Benutzerisolation (IIS 6.0).
Benutzer isolieren. Benutzer auf das folgende Verzeichnis einschränken:
Benutzernamenverzeichnis (globale virtuelle Verzeichnisse deaktivieren)
Mit dieser Option wird angegeben, dass Sie FTP-Benutzersitzungen im physischen oder virtuellen Verzeichnis mit demselben Namen des FTP-Benutzerkontos isolieren möchten. Der Benutzer sieht nur das eigene FTP-Stammverzeichnis und wird daher daran gehindert, in der physischen oder virtuellen Verzeichnisstruktur in höhere Verzeichnisse zu wechseln. Alle erstellten globalen virtuellen Verzeichnisse werden ignoriert.
Hinweis
Diese Option ist neu auf diesem FTP-Server.
Physisches Verzeichnis des Benutzernamens (globale virtuelle Verzeichnisse aktivieren)
Mit dieser Option wird angegeben, dass Sie FTP-Benutzersitzungen im physischen Verzeichnis mit demselben Namen des FTP-Benutzerkontos isolieren möchten. Der Benutzer bzw. die Benutzerin sieht nur das eigene FTP-Stammverzeichnis und wird daher daran gehindert, in der physischen Verzeichnisstruktur in höhere Verzeichnisse zu wechseln. Alle erstellten globalen virtuellen Verzeichnisse gelten für alle Benutzerkonten.
Hinweis
Diese Option entspricht der Auswahl der Benutzerisolation im IIS 6.0 FTP-Server.
Das FTP-Basisverzeichnis wurde in Active Directory konfiguriert
Mit dieser Option geben Sie an, dass Sie FTP-Benutzersitzungen im Basisverzeichnis isolieren möchten, das in den Active Directory-Kontoeinstellungen für jeden FTP-Benutzer konfiguriert ist.
Konfigurieren der Benutzerisolationseinstellungen durch physische Verzeichnisse
Wenn Sie Benutzer nur durch physische Verzeichnisse isolieren, sind alle FTP-Benutzersitzungen auf das physische Verzeichnis mit demselben Namen des FTP-Benutzerkontos eingeschränkt. Jedoch gelten alle erstellten globalen virtuellen Verzeichnisse für alle Benutzerkonten.
- Klicken Sie im IIS-Manager auf den Knoten für die von Ihnen erstellte FTP-Site; dadurch werden die Symbole für alle FTP-Features angezeigt.
- Doppelklicken Sie auf das Symbol der FTP-Benutzerisolation, um die FTP-Benutzerisolationsfunktion zu öffnen.
- Wenn die Seite mit der Funktion FTP-Benutzerisolation angezeigt wird, wählen Sie die Option Physisches Verzeichnis des Benutzernamens (globale virtuelle Verzeichnisse aktivieren) aus, und klicken Sie dann auf Anwenden im Bereich Aktionen.
Anmeldung bei Ihrer FTP-Site
Sie können sich jetzt mithilfe der Benutzerisolation bei Ihrer FTP-Site anmelden. Es gilt jedoch Folgendes:
- Wenn Sie sich anonym bei Ihrer FTP-Site anmelden, wird Ihre FTP-Site auf den Ordner „LocalUser\Public“ eingeschränkt, den Sie im Abschnitt „Voraussetzungen“ erstellt haben.
- Wenn Sie versuchen, sich mit dem Administratorkonto bei Ihrer FTP-Site anzumelden, wird Ihre Anmeldeanforderung abgelehnt, da für das Administratorkonto kein Basisverzeichnis definiert ist. Damit sich das Administratorkonto anmelden kann, müssen Sie ein Basisverzeichnis für das Administratorkonto unter
%SystemDrive%\inetpub\ftproot\LocalUser\Administrator
erstellen. Im Anschluss, wenn Sie sich mit dem Administratorkonto bei Ihrer FTP-Site angemeldet haben, wird Ihre Sitzung auf den soeben erstellten Ordner „LocalUser\Administrator“ eingeschränkt.
Zusammenfassung
Fassen wir nun die Einstellungen zusammen, die Sie in diesem Schritt vorgenommen haben: Sie haben die FTP-Benutzerisolation mithilfe der Option Physisches Verzeichnis des Benutzernamens (globale virtuelle Verzeichnisse aktivieren) konfiguriert. Bei Verwendung dieses Modus der Benutzerisolation sind alle FTP-Benutzersitzungen auf das physische Verzeichnis mit demselben Namen des FTP-Benutzerkontos eingeschränkt, und alle globalen virtuellen Verzeichnisse, die erstellt werden, gelten für alle Benutzer.
Um Basisverzeichnisse für jeden Benutzer zu erstellen, müssen Sie zuerst ein physisches Verzeichnis unter dem Stammordner des FTP-Servers erstellen, der nach Ihrer Domäne benannt ist oder bei lokalen Benutzerkonten als „LocalUser“ benannt ist. Als Nächstes müssen Sie ein physisches Verzeichnis für jedes Benutzerkonto erstellen, das auf Ihre FTP-Website zugreifen wird. Die folgende Tabelle enthält die Syntax des Basisverzeichnisses für die Authentifizierungsanbieter, die mit dem FTP-Dienst bereitgestellt werden:
Typen von Benutzerkonten | Syntax des physischen Basisverzeichnisses |
---|---|
Anonyme Benutzende | %FtpRoot%\LocalUser\Public |
Lokale Windows-Benutzerkonten (erfordert die Standardauthentifizierung) | %FtpRoot%\LocalUser\%UserName% |
Windows-Domänenkonten (erfordert die Standardauthentifizierung) | %FtpRoot%\%UserDomain%\%UserName% |
Benutzerdefinierte Authentifizierungsbenutzerkonten in IIS-Manager oder ASP.NET | %FtpRoot%\LocalUser\%UserName% |
Hinweis
In der obigen Tabelle ist %FtpRoot% das Stammverzeichnis für Ihre FTP-Site. ‚Zum Beispiel: C:\Inetpub\Ftproot
.
Wichtiger Hinweis: Globale virtuelle Verzeichnisse sind aktiviert. Alle FTP-Benutzer können auf alle virtuellen Verzeichnisse, die auf der Stammebene Ihrer FTP-Site konfiguriert sind, zugreifen, vorausgesetzt, die Benutzer verfügen über ausreichende Berechtigungen.
Konfigurieren der Benutzerisolationseinstellungen für alle Verzeichnisse
Wenn Sie Benutzer für alle Verzeichnisse isolieren, sind alle FTP-Benutzersitzungen auf das physische oder virtuelle Verzeichnis mit demselben Namen des FTP-Benutzerkontos eingeschränkt. Zusätzlich werden alle erstellten globalen virtuellen Verzeichnisse ignoriert. In diesem Schritt konfigurieren Sie die Benutzerisolation für alle Verzeichnisse und fügen ein virtuelles Verzeichnis für den Administrator hinzu.
Klicken Sie im IIS-Manager auf den Knoten für die von Ihnen erstellte FTP-Site; dadurch werden die Symbole für alle FTP-Features angezeigt.
Doppelklicken Sie auf das Symbol der FTP-Benutzerisolation, um die FTP-Benutzerisolationsfunktion zu öffnen.
Wenn die Seite mit der Funktion FTP-Benutzerisolation angezeigt wird, wählen Sie die Option Benutzernamenverzeichnis (globale virtuelle Verzeichnisse deaktivieren) aus, und klicken Sie dann auf Anwenden im Bereich Aktionen.
Erweitern Sie den Strukturknoten für Ihre FTP-Site, klicken Sie dann mit der rechten Maustaste auf den Ordner „LocalUser“, und klicken Sie dann auf Virtuelles Verzeichnis hinzufügen.
Hinweis
In diesem Beispiel ist der Ordner „LocalUser“ ein physisches Verzeichnis, aber es könnte auch ein virtuelles Verzeichnis verwendet werden.
Wenn das Dialogfeld Virtuelles Verzeichnis hinzufügen angezeigt wird:
- Geben Sie "administrator" als Alias ein.
- Geben Sie
%SystemDrive%\inetpub\adminfiles
für den physischen Pfad ein. - Wenn Sie diese Schritte abgeschlossen haben, klicken Sie auf OK.
Anmeldung bei Ihrer FTP-Site
Sie können sich jetzt mithilfe der Benutzerisolation bei Ihrer FTP-Site anmelden. Es gilt jedoch Folgendes:
- Wie bei Schritt 3 wird Ihre Sitzung, wenn Sie sich anonym bei Ihrer FTP-Site anmelden, auf den Ordner „LocalUser\Public“ eingeschränkt, den Sie im Abschnitt „Voraussetzungen“ erstellt haben.
- Wenn Sie sich mit dem Administratorkonto bei Ihrer FTP-Site anmelden, wird Ihre Sitzung auf das virtuelle Verzeichnis „/LocalUser/administrator“ eingeschränkt, das Sie soeben erstellt haben.
Zusammenfassung
Fassen wir nun die Einstellungen zusammen, die Sie in diesem Schritt vorgenommen haben: Sie haben die FTP-Benutzerisolation mithilfe der Option Benutzernamenverzeichnis (globale virtuelle Verzeichnisse deaktivieren) konfiguriert. Bei Verwendung dieses Modus der Benutzerisolation sind alle FTP-Benutzersitzungen auf das virtuelle oder physische Verzeichnis mit demselben Namen des FTP-Benutzerkontos eingeschränkt, und alle globalen virtuellen Verzeichnisse, die erstellt werden, werden ignoriert.
Um Basisverzeichnisse für jeden Benutzer zu erstellen, müssen Sie zuerst ein virtuelles oder physisches Verzeichnis unter dem Stammordner des FTP-Servers erstellen, der nach Ihrer Domäne benannt ist oder bei lokalen Benutzerkonten als „LocalUser“ benannt ist. Als Nächstes müssen Sie ein virtuelles oder physisches Verzeichnis für jedes Benutzerkonto erstellen, das auf Ihre FTP-Website zugreifen wird. Die folgende Tabelle enthält die Syntax des Basisverzeichnisses für die Authentifizierungsanbieter, die mit dem FTP-Dienst bereitgestellt werden:
Typen von Benutzerkonten | Syntax des physischen Basisverzeichnisses |
---|---|
Anonyme Benutzende | %FtpRoot%\LocalUser\Public |
Lokale Windows-Benutzerkonten (erfordert die Standardauthentifizierung) | %FtpRoot%\LocalUser\%UserName% |
Windows-Domänenkonten (erfordert die Standardauthentifizierung) | %FtpRoot%\%UserDomain%\%UserName% |
Benutzerdefinierte Authentifizierungsbenutzerkonten in IIS-Manager oder ASP.NET | %FtpRoot%\LocalUser\%UserName% |
Hinweis
In der obigen Tabelle ist %FtpRoot% das Stammverzeichnis für Ihre FTP-Site. ‚Zum Beispiel: C:\Inetpub\Ftproot
.
Globale virtuelle Verzeichnisse werden ignoriert; FTP-Benutzer können auf keine der virtuellen Verzeichnisse, die auf der Stammebene Ihrer FTP-Site konfiguriert sind, zugreifen. Alle virtuellen Verzeichnisse müssen explizit unter dem physischen oder virtuellen Basisverzeichnispfad des Benutzers definiert werden.