Installieren eines sicheren FTP-Servers unter Windows mithilfe von IIS
Microsoft File Transfer Protocol (FTP)Der Dienst umfasst Funktionen, die es Webautoren ermöglichen, Inhalte besser als zuvor zu veröffentlichen, indem sie mehreren Benutzern den Zugriff auf ihre Verzeichnisse ermöglichen, ohne Zugriff auf die Verzeichnisse anderer Benutzer zu erhalten. Dies bietet Webadministratoren mehr Sicherheit und Bereitstellungsmöglichkeiten.
Eine dieser Funktionen ist bekannt alsFTP über Secure Sockets Layer (SSL) oder FTPS. FTPS ermöglicht die Verschlüsselung von Sitzungen zwischen einem FTP-Client und einem Server. Es handelt sich um eine Erweiterung des häufig verwendeten File Transfer Protocol (FTP), die Unterstützung für Transport Layer Security (TLS) hinzufügt, früher bekannt als Secure Sockets Layer (SSL). FTPS sollte nicht mit FTP über SSH verwechselt werden, bei dem FTP über eine SSH-Verbindung getunnelt wird. oder SSH File Transfer Protocol (SFTP), ein sicheres Dateiübertragungssubsystem für das Secure Shell (SSH)-Protokoll – das auf IIS nicht unterstützt wird.
In diesem Artikel führen wir Sie durch den Prozess der Installation eines FTPS-Servers (Secure FTP) unter Windows mithilfe von IIS. Zu den Schritten, die zum Abschließen der Verfahren in diesem Artikel erforderlich sind, gehören:
- Installieren von IIS- und FTP-Serverfunktionen.
- Erstellen eines SSL-Zertifikats.
- Arbeiten mit Servern hinter einer externen Firewall/NAT.
- Erstellen eines neuen FTP-Benutzers mit Windows.
- Erstellen der neuen FTP-Site in IIS.
- Binden des Zertifikats an TLS/SSL in IIS.
- Konfigurieren der FTP-Authentifizierung und -Autorisierung.
- Testen Sie Ihren neuen FTP-Server.
Installieren von IIS- und FTP-Serverfunktionen
IIS ist auf den meisten Windows-Servern standardmäßig installiert, die FTP-Serverfunktion ist jedoch normalerweise standardmäßig deaktiviert. Daher besteht der erste Schritt darin, die FTP-Serverfunktionen zu aktivieren. Führen Sie die folgenden Schritte aus, um die FTP-Serverfunktion auf Windows Server 2022, Windows Server 2019, Windows Server 2016 oder Windows Server 2012 zu aktivieren:
- Gehen Sie in Windows im Server-Manager zum Dashboard und führen Sie „Verwalten >> Rollen und Funktionen hinzufügen“ aus.
- Im Assistenten zum Hinzufügen von Rollen und Funktionen: Fahren Sie mit dem Schritt „Installationstyp“ fort und bestätigen Sie die rollenbasierte oder funktionsbasierte Installation.
- Fahren Sie mit dem Schritt „Serverrollen“ fort und überprüfen Sie die Rolle des Webservers (IIS). Beachten Sie, dass dies bereits überprüft wird, wenn Sie zuvor IIS als Webserver installiert hatten. Wenn Sie aufgefordert werden, das IIS-Verwaltungskonsolentool zu installieren, bestätigen Sie dies.
- Fahren Sie mit dem Schritt „Webserverrolle (IIS) >> Rollendienste“ fort und überprüfen Sie den FTP-Server-Rollendienst. Deaktivieren Sie den Webserver-Rollendienst, wenn Sie ihn nicht benötigen.
- Bestätigen Sie Ihre Installation, indem Sie auf „Weiter“ klicken, fahren Sie mit der Installation fort und warten Sie, bis die Installation abgeschlossen ist.
Erstellen eines TLS/SSL-Zertifikats für den FTPS-Server
Ihr FTP-Server benötigt ein TLS/SSL-Zertifikat, um eine sichere Verbindung zwischen Client und Server herzustellen. Das Zertifikat enthält Informationen über die Identität des Servers sowie die Verschlüsselungstechnik, die zum Aufbau des sicheren Kanals verwendet wird. Dies erleichtert Endbenutzern die Überprüfung der Identität eines Remotecomputers. Je nach Anwendungsfall oder Szenario kann das TLS/SSL-Zertifikat entweder selbstsigniert, domänensigniert oder von einem Drittanbieter signiert sein.
- Selbstsignierte Zertifikate werden auf internen Websites verwendet. In solchen Fällen erhalten Benutzer Ihres FTPS-Servers jedoch immer eine Sicherheitswarnung. Dies liegt daran, dass es keine Möglichkeit gibt, nachzuweisen, dass die Identität Ihnen gehört, es sei denn, sie wurde von einer Zertifizierungsstelle (CA) erstellt.
- Domänenzertifikate werden innerhalb von Domänen verwendet und von der Zertifizierungsstelle der Organisation signiert. Interne Benutzer erhalten keine Sicherheitswarnung, Benutzer außerhalb der Domäne jedoch.
- Von Dritten signierte Zertifikate werden auf Produktionsservern verwendet, da sie von einer Zertifizierungsstelle (CA) unterstützt werden. Von einer Zertifizierungsstelle signierte Zertifikate bieten FTP-Clients die Gewissheit, dass Ihr Server der ist, für den er sich ausgibt.
Mit IIS können Sie ein selbstsigniertes und ein Domänenzertifikat erstellen. Um eine zu erstellen selbstsigniertes Zertifikat, folgen Sie den unteren Schritten:
- Öffnen Sie im IIS-Manager IIS >> Serverzertifikate.
- Wählen Sie im Menü „Aktionen“ auf der rechten Seite des IIS-Managers die Option „Selbstsigniertes Zertifikat erstellen“.
- Geben Sie einen Zertifikatsnamen an (z. B. „Mein FTP-Zertifikat“) und klicken Sie zum Absenden auf „OK“.
- Um eine zu erstellen Domänenzertifikat, folgen Sie den unteren Schritten:
- Gehen Sie zu Serverzertifikate und wählen Sie „Domänenzertifikat erstellen“.
Bei der Registrierung und Erstellung einer Zertifikatssignierungsanforderung (Certificate Signing Request, CSR) müssen Sie Informationen zum Distinguished Name (DN) angeben.
- Geben Sie im Feld „Common Name“ den Fully Qualified Domain Name (FQDN) des Computers oder Webservers ein.
- Verwenden Sie unter Organisation den offiziellen Firmennamen.
- Verwenden Sie in der Organisationseinheit (OU) die Abteilung oder den Bereich (optional für Active Directory-Domänen).
- Geben Sie die Online-CA in Ihrer Domain an. Wenn eine Online-Zertifizierungsstelle online ist, sollte die Option „Auswählen“ verfügbar sein. Wenn die Option „Auswählen“ nicht verfügbar ist, können Sie den DA mit der entsprechenden Benennung angeben, z. B. CertificateAuthorityNameNameServerName.
Arbeiten mit Servern hinter einer externen Firewall/NAT
Wenn sich Ihr Server hinter einer externen Firewall/NAT befindet, müssen Sie dem FTP-Server seine externe IP-Adresse mitteilen, um Verbindungen im passiven Modus zu ermöglichen. Führen Sie die folgenden Schritte aus, um diesen Vorgang abzuschließen:
- Öffnen Sie im IIS-Manager FTP >> FTP-Firewall-Unterstützung.
- Geben Sie die externe IP-Adresse Ihres Servers an.
Für Microsoft Azure Windows-Server finden Sie die externe IP-Adresse im Abschnitt „Öffentliche IP-Adresse“ der Seite der virtuellen Maschine.
Wenn Sie hinter einer externen Firewall arbeiten, müssen Sie zusätzlich zum FTP-Port 21 und möglicherweise einem impliziten TLS/SSL-FTP-Port 990 auch Ports für Datenverbindungen öffnen. Wahrscheinlich möchten Sie nicht den gesamten Standard-Portbereich öffnen 1024-65535. In einem solchen Fall müssen Sie den FTP-Server anweisen, nur den Bereich zu verwenden, der in der Firewall geöffnet ist. Verwenden Sie dazu ein Feld „Datenkanal-Portbereich“. Jedes Mal, wenn Sie diesen Bereich ändern, müssen Sie den FTP-Dienst neu starten.
- Klicken Sie auf Aktion anwenden, um Ihre Einstellungen zu übermitteln.
Einige externe Firewalls sind in der Lage, die FTP-Steuerungsverbindung zu überwachen und die Datenverbindungsports bei Bedarf automatisch zu öffnen und zu schließen. Sie müssen also nicht ständig den gesamten Portbereich geöffnet haben, auch wenn er nicht verwendet wird. Dies funktioniert mit dem sicheren FTPS nicht, da die Steuerverbindung verschlüsselt ist und von der Firewall nicht überwacht werden kann.
Auf Windows-Rechnern wird bei der Installation des IIS-FTP-Servers automatisch eine interne Windows-Firewall mit Regeln für die Ports 21, 990 und 1024-65535 konfiguriert. Bei einigen Windows-Versionen sind die Regeln zunächst nicht aktiviert. Um die Regeln zu aktivieren oder zu ändern, führen Sie die folgenden Schritte aus:
- Gehen Sie zu Systemsteuerung >> System und Sicherheit >> Windows Defender-Firewall >> Erweiterte Einstellungen >> Eingehende Regeln und suchen Sie drei „FTP-Server“-Regeln.
- Wenn die Regeln nicht aktiviert sind, klicken Sie auf Aktionen >> Regel aktivieren.
Erstellen eines neuen FTP-Benutzers mit Windows
In diesem Abschnitt zeigen wir Ihnen, wie Sie einen neuen Benutzer erstellen, um mit den entsprechenden Berechtigungen eine Verbindung zum FTPS-Server herzustellen. Hier sind die Schritte, die Sie unternehmen müssen:
- Öffnen Sie „Lokale Benutzer und Gruppen“ auf Ihrem Windows-Server. Gehen Sie zu Server-Manager >> Extras >> Computerverwaltung. Erweitern Sie die Systemtools >> und öffnen Sie „Lokale Benutzer und Gruppen“.
- Alternativ können Sie die Tastenkombination Win+R verwenden, um „Ausführen“ zu öffnen und „lusrmgr.msc“ einzugeben.
- Gehen Sie zu Aktion und klicken Sie auf „Neuer Benutzer“.
- Geben Sie im Fenster „Neuer Benutzer“ die Anmeldeinformationen des Benutzers ein.
- Klicken Sie auf „Erstellen“.
Jetzt müssen Sie dem neuen Benutzer die Berechtigung für den FTP-Stammordner erteilen
- Der Standardordner in IIS zum Speichern von Inhalten heißt „inetpub“. Gehen Sie zu C:inetpub und suchen Sie den Ordner „ftproot“.
- Klicken Sie mit der rechten Maustaste darauf und öffnen Sie „Eigenschaften“.
- Gehen Sie zur Registerkarte „Sicherheit“ >> und klicken Sie dann auf „Bearbeiten“, suchen Sie den Benutzer, den Sie zuvor erstellt haben, und legen Sie die Berechtigungen fest. Beispielsweise können Sie den Benutzerzugriff auf die Ressourcen des FTP-Root-Ordners einschränken oder zulassen.
Nachdem wir nun einen Benutzer mit den richtigen Berechtigungen erstellt haben, müssen wir eine FTP-Site erstellen, die nur vom Benutzer mit den richtigen Berechtigungen geöffnet werden kann.
Erstellen der neuen FTP-Site in IIS
Eine FTP-Site ist ein Server, auf den von außerhalb des LAN zugegriffen werden kann – von jedem Ort im Internet. Klicken Sie im Bereich „Verbindungen“ in der Struktur auf den Knoten „Sites“.
- Öffnen Sie den IIS-Manager >> gehen Sie zu Ihrem Heimserver >> klicken Sie im Bereich „Verbindungen“ auf den Knoten „Sites“ in der Struktur.
- FTP-Site hinzufügen. Klicken Sie mit der rechten Maustaste auf den Knoten „Sites“ in der Struktur und klicken Sie auf „FTP-Site hinzufügen“, oder klicken Sie im Bereich „Aktionen“ auf „FTP-Site hinzufügen“.
- Wenn der Assistent zum Hinzufügen einer FTP-Site angezeigt wird, geben Sie die Informationen der FTP-Site (z. B. „Meine neue FTP-Site“) und den physischen Pfad des Inhaltsverzeichnisses (z. B. %SystemDrive%inetpubftproot) in das Feld „Name der FTP-Site“ ein. Unabhängig davon, welchen Pfad Sie hier ausgewählt haben, stellen Sie sicher, dass er über die richtigen Berechtigungen zum Zulassen oder Einschränken des Zugriffs verfügt.
- Weiter klicken
Bindung des Zertifikats an TLS/SSL in IIS
Auf der nächsten Seite des Assistenten werden wir versuchen, das Zertifikat an TLS/SSL in IIS zu binden. Sie können TLS/SSL-Zertifikate während oder nach der Erstellung Ihrer FTP-Site binden. Führen Sie die folgenden Schritte aus, um den Vorgang abzuschließen:
- Wählen Sie im Dropdown-Menü „IP-Adresse“ eine IP-Adresse für Ihre FTP-Site aus oder akzeptieren Sie die Standardauswahl „Alle nicht zugewiesen“.
- Geben Sie im Feld „Port“ den TCP/IP-Port für die FTP-Site ein. Akzeptieren Sie für diese exemplarische Vorgehensweise den Standardport 21. FTPS verwendet Port 21 für seine expliziten FTPS-Steuerverbindungen und Port 990 für die impliziten FTPS-Steuerverbindungen.
- Optional können Sie die Option „FTP-Site automatisch starten“ aktivieren. Diese Option ist hilfreich, wenn der Server ausfällt. IIS startet die FTPS-Site automatisch, nachdem der Server wieder online ist
- Für diese exemplarische Vorgehensweise verwenden wir keinen Hostnamen. Stellen Sie daher sicher, dass das Feld „Virtual Host“ leer ist.
- Stellen Sie sicher, dass das Dropdown-Menü „Zertifikate“ auf Ihr TLS/SSL-Zertifikat eingestellt ist. Sie können dies tun, indem Sie Ihr selbstsigniertes Zertifikat oder Domänenzertifikat auswählen oder jedes auf andere Weise erstellte Zertifikat durchsuchen.
- Stellen Sie sicher, dass die SSL zulassen Option ausgewählt ist.
- Weiter klicken.
- Klicken Sie erneut auf Weiter.
Konfigurieren Sie die FTP-Authentifizierung und -Autorisierung
Auf der nächsten Seite des Assistenten können Sie festlegen, wer und wie Benutzer eine Verbindung zu Ihrem FTPS-Server herstellen.
Sie können „Anonym“ (Verschlüsselung aktiviert) oder „Basis“ (keine Verschlüsselung) auswählen, was vom Typ des SSL-Zertifikats abhängt.
- Wählen Sie für diese exemplarische Vorgehensweise „Basic“ für die Authentifizierungseinstellungen aus.
Für die Autorisierungseinstellungen:
- Wählen Sie „Bestimmte Benutzer“ aus der Dropdown-Liste „Zugriff zulassen für“.
- Geben Sie „administrator“ als Benutzernamen ein.
- Wählen Sie „Lesen und Schreiben“ für die Option „Berechtigungen“. Wenn Sie diese Elemente abgeschlossen haben, klicken Sie auf Fertig stellen.
Testen Sie Ihren neuen FTP-Server
Sobald die oben genannten Schritte abgeschlossen sind, besteht der letzte Schritt darin, zu überprüfen, ob Ihr FTPS-Server ordnungsgemäß funktioniert. Sie können Ihre Tests vom lokalen Host aus beginnen, gefolgt von Clients von Drittanbietern.
- Um vom Localhost aus zu testen, gehen Sie einfach zu einem beliebigen Webbrowser auf Ihrem Server und geben Sie „FTP://localhost“ ein.
Für Tests auf Basis Dritter gilt: Solarwind Serv-U verwalteter Dateiübertragungsserver ist ein tolles Werkzeug. Serv-U Managed File Transfer Server ist eine zuverlässige FTP-Serversoftware für die sichere Dateiübertragung. Es bietet eine bessere Sicherheit und Kontrolle über Dateiübertragungen innerhalb und außerhalb Ihres Unternehmens.