Exchange Server 2010 – 2016 PowerShell Cmdlets

In den nächsten Tagen werde ich die Liste der interessanten Exchange Server 2010 – 2016 Powershell Cmdlets immer erweitern.

Ich habe hier eine Liste der interessantesten Exchange Server 2010 – 2016 PowerShell Cmdlets erstellt, beschrieben und mit Screenshots belegt.

Get-ExchangeServerAccessLicense

Es wird eine Tabelle mit den Lizenzen der Server und der Cals angezeigt.

Get-ExchangeServer

Es wird eine Liste der Exchange Server der Organisation generiert.

Get-HealthReport
Get-ServerHealth

Mit diesem Befehl lässt sich der Zustand der Exchange Umgebung analysieren.

Beispiele:

  • Get-HealthReport -Server ServerName
  • Get-HealthReport -GroupSize
  • Get-HealthReport -HealthSet
  • Get-ServerHealth -Server Servername

Get-PartnerApplication

Ab Exchange Server 2010 können Partner Aplikationen genutzt werden, die mit diesem Befehl ausgegeben werden. Beispiel: Lync Online, Sharepoint, Office Web Apps Server, …

Get-MobileDevice

Mit diesem Befehl wird eine Liste mit allen angebundenen Smartphones / Tablets / Computers per Active Sync generiert.

Redirect-Message -UrsprungsServer - ZielServer

Dieser Befehl zieht Nachrichten von einer Server Queue zu einem anderen Server um. Wenn es Probleme mit einem Server gibt, können so E-Mails dennoch zugestellt werden.

Get-ExchangeServer|ft Name,Edition,AdminDisplayVersion

Der Befehl generiert eine Tabelle aller Exchange Server mit deren Version. Diese kann man dann mit der unten stehenden Tabelle abgleichen und so das Patchlevel herausfinden.

Exchange 2010 Version
Microsoft Exchange Server 2010 14.00.0639.021
Microsoft Exchange Server 2010 RU1 14.00.0682.1
Microsoft Exchange Server 2010 RU2 14.00.0689.0
Microsoft Exchange Server 2010 RU3 14.00.0694.0
Microsoft Exchange Server 2010 RU4 14.00.0702.1
Microsoft Exchange Server 2010 RU5 14.00.0726.000
Microsoft Exchange Server 2010 SP1 14.01.0218.015
Microsoft Exchange Server 2010 SP1 RU1 14.01.0255.02
Microsoft Exchange Server 2010 SP1 RU2 14.01.0270.001
Microsoft Exchange Server 2010 SP1 RU3 14.01.0289.003
Microsoft Exchange Server 2010 SP1 RU3 v2 14.01.0289.00?
Microsoft Exchange Server 2010 SP1 RU3 v3 14.01.0289.007
Microsoft Exchange Server 2010 SP1 RU4 14.01.0323.001
Microsoft Exchange Server 2010 SP1 RU4 v2 14.01.0323.006
Microsoft Exchange Server 2010 SP1 RU5 14.01.0339.001
Microsoft Exchange Server 2010 SP1 RU6 14.01.0355.002
Microsoft Exchange Server 2010 SP1 RU7 14.01.0421.000
Microsoft Exchange Server 2010 SP1 RU7 v2 14.01.0421.002
Microsoft Exchange Server 2010 SP1 RU7 v3 14.01.0421.003
Microsoft Exchange Server 2010 SP1 RU8 14.01.0438.000
Microsoft Exchange Server 2010 SP2 14.02.0247.005
Microsoft Exchange Server 2010 SP2 RU1 14.02.0283.003
Microsoft Exchange Server 2010 SP2 RU2 14.02.0298.004
Microsoft Exchange Server 2010 SP2 RU3 14.02.0309.002
Microsoft Exchange Server 2010 SP2 RU4 14.02.0318.002
Microsoft Exchange Server 2010 SP2 RU4 v2 14.02.0318.004
Microsoft Exchange Server 2010 SP2 RU5 14.02.0328.005
Microsoft Exchange Server 2010 SP2 RU5 v2 14.02.0328.010
Microsoft Exchange Server 2010 SP2 RU6 14.02.0342.003
Microsoft Exchange Server 2010 SP3 14.03.0123.004
Microsoft Exchange Server 2010 SP3 RU1 14.03.0146.000
Microsoft Exchange Server 2010 SP3 RU2 14.03.0158.001
Microsoft Exchange Server 2010 SP3 RU3 14.03.0169.001
Microsoft Exchange Server 2010 SP3 RU4 14.03.174.001
Microsoft Exchange Server 2010 SP3 RU5 14.03.181.006
Microsoft Exchange Server 2010 SP3 RU6 14.03.195.001
Microsoft Exchange Server 2010 SP3 RU7 14.03.210.002
Microsoft Exchange Server 2010 SP3 RU8 14.03.224.001
Microsoft Exchange Server 2010 SP3 RU8 v2 14.03.224.002
Microsoft Exchange Server 2010 SP3 RU9 14.03.235.001
Microsoft Exchange Server 2010 SP3 RU10 14.03.0248.002
Microsoft Exchange Server 2010 SP3 RU11 14.03.0266.001
Microsoft Exchange Server 2010 SP3 RU12 14.03.0279.002
Microsoft Exchange Server 2010 SP3 RU13 14.03.0294.000
Microsoft Exchange Server 2010 SP3 RU14 14.03.0301.000
Microsoft Exchange Server 2010 SP3 RU15 14.03.0319.002
Microsoft Exchange Server 2010 SP3 RU16 14.03.0339.000
Microsoft Exchange Server 2010 SP3 RU17 14.03.0352.000
Microsoft Exchange Server 2010 SP3 RU18 14.03.0361.001
Exchange 2013 Version
Microsoft Exchange Server 2013 Preview 15.00.0466.013
Microsoft Exchange Server 2013 RTM 15.00.0516.032
Microsoft Exchange Server 2013 CU1 15.00.0620.029
Microsoft Exchange Server 2013 CU2 15.00.0712.022
Microsoft Exchange Server 2013 CU2 v2 15.00.0712.024
Microsoft Exchange Server 2013 CU3 15.00.0775.038
Microsoft Exchange Server 2013 SP1 (CU4) 15.00.0847.032
Microsoft Exchange Server 2013 CU5 15.00.0913.022
Microsoft Exchange Server 2013 CU6 15.00.0995.029
Microsoft Exchange Server 2013 CU7 15.00.1044.025
Microsoft Exchange Server 2013 CU8 15.00.1076.009
Microsoft Exchange Server 2013 CU9 15.00.1104.005
Microsoft Exchange Server 2013 CU10 15.00.1130.007
Microsoft Exchange Server 2013 CU11 15.00.1156.006
Microsoft Exchange Server 2013 CU12 15.00.1178.004
Microsoft Exchange Server 2013 CU13 15.00.1210.003
Microsoft Exchange Server 2013 CU14 15.00.1236.003
Microsoft Exchange Server 2013 CU15 15.00.1263.005
Microsoft Exchange Server 2013 CU16 15.00.1293.002
Microsoft Exchange Server 2013 CU17 15.00.1320.004
Microsoft Exchange Server 2013 CU18 15.00.1347.002
Exchange 2016 Version
Microsoft Exchange Server 2016 Preview 15.01.0225.017
Microsoft Exchange Server 2016 RTM 15.01.0225.042
Microsoft Exchange Server 2016 CU1 15.01.0396.030
Microsoft Exchange Server 2016 CU2 15.01.0466.034
Microsoft Exchange Server 2016 CU3 15.01.0544.027
Microsoft Exchange Server 2016 CU4 15.01.0669.032
Microsoft Exchange Server 2016 CU5 15.01.0845.034
Microsoft Exchange Server 2016 CU6 15.01.1034.026
Microsoft Exchange Server 2016 CU7 15.01.1261.035

Sharepoint – Fehler eines Vorgangs, weil das folgende Zertifikat Überprüfungsfehler aufweist… (Event-ID: 8311) #2

Im Eventlog von einem Sharepoint 2013 Server tauchten immer wieder folgende Fehler im Eventlog auf, welche nicht im Zusammenhang mit der fehlenden Zertifikatskette des Zertifikates, dass im ISS zugeordnet ist.

  •  Fehler eines Vorgangs, weil das folgende Zertifikat Überprüfungsfehler aufweist: …… SSL policy errors have been encountered. Error code ‚0x2‘..
  • An operation failed because the following certificate has validation errors: The root of the certificate chain is not a trusted root authority.

Fehler beheben

Der lokale Sharepoint Server Certificate Trust Store muss neu erstellt werden:

$rootCert = (Get-SPCertificateAuthority).RootCertificate
New-SPTrustedRootAuthority -Name "localNew" -Certificate $rootCert

SQL Server – Fehler beim SSPI-Handshake (Fehlercode 0x8009030c, Zustand 14)… (Event-ID: 17806)

Nach Konfigurationen am Sharepoint 2013 ist auf einmal die Verbindung zum SQL Server abgerissen und Sharepoint war nicht mehr funktionsfähig. Nach dutzenden Versuchen und einer erneuten Sharepoint Installation, war auch im Konfigurations-Assistenten keine Verbindung zum SQL Server möglich. Andere Programme konnten aber den SQL Server weiterhin erreichen. Da es sich um ein lokalen Server ohne Domäne handelte, konnte auch kein fehlender SPN die Ursache sein.

Da ich einige Konfigurationsänderungen nacheinander gemacht habe, kann ich nicht genau sagen was diesen Fehler ausgelöst hat. Ich vermute aber das die Ursache durch die Umbennenung des Sharepoint Servers (rename-SPServer) den Fehler verursacht hat. Ich gehe davon aus, dass nun nicht mehr „computername\benutzer“ als Authentifizierung zum SQL Server gesendet wurde, sondern „umbenannterSharepointServerName\benutzer“, der natürlich nicht existierte.

Fehler die im Eventlog auftreten. Folgende Event-ID´s können vorkommen: 17806, 18452, 5586

  • Fehler beim SSPI-Handshake (Fehlercode 0x8009030c, Zustand 14) beim Herstellen einer Verbindung mit integrierter Sicherheit. Die Verbindung wurde geschlossen. Ursache: Fehler bei AcceptSecurityContext. Die Fehlerursache wird durch den Windows-Fehlercode angegeben. Der Anmeldeversuch ist fehlgeschlagen. [CLIENT: 127.0.0.1]
  • Anmeldefehler. Die Anmeldung stammt aus einer nicht vertrauenswürdigen Domäne und kann mit der Windows-Authentifizierung nicht verwendet werden. [CLIENT: 127.0.0.1]
  • Unbekannte SQL-Ausnahme ‚18452‘. Weitere Fehlerinformationen aus SQL Server finden Sie unten. Anmeldefehler. Die Anmeldung stammt aus einer nicht vertrauenswürdigen Domäne und kann mit der Windows-Authentifizierung nicht verwendet werden.

Fehlerbehebung

Im SQL Server Konfigurations-Manager, unter den SQL Native Client Konfigurationen, Aliase für angelegte Zugriffzuordnungen und Sharepoint Servernamen erstellen, löste dann das Problem.

Die Open-Prozedur für den Dienst „WmiApRpl“… (Event-ID 1008)

Im Eventlog tauchen immer wieder Fehler mit der Event-ID 1008 auf. Diese beziehen sich auf die Performance Counter, die anscheinend Probleme verursachen.

Beispiel für Fehlermeldungen:

  • Die Open-Prozedur für den Dienst „WmiApRpl“ in der DLL „C:\Windows\system32\wbem\wmiaprpl.dll“ war nicht erfolgreich. Die Leistungsdaten für diesen Dienst sind nicht verfügbar. Die ersten vier Bytes (DWORD) des Datenbereichs enthalten den Fehlercode.
  • Die Open-Prozedur für den Dienst „BITS“ in der DLL „C:\Windows\System32\bitsperf.dll“ war nicht erfolgreich. Die Leistungsdaten für diesen Dienst sind nicht verfügbar. Die ersten vier Bytes (DWORD) des Datenbereichs enthalten den Fehlercode.

Diese hängen mit der Eventlog-ID 2004 zusammen, die folgende Fehler generiert:

  • Das Serverdienst-Leistungsobjekt kann nicht geöffnet werden. Die ersten vier Bytes (DWORD) des Datenabschnitts enthalten den Statuscode.

Fehler in der Registry suchen

Man könnte meinen, dass der Fehler in der Registry dir Ursache sind. Ein Versuch wäre der Gruppe Leistungsüberwachungsbenutzer vollen Zugriff auf folgenden Schlüssel und deren Unterschlüssel zu gewähren:

 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib 

Zusätzlich sollte man der Gruppe WSS_WPG vollen Zugriff auf den Schlüssen gewähren:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WmiApRpl\Performance

Performance Counter deaktivieren

Wenn dies alles nicht hilft, kann man die Performance Counter die Probleme verursachen, einfach deaktivieren.

Alle Performance Counter anzeigen:

lodctr /Q

Performance Counter deaktivieren:

lodctr /D:"WmiApRpl"

Das gleiche Prinzip gilt natürlich auch für alle anderen Performance Counter, die Probleme verursachen.

lodctr /D:"BITS"

Sharepoint 2013 – Fehler eines Vorgangs, weil das folgende Zertifikat Überprüfungsfehler aufweist (Event-ID: 8311)

Sharepoint hat seinen eigenen Zertifikatsspeicher, welcher nicht auf den Speicher der im Windows importierten Zertifikate zugreift. Daher muss man die Zertifikatskette in Sharepoint importieren. Dieser Fehler tauch auch im Eventlog unter der ID 8311 auf und könnte folgenden Fehler generieren: The root of the certificate chain is not a trusted root authority

$ca = New-Object System.Security.Cryptography.x509Certificates.x509Certificate2(“PfadZumZertifikat”)
New-SPTrustedRootAuthority –Name “Name der CA” –Certificate $tca

Sharepoint 2013 – Die Ping-Überprüfung des Computers ist fehlgeschlagen (Event-ID: 8317, 8315)

Im Eventlog eines Sharepoint 2013 Servers tauchte auf einmal folgender Fehler im Eventlog auf: Die Ping-Überprüfung des Computers „ComputerName (SharePoint – 80(_LM_W3SVC_849207529_ROOT))“ ist fehlgeschlagen. Der Computer ist seit „10.10.2017 14:03:34“ nicht verfügbar.

Fehler 8315 / 8317 beheben

Script 1 sollte den Fehler beheben:

Script 1

$pingURL = "http://ComputerName"
$myReq = [System.Net.HttpWebRequest]::Create($pingURL)
$myReq.Method = "SPPING";
$response = $myReq.GetResponse();
$response.StatusCode

Sollte Scripnt 1 folgenden Fehler generieren: „Exception calling „GetResponse“ with „0“ argument(s): „The remote server returned an error: (405) Method Not Allowed.“, muss noch Script 2 ausgeführt werden.

Script 2

Import-Module WebAdministration
add-WebConfiguration /system.webserver/handlers "IIS:\" -value @{
name =          "SPPINGVerbHandler"
verb =          "SPPING"
path =          "*"
modules =       "ProtocolSupportModule"
requireAccess = "None"
}

Script – Reset Windows Update Agent

In letzter Zeit häufen die Probleme mit Windows Update, vor allem unter Windows 10: Beispielsweise stürzt die Suche der Update einfach ab und liefert keine Ergebnisse oder ein Update konnte nicht erfolgreich installiert werden und hält damit die weitere Installation auf.

Mit dem Script Reset Windows Update Agent lassen sich die meisten Probleme die mit dem Windows Update Dienst im Zusammenhang stehen, beheben. Das Script gibt es unter folgender URL: https://gallery.technet.microsoft.com/scriptcenter/Reset-Windows-Update-Agent-d824badc

Das Script muss als Administrator gestartet werden. Danach stehen Funktionen zur Problembehebung bereit.

Lync / Skype for Business automatisch starten per Gruppenrichtlinie

Unsere Nutzer beenden Skype for Business regelmäßig und manche sind sogar so schlau, dass sie den Autostart deaktivieren. Das wollen wir aber nicht, da sonst die Presence Funktion, die an die Telefonanlage angebunden ist, für den Benutzer nicht mehr sichtbar ist.

Leider findet sich in den offiziellen ADMX-Dateien zu Office 2013 / Office 2016 keine Konfiguration für den Autostart. Es gibt zwar einige inoffuielle Erweiterungen, die aber mit Vorsicht zu genießen sind. Alle die ich ausprobiert hatte, haben einfach einen Key im Ordner Run erzeugt, der aber keinen Bezug zur installierten x32/x64 Version hatte. Demnach wird der Key für x32 Systeme falsch gesetzt. Das Gleiche gilt für andere Office Versionen: Wenn z.B. Office 2016 installiert ist, stimmt der Pfad auch nicht mehr.

Beispiel Skype for Business mit Office 2016 in x64 installiert auf x64 Windows

"C:\Program Files\Microsoft Office\Office16\lync.exe" /fromrunkey

Beispiel Skype for Business mit Office 2016 in x32 installiert auf x64 Windows

"C:\Program Files(x86)\Microsoft Office\Office16\lync.exe" /fromrunkey

Beispiel Skype for Business mit Office 2013 in x64 installiert auf x64 Windows

"C:\Program Files\Microsoft Office\Office15\lync.exe" /fromrunkey

Beispiel Skype for Business mit Office 2013 in x32 installiert auf x64 Windows

"C:\Program Files(x86)\Microsoft Office\Office15\lync.exe" /fromrunkey

Aus diesem System kann man alle anderen Office, Lync, Skype for Business und x32 / x64 Varianten ableiten.

Gruppenrichtlinie erstellen

Nun kann man diesen Registry Schlüssel einfach per GPO erzeugen oder man benutzt folgende Variante: Benutzerkonfiguration -> Administrative Vorlagen -> System -> Anmelden -> Diese Programme bei der Benutzeranmeldung ausführen und benutzt dann den zuvor erstellten Pfad. Beispiel für Office 2013 in 32 bit installiert, auf einem 64 bit Windows: C:\Program Files(x86)\Microsoft Office\Office15\lync.exe

Sharepoint Foundation 2013 – Installation ohne Active Directory

Microsoft unterstützt zwar eine Installation ohne Active Directory, es wird aber davon abgeraten. Nach der Installation, wenn man den Konfigurationsassistenten ausführt, steht eine lokale Variante zur Verfügung. Diese erzwingt aber eine Installation auf einem Server mit SQL Server Express und die Farm kann nachträglich nicht mehr erweitert werden. Wer also einen seperaten SQL Server verwenden will, kommt hier nicht weiter, weil ein Fehler das Fortführen verweigert. Das kann man aber glücklicherweise umgehen.

Der angegebene Benutzer "sharepoint" ist ein lokales Konto. Lokale Konten sollten nur im eigenständigen Modus verwendet werden.

Konfigurationsdatenbank manuell anlegen

Hierzu startet man die Powershell des Sharepoint Server als Administrator, sonst wird ein Fehler generiert:

News-SPConfigurationDatabase - DatabaseName SPF_ConfigDB - Databaseserver FQDNzumSERVER

Als Administrator läuft der Befehl dann auch fehlerfrei durch. Im Anschluss kann der Sharepoint Installationsassistent wieder gestartet werden, welcher sich direkt auf die erstellte Konfiguration der Farm verbindet.

 

Sharepoint Foundation 2013 – Bei der Installation wird .Net Framework 4.5 nicht gefunden

Bei der Installation von Sharepoint Foundation 2013 Service Pack 1 auf Windows Server 2012 R2 kam bei der Installation folgende Fehlermeldung, obwohl .Net Framework 4.5 installiert war:

Der Vorgang kann von Setup aufgrund der folgenden Fehler nicht fortgesetzt werden: Für dieses Produkt ist Microsoft .Net Framework 4.5 erforderlich


Die Ursache diese Fehlermeldung ist ein Update auf .Net Framework 4.6, dass heute automatisch installiert wird.

Lösung wsssetup.dll austauschen

Der einfachste Weg ist die DLL-Datei wsssetup.dll im Installationspaket zu ersetzen. Diese DLL-Datei kann man bei Microsoft runterladen: wsssetup.dll

Als erstes wird das Installationspaket extrahiert:

sharepoint.exe /extract:C:\SharePointInstaller

Achtung: Auf keinen Fall 7-Zip oder was auch immer dafür verwenden, sonst kommt es zu folgendem Fehler: Sharepoint 2013 – Sprache des Installationspakets wird von Ihrem System nicht unterstützt

Nun kann die Datei ersetzt werden und die Installation wird sich problemlos starten lassen.

Andere Lösungen

Natürlich kann man das Problem auch anders angehen und das System mit einem .Net Framework Cleaner von .Net Framework 4.6 befreien, .Net Framework 4.5 installieren und bevor man Updates installiert, die Sharepoint Installation durchführen. Davon würde ich aber dringend abraten.