Planen der Verstärkung der Sicherheit (SharePoint Foundation 2010)

 

Gilt für: SharePoint Foundation 2010

Letztes Änderungsdatum des Themas: 2016-11-30

In diesem Artikel wird das Verstärken der Sicherheit für Webserver-, Anwendungsserver- und Datenbankserverrollen von Microsoft SharePoint Foundation 2010 beschrieben. Außerdem enthält dieser Artikel ausführliche Anleitungen zu den speziellen Anforderungen für die Verstärkung der Sicherheit für Ports, Protokolle und Dienste in Microsoft SharePoint 2010-Produkte.

Inhalt dieses Artikels:

Sichere Servermomentaufnahmen

In einer Serverfarmumgebung weisen die einzelnen Server bestimmte Rollen auf. Die Empfehlungen für die Verstärkung der Sicherheit dieser Server hängen von der jeweiligen Rolle ab. Dieser Artikel enthält sichere Momentaufnahmen für die folgenden beiden Kategorien von Serverrollen:

Die Momentaufnahmen sind in allgemeine Konfigurationskategorien unterteilt. Die für jede Kategorie definierten Merkmale stellen den optimalen Status mit verstärkter Sicherheit für Microsoft SharePoint 2010-Produkte dar. Dieser Artikel enthält keine Anleitungen zum Verstärken der Sicherheit für andere Software in der Umgebung.

Webserver- und Anwendungsserverrollen

In diesem Abschnitt werden die Merkmale zum Verstärken der Sicherheit für Webserver und Anwendungsserver beschrieben. Einige Anleitungen gelten für bestimmte Dienstanwendungen; in diesen Fällen müssen die entsprechenden Merkmale nur auf den Servern angewendet werden, auf denen die Dienste für die angegebenen Dienstanwendungen ausgeführt werden.

Kategorie

Merkmal

Im MMC-Snap-In Dienste aufgelistete Dienste

Aktivieren Sie die folgenden Dienste:

  • Datei- und Druckerfreigabe

  • WWW-Publishingdienst

Stellen Sie sicher, dass die folgenden Dienste nicht deaktiviert sind:

  • Forderungen an den Windows-Tokendienst

  • SharePoint 2010-Verwaltung

  • SharePoint 2010-Zeitgeber

  • SharePoint 2010-Ablaufverfolgung

  • SharePoint 2010 VSS Writer

Stellen Sie sicher, dass die folgenden Dienste auf den Servern, auf denen die entsprechenden Rollen gehostet werden, nicht deaktiviert sind:

  • SharePoint 2010-Benutzercodehost

  • SharePoint Foundation-Suche V4

Ports und Protokolle

  • TCP 80, TCP 443 (SSL)

  • Datei- und Druckerfreigabedienst – eine der folgenden Optionen, verwendet von Suchrollen:

    • Direkt gehostetes SMB (TCP/UDP 445) – dies ist der empfohlene Port

    • NetBIOS über TCP/IP (NetBT) (TCP/UDP-Ports 137, 138, 139) – deaktivieren Sie diesen Port, falls er nicht verwendet wird

  • Für die Kommunikation zwischen Webservern und Dienstanwendungen erforderliche Ports (der Standardwert ist HTTP):

    • HTTP-Bindung: 32843

    • HTTPS-Bindung: 32844

    • net.tcp-Bindung: 32845 (nur, wenn diese Option von einem Drittanbieter für eine Dienstanwendung implementiert wurde)

  • UDP-Port 1434 und TCP-Port 1433 – Standardports für die SQL Server-Kommunikation. Wenn diese Ports auf dem SQL Server-Computer blockiert sind (empfohlen) und Datenbanken in einer benannten Instanz installiert sind, konfigurieren Sie einen SQL Server-Clientalias zum Herstellen einer Verbindung mit der benannten Instanz.

  • TCP/IP 32846 für den Microsoft SharePoint Foundation-Benutzercodedienst (für Sandkastenlösungen) – dieser Port muss für ausgehende Verbindungen auf allen Webservern geöffnet sein. Für eingehende Verbindungen auf Webservern oder Anwendungsservern, auf denen dieser Dienst aktiviert ist, muss dieser Port geöffnet sein.

  • Stellen Sie sicher, dass Ports für Webanwendungen, auf die Benutzer zugreifen können, geöffnet bleiben.

  • Blockieren Sie den externen Zugriff auf den Port, der für die Website für die Zentraladministration verwendet wird.

  • TCP/25 (SMTP für die E-Mail-Integration)

Registrierung

Keine weiteren Anleitungen

Überwachung und Protokollierung

Wenn Protokolldateien verschoben werden, stellen Sie sicher, dass die Speicherorte der Protokolldateien entsprechend aktualisiert werden. Aktualisieren Sie auch Zugriffssteuerungslisten (Access Control Lists, ACLs) für Verzeichnisse.

Codezugriffssicherheit

Stellen Sie sicher, dass für die Webanwendung ein Mindestsatz Sicherheitsberechtigungen für den Codezugriff aktiviert ist. Das Element <trust> in der Datei Web.config für jede Webanwendung sollte auf WSS_Minimal (für WSS_Minimal gelten die in 14\config\wss_minimaltrust.config definierten niedrigen Standardwerte) oder auf eine eigene benutzerdefinierte Richtliniendatei mit minimalen Einstellungen festgelegt sein.

Web.config

Halten Sie sich an die folgenden Empfehlungen für jede Datei Web.config, die nach dem Ausführen von Setup erstellt wird:

  • Lassen Sie Kompilierung oder Scripting von Datenbankseiten über die PageParserPaths-Elemente nicht zu.

  • Stellen Sie sicher, dass Folgendes festgelegt ist: <SafeMode> CallStack=""false"" und AllowPageLevelTrace=""false""

  • Stellen Sie sicher, dass die Webpartlimits für maximale Steuerelemente pro Zone niedrig festgelegt sind.

  • Stellen Sie sicher, dass die Liste SafeControls auf die mindestens für die Websites benötigten Steuerelemente festgelegt ist.

  • Stellen Sie sicher, dass die Liste Workflow SafeTypes auf die mindestens benötigen SafeTypes festgelegt ist.

  • Stellen Sie sicher, dass customErrors aktiviert ist (<customErrors mode=""On""/>).

  • Berücksichtigen Sie gegebenenfalls die Webproxyeinstellungen (<system.net>/<defaultProxy>).

  • Legen Sie das Limit Upload.aspx auf die höchste Größe fest, die aller Wahrscheinlichkeit nach von Benutzern hochgeladen wird (der Standardwert ist 2 GB). Durch Uploads mit einer Größe von mehr als 100 MB kann die Leistung beeinträchtigt werden.

Datenbankserverrolle

Die wichtigste Empfehlung für SharePoint 2010-Produkte lautet, die Kommunikation zwischen den Farmen durch Blockieren der Standardports für die Microsoft SQL Server-Kommunikation und Einrichten benutzerdefinierter Ports für diese Kommunikation zu sichern. Weitere Informationen zum Konfigurieren von Ports für die SQL Server-Kommunikation finden Sie unter Blockieren der standardmäßigen SQL Server-Ports weiter unten in diesem Artikel.

Kategorie

Merkmal

Ports

  • Blockieren Sie UDP-Port 1434.

  • Ziehen Sie das Blockieren von TCP-Port 1433 in Betracht.

In diesem Artikel wird nicht beschrieben, wie Sie SQL Server schützen. Weitere Informationen zum Schützen von SQL Server finden Sie unter Sichern von SQL Server (https://go.microsoft.com/fwlink/?linkid=186828&clcid=0x407).

Spezielle Anleitungen zu Ports, Protokollen und Diensten

Im verbleibenden Teil des Artikels werden die speziellen Anforderungen zum Verstärken der Sicherheit für SharePoint 2010-Produkte ausführlich behandelt.

Inhalt dieses Abschnitts:

Blockieren der standardmäßigen SQL Server-Ports

Die spezifischen Ports, die zum Herstellen einer Verbindung mit SQL Server verwendet werden, hängen davon ab, ob die Datenbanken in einer Standardinstanz von SQL Server oder in einer benannten Instanz von SQL Server installiert sind. Die Standardinstanz von SQL Server hört Clientanforderungen auf TCP-Port 1433 ab. Eine benannte Instanz von SQL Server hört eine zufällig zugewiesene Portnummer ab. Außerdem kann die Portnummer für eine benannte Instanz neu zugewiesen werden, wenn die Instanz neu gestartet wird (abhängig von der Verfügbarkeit der vorher zugewiesenen Portnummer).

Standardmäßig wird auf Clientcomputern, die eine Verbindung mit SQL Server herstellen, zuerst eine Verbindung mithilfe von TCP-Port 1433 hergestellt. Wenn diese Kommunikation nicht erfolgreich ist, fragen die Clientcomputer den UDP-Port 1434 lauschenden SQL Server-Auflösungsdienst ab, um den von der Datenbankinstanz abgehörten Port zu ermitteln.

Das Standardport-Kommunikationsverhalten von SQL Server führt zu verschiedenen Problemen, die sich auf die Verstärkung der Serversicherheit auswirken. Erstens handelt es sich bei den von SQL Server verwendeten Ports um allgemein veröffentlichte Ports, und der SQL Server-Auflösungsdienst ist Ziel von Pufferüberlaufangriffen und Denial-of-Service-Angriffen, beispielsweise durch den Wurmvirus "Slammer". Auch wenn SQL Server aktualisiert wird, um die Sicherheitsprobleme im SQL Server-Auflösungsdienst zu mindern, bleiben die allgemein veröffentlichten Ports ein Ziel. Zweitens wird, wenn Datenbanken in einer benannten Instanz von SQL Server installiert werden, der entsprechende Kommunikationsport zufällig zugewiesen und kann geändert werden. Dieses Verhalten kann möglicherweise in einer Umgebung mit verstärkter Sicherheit die Kommunikation zwischen Servern verhindern. Die Möglichkeit, zu steuern, welche TCP-Ports geöffnet sind oder blockiert werden, ist unerlässlich für den Schutz der Umgebung.

Daher sieht die Empfehlung für eine Serverfarm vor, benannten Instanzen von SQL Server statische Portnummern zuzuweisen und UDP-Port 1434 zu blockieren, um potenzielle Angreifer am Zugriff auf den SQL Server-Auflösungsdienst zu hindern. Ziehen Sie es außerdem in Betracht, den von der Standardinstanz verwendeten Port neu zuzuweisen und TCP-Port 1433 zu blockieren.

Es gibt verschiedene Methoden, die Sie zum Blockieren von Ports verwenden können. Sie können die Ports mithilfe einer Firewall blockieren. Wenn Sie jedoch nicht sicher sind, dass keine weiteren Routen in das Netzwerksegment vorhanden sind und dass keine böswilligen Benutzer mit Zugriff auf das Netzwerksegment vorhanden sind, sollten Sie diese Ports direkt auf dem Server blockieren, auf dem SQL Server gehostet wird. Hierzu können Sie die Windows-Firewall in der Systemsteuerung verwenden.

Konfigurieren von SQL Server-Datenbankinstanzen zum Lauschen eines Nichtstandardports

Sie können in SQL Server die von der Standardinstanz und von benannten Instanzen verwendeten Ports neu zuweisen. In SQL Server 2005 und SQL Server 2008 weisen Sie Ports mit dem SQL Server-Konfigurations-Manager neu zu.

Konfigurieren von SQL Server-Clientaliasen

In einer Serverfarm sind alle Front-End-Webserver und Anwendungsserver SQL Server-Clientcomputer. Wenn Sie UDP-Port 1434 auf dem SQL Server-Computer blockieren oder den Standardport für die Standardinstanz ändern, müssen Sie auf allen Servern, die eine Verbindung mit dem SQL Server-Computer herstellen, einen SQL Server-Clientalias konfigurieren.

Zum Herstellen einer Verbindung mit einer Instanz von SQL Server 2005 oder SQL Server 2008 installieren Sie die SQL Server-Clientkomponenten auf dem Zielcomputer und konfigurieren dann den SQL Server-Clientalias mithilfe des SQL Server-Konfigurations-Managers. Zum Installieren der SQL Server-Clientkomponenten führen Sie das Setup aus, und wählen Sie nur die folgenden Clientkomponenten für die Installation aus:

  • Konnektivitätskomponenten

  • Verwaltungstools (einschließlich SQL Server-Konfigurations-Manager)

Informationen zur Verstärkung der Sicherheit durch Blockieren der standardmäßigen SQL Server-Ports finden Sie unter Härten von SQL Server für SharePoint-Umgebungen (SharePoint Foundation 2010).

Kommunikation zwischen Dienstanwendungen

Standardmäßig erfolgt die Kommunikation zwischen Webservern und Dienstanwendungen innerhalb einer Serverfarm mithilfe einer HTTP-Bindung zu Port 32843. Beim Veröffentlichen einer Dienstanwendung können Sie HTTP oder HTTPS mit den folgenden Bindungen auswählen:

  • HTTP-Bindung: Port 32843

  • HTTPS-Bindung: Port 32844

Darüber hinaus können Drittanbieter, die Dienstanwendungen entwickeln, eine dritte Option implementieren:

  • net.tcp-Bindung: Port 32845

Sie können das Protokoll und die Portbindung für jede Dienstanwendung ändern. Wählen Sie auf der Seite Dienstanwendungen der Zentraladministration die Dienstanwendung aus, und klicken Sie dann auf Veröffentlichen.

Die Kommunikation zwischen Dienstanwendungen und SQL Server erfolgt über die standardmäßigen SQL Server-Ports oder die Ports, die Sie für die SQL Server-Kommunikation konfigurieren.

Anforderungen für den Datei- und Druckerfreigabedienst

Verschiedene Kernfeatures hängen vom Datei- und Druckerfreigabedienst und den entsprechenden Protokollen und Ports ab. Dazu gehören beispielsweise die Folgenden:

  • Suchabfragen Der Datei- und Druckerfreigabedienst ist für alle Suchabfragen erforderlich.

  • Durchforsten und Indizieren von Inhalten Zum Durchforsten von Inhalten senden Server, die Durchforstungskomponenten enthalten, Anforderungen über den Front-End-Webserver. Der Front-End-Webserver kommuniziert direkt mit Inhaltsdatenbanken und sendet Ergebnisse zurück an die Server mit den Durchforstungskomponenten. Für diese Kommunikation ist der Datei- und Druckerfreigabedienst erforderlich.

Für den Datei- und Druckerfreigabedienst ist die Verwendung von Named Pipes erforderlich. Named Pipes können mithilfe von direkt gehosteten SMB- oder NetBT-Protokollen kommunizieren. Für eine sichere Umgebung wird direkt gehostetes SMB anstelle von NetBT empfohlen. In den Empfehlungen für die Verstärkung der Sicherheit in diesem Artikel wird angenommen, dass SMB verwendet wird.

In der folgenden Tabelle werden die Anforderungen für die Verstärkung der Sicherheit beschrieben, die durch die Abhängigkeit vom Datei- und Druckerfreigabedienst entstehen.

Kategorie

Anforderungen

Hinweise

Dienste

Datei- und Druckerfreigabe

Erfordert die Verwendung von Named Pipes.

Protokolle

Named Pipes mit direkt gehostetem SMB

Deaktivieren von NetBT

Named Pipes können NetBT anstelle von direkt gehostetem SMB verwenden. NetBT gilt jedoch nicht als so sicher wie direkt gehostetes SMB.

Ports

Eine der folgenden Optionen:

  • Direkt gehostetes SMB (TCP/UDP 445) – empfohlen

  • NetBT (TCP/UDP-Ports 137, 138, 139)

Deaktivieren Sie NetBT (Ports 137, 138 und 139), falls dieses Protokoll nicht verwendet wird.

Weitere Informationen zum Deaktivieren von NetBT finden Sie im Microsoft Knowledge Base-Artikel 204279, Direktes Hosting von SMB über TCP/IP (https://go.microsoft.com/fwlink/?linkid=76143&clcid=0x407).

Dienstanforderungen für die E-Mail-Integration

Für die E-Mail-Integration ist die Verwendung von zwei Diensten erforderlich:

SMTP-Dienst

Für die E-Mail-Integration muss der SMTP-Dienst (Simple Mail Transport Protocol) auf mindestens einem der Front-End-Webserver in der Serverfarm verwendet werden. Der SMTP-Dienst ist für eingehende E-Mail erforderlich. Für ausgehende E-Mail können Sie den SMTP-Dienst verwenden oder ausgehende E-Mail über einen dedizierten E-Mail-Server in der Organisation weiterleiten, beispielsweise über einen Microsoft Exchange Server-Computer.

Microsoft SharePoint-Verzeichnisverwaltungsdienst

SharePoint 2010-Produkte umfasst einen internen Dienst, den Microsoft SharePoint-Verzeichnisverwaltungsdienst, zum Erstellen von E-Mail-Verteilergruppen. Wenn Sie die E-Mail-Integration konfigurieren, haben Sie die Möglichkeit zur Aktivierung des Verzeichnisdienstverwaltungsdienst-Features, sodass die Benutzer Verteilerlisten erstellen können. Wenn Benutzer eine SharePoint-Gruppe erstellen und die Option zum Erstellen einer Verteilerliste auswählen, erstellt der Microsoft SharePoint-Verwaltungsverzeichnisdienst die entsprechende Active Directory-Verteilerliste in der Active Directory-Umgebung.

In Umgebungen mit verstärkter Sicherheit wird empfohlen, den Zugriff auf den Microsoft SharePoint-Verzeichnisverwaltungsdienst durch Schützen der diesem Dienst zugeordneten Datei (SharePointEmailws.asmx) einzuschränken. Lassen Sie beispielsweise den Zugriff auf diese Datei nur für das Serverfarmkonto zu.

Darüber hinaus sind für diesen Dienst Berechtigungen in der Active Directory-Umgebung erforderlich, um Active Directory-Verteilerlistenobjekte zu erstellen. Es wird empfohlen, eine separate Organisationseinheit (Organizational Unit, OU) für SharePoint 2010-Produkte-Objekte in Active Directory einzurichten. Nur diese Organisationseinheit sollte Schreibzugriff auf das vom Microsoft SharePoint-Verzeichnisverwaltungsdienst verwendete Konto gewähren.

Dienste für SharePoint 2010-Produkte

Deaktivieren Sie keine Dienste, die von SharePoint 2010-Produkte installiert werden (weiter oben im Abschnitt zu Momentaufnahmen aufgelistet).

Wenn als lokales System ausgeführte Dienste in der Umgebung nicht zulässig sind, können Sie das Deaktivieren des SharePoint 2010-Verwaltungsdiensts in Betracht ziehen. Sie müssen jedoch die Konsequenzen kennen und sie umgehen können. Dieser Dienst ist ein Win32-Dienst, der als lokales System ausgeführt wird.

Dieser Dienst wird vom SharePoint 2010-Timerdienst zum Ausführen von Aktionen verwendet, für die Administratorberechtigungen auf dem Server erforderlich sind, beispielsweise Erstellen von IIS-Websites (Internetinformationsdienste), Bereitstellen von Code sowie Beenden und Starten von Diensten. Wenn Sie diesen Dienst deaktivieren, können Sie keine Aufgaben im Zusammenhang mit der Bereitstellung über die Website für die Zentraladministration ausführen. Sie müssen in Windows PowerShell das Start-SPAdminJob-Cmdlet verwenden (oder mit dem Befehlszeilentool Stsadm.exe den Vorgang execadminsvcjobs ausführen), um Bereitstellungen auf mehreren Servern für SharePoint 2010-Produkte auszuführen und andere Aufgaben im Zusammenhang mit der Bereitstellung auszuführen.

"Web.config" (Datei)

In .NET Framework und insbesondere ASP.NET werden zum Konfigurieren von Anwendungen Konfigurationsdateien im XML-Format verwendet. In .NET Framework werden Konfigurationsdateien zum Definieren von Konfigurationsoptionen verwendet. Die Konfigurationsdateien sind textbasierte XML-Dateien. Auf einem einzigen System können sich mehrere Konfigurationsdateien befinden, und normalerweise ist dies auch der Fall.

Systemweite Konfigurationseinstellungen für .NET Framework werden in der Datei Machine.config definiert. Die Datei Machine.config befindet sich im Ordner %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\. Die Standardeinstellungen in der Datei Machine.config können geändert werden, um das Verhalten von Anwendungen im gesamten System zu beeinflussen, die .NET Framework verwenden.

Sie können die ASP.NET-Konfigurationseinstellungen für eine einzelne Anwendung ändern, indem Sie eine Datei Web.config im Stammordner der Anwendung erstellen. In diesem Fall werden durch die Einstellungen in der Datei Web.config die Einstellungen in der Datei Machine.config außer Kraft gesetzt.

Wenn Sie eine Webanwendung mithilfe der Zentraladministration erweitern, wird von SharePoint 2010-Produkte automatisch eine Datei Web.config für die Webanwendung erstellt.

Im Abschnitt zu Momentaufnahmen für Webserver und Anwendungsserver weiter oben in diesem Artikel werden Empfehlungen für das Konfigurieren der Datei Web.config aufgelistet. Diese Empfehlungen sollten auf jede erstellte Datei Web.config angewendet werden, einschließlich der Datei Web.config für die Website für die Zentraladministration.

Weitere Informationen zu ASP.NET-Konfigurationsdateien und zum Bearbeiten der Datei Web.config finden Sie unter ASP.NET-Konfiguration (https://go.microsoft.com/fwlink/?linkid=73257&clcid=0x407).