Roger Haueter

Modern Workplace Strategist | Microsoft Most Valuable Professional

SharePoint 2010 Installation mit PowerShell konfigurieren

Auch in SharePoint 2010 bleibt Skripting ein unerlässliches Instrument, um die Installation nach den eigenen Bedürfnissen zu gestaltetn. Im Gegensatz zum Office Sharepoint Server 2007 nutzt SharePoint 2010 PowerShell anstelle von stsadm.

Gehen Sie wie folgt vor, um Ihre SharePoint 2010 Farm mit PowerShell zu konfigurieren:

  1. Auf jedem Server der künftigen Farm die SharePoint Installation ausführen. Als Installationsart wird "Complete" gewählt. Nach Abschluss der Installation muss das Häkchen "SharePoint Products Configuration Wizard" entfernt werden.
  2. Auf dem Server, der die SharePoint Central Administration hosten soll, die ”SharePoint 2010 Management Shell” als Administrator ausführen. Die Shell wird eine Fehlermeldung ausgeben, weil bis jtzt nur die blanke Installation vorliegt.
    1. Führen Sie folgenden Befehl aus
      New-SPConfigurationDatabase –DatabaseName “SharePoint_Config_Database” –DatabaseServer “MeinSQLAlias” –AdministrationContentDatabaseName “SharePoint_AdminContent_Database” –Passphrase (ConvertTo-SecureString “MeinPassphrase” –AsPlaintext –Force) –FarmCredentials (Get-Credential)
    2. Wenn Sie die "SharePoint 2010 Management Shell" jetzt nochmals öffnen, sollte keine Fehlermeldung mehr erscheinen.
    3. Installieren Sie die Hilfedateien mit folgendem Befehl
      Install-SPHelpCollection -All
    4. Absichern der Dateien und Registry
      Initialize-SPResourceSecurity
    5. Installieren und Bereitstellen der Farm-Services
      Install-SPService
    6. Features auf dem Server installieren
      Install-SPFeature –AllExistingFeatures
    7. Central Administration bereitstellen
      New-SPCentralAdministration -Port 1234 -WindowsAuthProvider "NTLM"
    8. Application content installieren
      Install-SPApplicationContent
    9. Loopback Check ausschalten (Testumgebung)
      New-ItemProperty HKLM:\System\CurrentControlSet\Control\Lsa -Name “DisableLoopbackCheck” -value “1? -PropertyType dword
      Hostname der Loopback Adresse zuordnen (Produktive Umgebung)
      New-ItemProperty HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 -Name “BackConnectionHostNames” -value “SERVERNAME” -PropertyType multivalue
  3. Führen Sie die folgenden Schritte auf jedem Server aus, der zur Farm hinzugefügt werden soll
    1. Führen Sie die ”SharePoint 2010 Management Shell” als Administrator aus. Die Shell wird eine Meldung ausgeben, dass die Farm nicht erreichbar ist. Dies hat den Grund, dass bisher nur die blanke Installation vorliegt.
    2. Fügen Sie den Server mit folgendem PowerShell-Befehl zur Farm hinzu
      Connect-SPConfigurationDatabase -DatabaseName "SharePoint_Config_Database" -DatabaseServer "MeinSQLAlias" -Passphrase (ConvertTo-SecureString "MeinPassphrase" -AsPlaintext -Force)
    3. Hilfedateien installieren
      Install-SPHelpCollection -All
    4. Absichern der Dateien und Registry
      Initialize-SPResourceSecurity
    5. Installieren und Bereitstellen der Farm-Services
      Install-SPService
    6. Features auf dem Server installieren
      Install-SPFeature –AllExistingFeatures
    7. Application content installieren
      Install-SPApplicationContent
    8. Loopback Check ausschalten (Testumgebung)
      New-ItemProperty HKLM:\System\CurrentControlSet\Control\Lsa -Name “DisableLoopbackCheck” -value “1? -PropertyType dword
      Hostname der Loopback Adresse zuordnen (Produktive Umgebung)
      New-ItemProperty HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 -Name “BackConnectionHostNames” -value “SERVERNAME” -PropertyType multivalue


Mehr über das Erstellen eines SQL Alias lesen

http://www.techtask.com/sharepoint/sql-alias-fur-sharepoint-web-applikationen-erstellen/


SharePoint 2010 Farm mit PowerShell anlegen

Um eine saubere SharePoint 2010 Installation zu erreichen, wird nach dem Aufsetzen des ersten SharePoint Servers anstelle des Configuration Wizards ein PowerShell Skript ausgeführt, das die SharePoint Config und die SharePoint AdminContent Datenbank sowie die SharePoint Farm erstellt und der lokale Server zu dieser hinzugefügt.

Mittels PowerShell die Config- und AdminContent DB sowie die Farm erstellen und den Server der Farm hinzufügen
New-SPConfigurationDatabase –DatabaseName “SharePoint_Config_Database” –DatabaseServer “MeinSQLAlias” –AdministrationContentDatabaseName “SharePoint_AdminContent_Database” –Passphrase (ConvertTo-SecureString “MeinPassphrase” –AsPlaintext –Force) –FarmCredentials (Get-Credential)

Mehr über das Erstellen eines SQL Alias lesen
http://www.techtask.com/sql-alias-fur-sharepoint-web-applikationen-erstellen/


SQL Alias für SharePoint Web Applikationen erstellen

Bei der Erstellung einer neuen SharePoint Web Applikation empfiehlt es sich, einen SQL Alias anstelle des SQL-Servernamens anzugeben. Der SQL Alias (mit dem gleichen Namen) wird sowohl für x64 als auch x86 erstellt, da einige Applikationen aus Kompatibilitätsgründen auf den 32 Bit Pfad verweisen.

x64 SQL Alias erstellen
C:\Windows\System32\cliconfg.exe aufrufen
Im "Alias" Tab "Selcet" ausählen
Unter “Server alias” wird nun der gewünschte SQL Alias Name eingetragen (z.B. MeinSQLAlias)
"TCP/IP" unter "Network libraries" auswählen
Im Feld "Server name" den NetBIOS Namen (z.B. SERVERNAME\INSTANCE) des SQL-Servers eingetragen.
"Dynamically determine port" ausgewählt lassen.

Es wird folgender Registry Key erstellt
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\ConnectTo]
"MeinSQLAlias"="DBMSSOCN,SERVERNAME\\INSTANCE"

x86 SQL Alias erstellen (Kompatibilität mit 32-Bit Applikationen)
C:\Windows\SysWOW64\cliconfg.exe aufrufen
Im "Alias" Tab "Selcet" ausählen
Unter “Server alias” wird nun der gewünschte SQL Alias Name eingetragen (z.B. MeinSQLAlias)
"TCP/IP" unter "Network libraries" auswählen
Im Feld "Server name" den NetBIOS Namen (z.B. SERVERNAME\INSTANCE) des SQL-Servers eingetragen.
"Dynamically determine port" ausgewählt lassen.

Es wird folgender Registry Key erstellt
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\MSSQLServer\Client\ConnectTo]
"MeinSQLAlias"="DBMSSOCN,SERVERNAME\\INSTANCE"


Webseite kann auf dem SharePoint Server selbst nicht aufgerufen werden

Der Aufruf einer SharePoint Seite oder Anwendung auf dem SharePoint Server selbst ist nicht möglich. Sie erhalten eine "Zugriff verweigert" Seite oder das Anmeldefenster wird trotz korrekter Eingabe der Anmeldeinformationen wieder angezeigt. Der Zugriff von anderen Clients in Ihrem Netzwerk auf die gleiche SharePoint Seite oder Anwendung ist problemlos möglich.
Der Grund für dieses Verhalten ist eine Sicherheitsfunktion, welche Reflection Attacks verhindern soll.

Empfohlene Variante (in produktiven Umgebung einzusetzen)
BackConnectionHostNames eintragen (empfohlene Variante)
Legen Sie in der Registry unter dem Pfad HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 einen neuen Multi-String-Eintrag mit dem Namem “BackConnectionHostNames“ und tragen Sie die betroffenen Hostheader (z.B. SERVERNAME) als Wert ein.

oder via PowerShell
New-ItemProperty HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0 -Name "BackConnectionHostNames" -value "SERVERNAME" -PropertyType multivalue

Starten Sie anschliessend den Server neu.

Diese Variante sollte nur für Testumgebungen genutzt werden.
Loopback Check ausschalten
Legen Sie in der Registry unter dem Pfad HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\ einen neuen DWORD-Eintrag mit dem Namem “DisableLoopbackCheck“ und tragen Sie als Wert "1" ein.

oder per PowerShell
New-ItemProperty HKLM:\System\CurrentControlSet\Control\Lsa -Name "DisableLoopbackCheck" -value "1" -PropertyType dword

Führen Sie einen IIS reset durch.

Microsoft KB 896861 Artikel
You receive error 401.1 when you browse a Web site that uses Integrated Authentication and is hosted on IIS 5.1 or a later version
http://support.microsoft.com/kb/896861

Microsoft KB 926642 Artikel
Error message when you try to access a server locally by using its FQDN or its CNAME alias after you install Windows Server 2003 Service Pack 1: "Access denied" or "No network provider accepted the given network path"
http://support.microsoft.com/kb/926642



SharePoint 2010 Serverrollen konfigurieren

Die klassischen Serverrollen, wie es die beim Sharepoint Server 2007 noch gab, sind in Sharepoint 2010 verschwunden. Anstelle dessen werden neu unter Central Administration > System Settings die "Services on Server" definiert.
Eine gute Übersicht darüber, welche Services auf welchen Servern aktiviert werden müssen, um bestimmten Servern eine Rolle zuzuordnen, liefert das Whitepaper "Topologies for SharePoint Server 2010".

Topologies for SharePoint Server 2010
http://www.microsoft.com/downloads/details.aspx?FamilyID=FD686CBB-8401-4F25-B65E-3CE7AA7DBEAB&displayLang=en#filelist