Dez 012011
 
  • Betrifft: IIS 7.0 und IIS 7.5, jeweils mit installiertem FTP
  • System: Microsoft Windows Server 2008 x64, Windows Server 2008 R2 x64
  • Problem: beim Zugriff von einem FTP-Client auf die FTP Funktion vom IIS 7.x erhält man einen GnuTLS Fehlermeldung. Die FTP-Verbindung wird hierbei mittels TLS und SSL-Zertifikat geschützt.

Hintergrund

Seit IIS 7.x wurde die FTP-Funktion komplett überarbeitet. Nun beherrscht die FTP-Komponente im IIS auch eine Verschlüsselung. Zu diesem Zweck wurde eine FTP-Seite mit Zertifikat am Server eingerichtet und bei der FTP-Firewallunterstützung die öffentliche IP-Adresse eingetragen. Auch der Datenkanal-Portbereich wurde entsprechend angepasst.

iis_ftp_firewall

Die externe Firewall wurde entsprechend den gewünschten Einstellungen konfiguriert und leitet die Anfragen weiter. Trotzdem erhält man beim Zugriff auf den FTP-Server nur eine merkwürdige Fehlermeldung. Das Anmelden funktioniert, aber es wird kein Verzeichnisinhalt angezeigt.

GnuTLS error -53: Error in the push function.

550 Data channel timed out.

Der IIS wurde bereits neu gestartet (z.B. via Kommandozeile mit "iisreset /noforce") und etwaige Einstellungen geprüft.

 

Behebung

Die meisten werden an fehlerhaften Einstellungen bei der Firewall denken. Im Prinzip ist dieser Gedanke nicht ganz falsch. Definitiv der falsche Weg wäre hier bei der Windows Firewall herum zu pfuschen, denn diese wird über den Installationsassistenten bereits vorkonfiguriert. Eine Kontrolle wird dies auch zeigen.

windows_firewall_ftp

Der Grund liegt an dem passiven FTP, wo der Aufbau über den Standardport erfolgt, jedoch der Datenaustausch über eigene Ports (siehe Datenkanal-Portbereich). Es wäre aber zwecklos nun das passive FTP zu deaktivieren oder einen anderen Portbereich zu wählen. Die Behebung  ist recht einfach erledigt.

iis_ftp_service
Die FTP-Komponente verwendet einen eigenen Dienst, welcher nichts mit dem IIS Webpublishing zu tun hat. Damit wird dieser Dienst auch nicht über "iisreset" neu gestartet. Womöglich wurde der Datenkanal-Portbereich neu konfiguriert. Dies muss sowieso einmalig auf jeden Computer durchgeführt werden nachdem man die FTP-Komponente installiert hat. Standardmäßig wird nämlich kein konkreter Portbereich vorgegeben.

Für die Übernahme dieser neuen Konfiguration muss der "Microsoft-FTP-Dienst" neu gestartet werden. Die restlichen IIS-Dienste können gestartet bleiben.

 

Entweder man macht dies per Maus über die Diensteverwaltung oder in der Kommandozeile "cmd" mittels den beiden Befehlen "net stop ftpsvc" und "net start ftpsvc". Danach wird die GnuTLS-Fehlermeldung nicht mehr erscheinen.

weitere relevante Beiträge...

 Antworten

Du kannst diese HTML Tags und Attribute benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

(erforderlich)

(erforderlich)