Freigeben über


Standardeinstellungen für FTP-Protokolldateien <logFile->

Übersicht

Das Element <logFile> wird verwendet, um die Standard-Aktivitätsprotokollierungsoptionen für einen FTP-Server zu konfigurieren.

Sie können beispielsweise die Protokollierung aktivieren oder deaktivieren, die Informationskategorien angeben, die in der Protokolldatei gespeichert werden sollen, und das Verzeichnis ändern, in dem die Protokolldatei gespeichert wird. Sie können das <logFile>-Element auch verwenden, um basierend auf der Protokolldateigröße oder dem Zeitintervall und der maximalen Größe (in Byte) einer Protokolldatei zu steuern, wie oft IIS eine neue Protokolldatei erstellt.

Hinweis

Im Gegensatz zu Websites, die das IIS-, NCSA- oder W3C-Format für Protokolldateien verwenden können, speichert der FTP 7-Dienst nur Protokolldateien im W3C-Format.

Sie können die von IIS protokollierten Informationskategorien festlegen, indem Sie das Attribut logExtFileFlags bearbeiten. Die Standardwerte sind Date, Time, ClientIP, UserName, ServerIP, Method, UriStem, FtpStatus, Win32Status, FtpSubStatus, ServerPort, Session und FullPath.

Kompatibilität

Version Hinweise
IIS 10.0 Das <logFile> Element wurde in IIS 10.0 nicht geändert.
IIS 8.5 Das <logFile> Element wurde in IIS 8.5 nicht geändert.
IIS 8.0 Das <logFile> Element wurde in IIS 8.0 nicht geändert.
IIS 7.5 Das <logFile>-Element des <ftpServer>-Elements wird als Feature von IIS 7.5 bereitgestellt.
IIS 7.0 Das <logFile>-Element des <ftpServer>-Elements wurde in FTP 7.0 als separater Download für IIS 7.0 eingeführt.
IIS 6.0 N/V

Hinweis

Die Dienste FTP 7.0 und FTP 7.5 waren nicht im Lieferumfang von IIS 7.0 enthalten, daher mussten die Module unter der folgenden URL heruntergeladen und installiert werden:

https://www.iis.net/expand/FTP

Bei Windows 7 und Windows Server 2008 R2 wird der FTP 7.5-Dienst als Feature für IIS 7.5 bereitgestellt, sodass das Herunterladen des FTP-Diensts nicht mehr erforderlich ist.

Setup

Um die FTP-Veröffentlichung für Ihren Webserver zu unterstützen, müssen Sie den FTP-Dienst installieren. Führen Sie dazu die folgenden Schritte aus:

Windows Server 2012 oder Windows Server 2012 R2

  1. Klicken Sie auf der Taskleiste auf Server-Manager.

  2. Klicken Sie im Server-Manager auf Verwalten und dann auf Rollen und Features hinzufügen.

  3. Klicken Sie im Assistenten zum Hinzufügen von Rollen und Features auf Weiter. Wählen Sie den Installationstyp aus, und klicken Sie auf Weiter. Wählen Sie den Zielserver aus, und klicken Sie auf Weiter.

  4. Erweitern Sie auf der Seite Serverrollen den Eintrag Webserver (IIS), und wählen Sie dann FTP-Server aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie zusätzlich zu FTP-Dienst die Option FTP-Erweiterbarkeit auswählen.
    Screenshot of the Server Roles dialog box. F T P Extensibility is highlighted in the drop down menu. .

  5. Klicken Sie auf Weiter, und wählen Sie dann auf der Seite Features auswählen erneut Weiter aus.

  6. Klicken Sie auf der Seite Installationsauswahl bestätigen auf Installieren.

  7. Klicken Sie auf der Seite Ergebnisse auf Schließen.

Windows 8 oder Windows 8.1

  1. Bewegen Sie auf dem Startbildschirm den Mauszeiger ganz nach links unten, klicken Sie mit der rechten Maustaste auf die Starttaste und klicken Sie dann auf Systemsteuerung.

  2. Klicken Sie in der Systemsteuerung auf Programme und dann auf „Windows-Features aktivieren oder deaktivieren“.

  3. Erweitern Sie Internetinformationsdienste, und wählen Sie dann FTP-Server aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen.
    Screenshot of the Windows Features wizard with F T P Extensibility highlighted in the drop down menu.

  4. Klicken Sie auf OK.

  5. Klicken Sie auf Schließen.

Windows Server 2008 R2

  1. Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltungstools, und klicken Sie dann auf Server-Manager.

  2. Erweitern Sie im Hierarchiebereich des Server-Managers die Rollenund klicken Sie dann auf den Webserver (IIS) .

  3. Scrollen Sie im Bereich Webserver (IIS) zum Abschnitt Rollendienste, und klicken Sie dann auf Rollendienste hinzufügen.

  4. Erweitern Sie auf der Seite Rollendienste auswählen des Assistenten zum Hinzufügen von Rollendiensten die Option FTP-Server.

  5. Wählen Sie FTP-Dienst aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen.
    Screenshot of the Select Role Services page. F T P Service is highlighted in the menu.

  6. Klicken Sie auf Weiter.

  7. Klicken Sie auf der Seite Installationsauswahl bestätigen auf Installieren.

  8. Klicken Sie auf der Seite Ergebnisse auf Schließen.

Windows 7

  1. Klicken Sie auf der Taskleiste auf "Start" und dann auf "Systemsteuerung".

  2. Klicken Sie in der Systemsteuerungauf Programme und Funktionen und dann auf Windows-Features aktivieren oder deaktivieren.

  3. Erweitern Sie Internetinformationsdienste und dann FTP-Server.

  4. Wählen Sie FTP-Dienst aus.

    Hinweis

    Um die Authentifizierung mittels ASP.NET-Mitgliedschaft oder IIS-Manager für den FTP-Dienst zu unterstützen, müssen Sie auch FTP-Erweiterbarkeit auswählen.
    Screenshot of the Windows Features dialog box focused on the Turn Windows features on or off menu.

  5. Klicken Sie auf OK.

Windows Server 2008 oder Windows Vista

  1. Laden Sie das Installationspaket unter der folgenden URL herunter:

  2. Befolgen Sie die Anweisungen in der folgenden exemplarischen Vorgehensweise, um den FTP-Dienst zu installieren:

Gewusst wie

Konfigurieren der Standardprotokollierungsoptionen für eine FTP-Site

  1. Öffnen Sie den Internet Information Services (IIS) Manager:

    • Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:

      • Klicken Sie der der Taskleiste auf Server-Managerdann auf Toolsund dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows 8 oder Windows 8.1 verwenden:

      • Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
      • Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:

      • Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltungund dann auf den Internet Information Services (IIS) Manager.
    • Wenn Sie Windows Vista oder Windows 7 verwenden:

      • Klicken Sie auf der Taskleiste auf "Start" und dann auf "Systemsteuerung".
      • Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
  2. Klicken Sie im Bereich Verbindungen auf den Namen des Servers, auf dem Sie die Protokollierung konfigurieren möchten.

  3. Doppelklicken Sie im Bereich Start auf FTP-Protokollierung.
    Screenshot of the Server Home page in I I S Manager. The icon for F T P Logging is highlighted. - Klicken Sie im Abschnitt Protokolldateirollover auf W3C-Felder auswählen...

  4. Wählen Sie die Felder für Ihre Protokolldateien aus und klicken Sie dann auf OK.
    Screenshot of the W 3 C Logging Fields dialog box.

  5. Geben Sie unter Verzeichnis den Pfad an, in dem die Protokolldatei gespeichert werden soll. Der Standardwert ist %SystemDrive%\inetpub\logs\LogFiles.

  6. Geben Sie im Abschnitt Protokolldateirollover eine der folgenden Optionen an:

    • Zeitplan: Eine neue Protokolldatei basierend auf einem der folgenden Werte erstellen:

      • Stündlich: Jede Stunde wird eine neue Protokolldatei erstellt.
      • Täglich: Jeden Tag wird eine neue Protokolldatei erstellt.
      • Wöchentlich: Jede Woche wird eine neue Protokolldatei erstellt.
      • Monatlich: Jeden Monat wird eine neue Protokolldatei erstellt.
    • Maximale Dateigröße (in Bytes): Eine neue Protokolldatei erstellen, wenn die Datei eine bestimmte Größe (in Bytes) erreicht. Die minimale Dateigröße ist 1.048.576 Bytes. Wenn für dieses Attribut ein kleinerer Wert als 1.048.576 Bytes festgelegt wird, wird implizit ein Standardwert von 1.048.576 Bytes angenommen.

    • Keine neue Protokolldatei erstellen: Es gibt eine einzige Protokolldatei, die ständig weiter wächst, wenn Informationen protokolliert werden.

    • Wählen Sie Lokale Zeit für Dateibenennung und Rollover verwenden, um anzugeben, dass die Protokolldateibenennung und die Uhrzeit des Protokolldateirollovers die lokale Serverzeit verwendet. Wenn diese Option nicht ausgewählt ist, wird UTC (Coordinated Universal Time) verwendet.
      Screenshot of the F T P Logging page within I I S Manager.

  7. Wählen Sie im Bereich Aktionen die Option Übernehmen aus.

Konfiguration

Attribute

Attribut Beschreibung
directory Optionales Zeichenfolgeattribut.

Gibt das Protokollierungsverzeichnis an, in dem die Protokolldatei und mit der Protokollierung zusammenhängende Unterstützungsdateien gespeichert werden.

Der Standardwert ist %SystemDrive%\inetpub\logs\LogFiles.
enabled Optionales boolesches Attribut.

true, wenn Protokollierung aktiviert wird; andernfalls false.

Der Standardwert ist true.
localTimeRollover Optionales boolesches Attribut.

true, wenn eine neue Protokolldatei basierend auf der Ortszeiterstellt wird. false für die koordinierte Weltzeit (Coordinated Universal Time, UTC, zuvor Greenwich Mean Time, GMT).

Hinweis: Unabhängig von der Einstellung basiert der Zeitstempel jedes Protokolldatensatzes der erweiterten W3C-Protokollierung auf der UTC-Zeit.

Der Standardwert ist false.
logExtFileFlags Optionales Flags-Attribut.

Gibt die Informationskategorien an, die während der Protokollierung von Ereignissen für eine Site in die Protokolldatei (bei Verwendung des erweiterten W3C-Formats für Protokolldateien) oder in die ODBC-Datenquelle geschrieben werden. Das Attribut logExtFileFlags kann auf einen oder mehrere der folgenden Werte festgelegt werden. Wenn Sie mehrere Werte angeben, trennen Sie diese durch ein Komma (,).

Die Standardwerte sind Date, Time, ClientIP, UserName, ServerIP, Method, UriStem, FtpStatus, Win32Status, FtpSubStatus, ServerPort, Session und FullPath.
Wert Beschreibung
BytesRecv Protokolliert die Anzahl der vom Server empfangenen Bytes.

Der numerische Wert ist 8192.
BytesSent Protokolliert die Anzahl der vom Server gesendeten Bytes.

Der numerische Wert ist 4096.
ClientIP Protokolliert die IP-Adresse des Clients, von dem die Anforderung stammt.

Der numerische Wert ist 4.
ClientPort Protokolliert den Port des Clients, von dem die Anforderung stammt.

Der numerische Wert ist 33554432.
ComputerName Protokolliert den Namen des Servers, auf dem der Protokolldateieintrag generiert wurde.

Der numerische Wert ist 32.
Date Protokolliert das Datum, an dem die Aktivität stattgefunden hat.

Der numerische Wert ist 1.
FtpStatus Protokolliert den FTP-Statuscode.

Der numerische Wert ist 1024.
FtpSubStatus Protokolliert den Unterstatuscode des FTP-Fehlers.

Der numerische Wert ist 2097152.
FullPath Protokolliert den vollständigen relativen Pfad. Hinweis: Dies kann ein anderer URI sein, den der Client angefordert hat, der durch Festlegen des UriStem-Flags protokolliert wird.

Der numerische Wert ist 8388608.
Host Protokolliert den virtuellen Hostnamen, falls vorhanden.

Der numerische Wert ist 1048576.
Info Protokolliert erweiterte Debuginformationen, falls vorhanden.

Der numerische Wert ist 16777216.
Method Protokolliert die angeforderte Aktion. Beispiel: USER , PASS usw.

Der numerische Wert ist 128.
ServerIP Protokolliert die IP-Adresse des Servers, auf dem der Protokolldateieintrag generiert wurde.

Der numerische Wert ist 64.
ServerPort Protokolliert die Serverportnummer, die für die Site konfiguriert wurde.

Der numerische Wert ist 32768.
Session Protokolliert den eindeutigen Bezeichner für die FTP-Sitzung. Dies ist nützlich für die Analyse von Sitzungsaktivitäten in Ihren Protokollen.

Der numerische Wert ist 4194304.
SiteName Protokolliert den Internetdienstnamen und die Instanznummer für die Site.

Der numerische Wert ist 16.
Time Protokolliert den Zeitpunkt der Aktivität in der UTC-Zeit.

Der numerische Wert ist 2.
TimeTaken Protokolliert die zur Ausführung einer Anforderung benötigte Zeit. Die benötigte Zeit wird in Millisekunden aufgezeichnet.

Der numerische Wert ist 16384.
UriStem Protokolliert die Informationen zum Stamm des URI, der das Ziel der Aktion ist. Hinweis: Dies zeigt den URI-Stream genau so an, wie ihn der Client angefordert hat, was möglicherweise nicht der vollständige relative Pfad ist. Verwenden Sie für den vollständigen relativen Pfad das FullPath-Flag.

Der numerische Wert ist 256.
UserName Protokolliert den Namen des authentifizierten Benutzers, der auf Ihren Server zugegriffen hat. Anonyme Benutzer werden durch einen Bindestrich gekennzeichnet.

Der numerische Wert ist 8.
Win32Status Protokolliert den Windows-Statuscode.

Der numerische Wert ist 2048.
period Optionales Enumerationsattribut.

Gibt an, wie oft der FTP-Dienst eine neue Protokolldatei erstellt. Das period-Attribut kann einen der folgenden Werte haben.

Der Standardwert ist Daily.
Wert Beschreibung
Daily Erstellt täglich eine neue Protokolldatei.

Der numerische Wert ist 1.
Hourly Erstellt stündlich eine neue Protokolldatei.

Der numerische Wert ist 4.
MaxSize Erstellt eine neue Protokolldatei, wenn eine maximale Größe erreicht ist. Die maximale Größe wird im truncateSize-Attribut angegeben.

Der numerische Wert ist 0.
Monthly Erstellt monatlich eine neue Protokolldatei.

Der numerische Wert ist 3.
Weekly Erstellt wöchentlich eine neue Protokolldatei.

Der numerische Wert ist 2.
selectiveLogging Optionales Flags-Attribut.

Gibt die Ausführlichkeit für die FTP-Protokollierung an.

Der Standardwert ist LogSuccessful,LogError,LogInfrastructure.
Wert Beschreibung
LogError Gibt an, dass Fehler protokolliert werden. Die tatsächlich protokollierte Datenmenge hängt auch von der Einstellung der LogInfrastructure-Flag ab.

Der numerische Wert ist 2.
LogInfrastructure Gibt an, dass alle FTP-Befehle und Datenkanalaktivitäten auf niedriger Ebene protokolliert werden. Die Protokolle enthalten beispielsweise Einträge für DataChannelOpened, DataChannelClosed, PORT/EPRT, PASV/EPSV, wenn das LogInfrastructure-Flag gesetzt ist.

Der numerische Wert ist 4.
LogSuccessful Gibt an, dass erfolgreiche Aktivitäten protokolliert werden. Die tatsächlich protokollierte Datenmenge hängt auch von der Einstellung der LogInfrastructure-Flag ab.

Der numerische Wert ist 1.
truncateSize Optionales int64-Attribut.

Legt die maximale Größe der Protokolldatei (in Bytes) fest, ab der eine neue Protokolldatei erstellt wird. Dieser Wert gilt nur, wenn MaxSize für das period-Attribut ausgewählt wird. Die minimale Dateigröße ist 1,048,576 Bytes. Wenn für dieses Attribut ein kleinerer Wert als 1,048,576 Bytes festgelegt wird, wird implizit ein Standardwert von 1,048,576 Bytes angenommen.

Der Standardwert ist 20971520.

Untergeordnete Elemente

Keine.

Konfigurationsbeispiel

Im folgenden Konfigurationsbeispiel wird ein Beispielelement <logFile> für einen Server angezeigt, der die Protokollierung standardmäßig mit täglichen Protokolldateirollovers ermöglicht.

<siteDefaults>
   <ftpServer serverAutoStart="true">
      <logFile period="Daily" enabled="true" />
   </ftpServer>
</siteDefaults>

Beispielcode

Die folgenden Codebeispiele veranschaulichen, wie die Protokollierung standardmäßig mit täglichen Protokolldateirollovers aktiviert wird.

AppCmd.exe

REM Enable logging by default with daily log file rollover.
appcmd.exe set config -section:system.applicationHost/sites /siteDefaults.ftpServer.logFile.period:"Daily" /siteDefaults.ftpServer.logFile.enabled:"True" /commit:apphost

Hinweis

Sie müssen unbedingt den Commitparameterapphost festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();
         ConfigurationSection sitesSection = config.GetSection("system.applicationHost/sites");
         ConfigurationElement siteDefaultsElement = sitesSection.GetChildElement("siteDefaults");
         ConfigurationElement ftpServerElement = siteDefaultsElement.GetChildElement("ftpServer");

         ConfigurationElement logFileElement = ftpServerElement.GetChildElement("logFile");
            logFileElement["period"] = @"Daily";
            logFileElement["enabled"] = true;

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim sitesSection As ConfigurationSection = config.GetSection("system.applicationHost/sites")
      Dim siteDefaultsElement As ConfigurationElement = sitesSection.GetChildElement("siteDefaults")
      Dim ftpServerElement As ConfigurationElement = siteDefaultsElement.GetChildElement("ftpServer")

      Dim logFileElement As ConfigurationElement = ftpServerElement.GetChildElement("logFile")
         logFileElement("period") = "Daily"
         logFileElement("enabled") = True

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST");
var siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults");
var ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer");

var logFileElement = ftpServerElement.ChildElements.Item("logFile");
   logFileElement.Properties.Item("period").Value = "Daily";
   logFileElement.Properties.Item("enabled").Value = true;

adminManager.CommitChanges();

VBScript

Set adminManager = createObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set sitesSection = adminManager.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
Set siteDefaultsElement = sitesSection.ChildElements.Item("siteDefaults")
Set ftpServerElement = siteDefaultsElement.ChildElements.Item("ftpServer")

Set logFileElement = ftpServerElement.ChildElements.Item("logFile")
   logFileElement.Properties.Item("period").Value = "Daily"
   logFileElement.Properties.Item("enabled").Value = True

adminManager.CommitChanges()