Server 2012R2/2016: Event Error DCOM 10016 - APPID 9CA88EE3-ACB7-47C8-AFC4-AB702511C276 / F72671A9-012C-4725-9D2F-2A4D32D65169

Problem:
Nach der Installation meiner Windows 2012R2 und 2016 Server habe ich im Eventlog immer wieder folgende Meldungen gelesen:
Quelle: Microsoft-Windows-DistributedCOM
Ereignis-ID: 10016
Beschreibung:
Durch die Berechtigungseinstellungen für "Anwendungsspezifisch" wird dem Benutzer "NT-AUTORITÄT\SYSTEM" (SID: S-1-5-18) unter der Adresse "LocalHost (unter Verwendung von LRPC)" keine Berechtigung vom Typ "Lokal Aktivierung" für die COM-Serveranwendung mit der CLSID {D63B10C5-BB46-4990-A94F-E40B9D520160} und der APPID {9CA88EE3-ACB7-47C8-AFC4-AB702511C276} im Anwendungscontainer "Nicht verfügbar" (SID: Nicht verfügbar) gewährt. Die Sicherheitsberechtigung kann mit dem Verwaltungstool für Komponentendienste geändert werden.


Lösung:
Das Problem ist, dass der genannte Benutzer (hier: SYSTEM) keine Berechtigung zur Lokalen Aktivierung der DCOM-Komponente besitzt. Um dem Benutzer diese Berechtigung zu geben, müss man wie folgt vorgehen:

1.) regedit starten und zum Schlüssel "HKEY_CLASSES_ROOT\AppID\{9CA88EE3-ACB7-47c8-AFC4-AB702511C276}" navigieren
2.) Hier in den Berechtigungen den Besitzer auf "Administratoren" ändern (Default ist TrustedInstaller)
3.) Den Administratoren dann die Berechtigung "Vollzugriff" auf das Objekt gewähren
4.) Jetzt öffnet man die Komponentendienste mittels "dcompcfg"
5.) In der DCOM-Konfiguration zur entsprechenden APPID navigieren (Hierbei handelt es sich um den "RuntimeBroker")
6.) Den Reiter "Sicherheit" öffnen
7.) Im Abschnitt "Start- und Aktivierungsberechtigungen" auf den Button "Bearbeiten" klicken
8.) Dem Benutzer in der Event-Meldung (hier: System) hinzufügen und die Berechtigungen "Lokale Aktivierung" und "Lokaler Start" geben
9.) FERTIG - der Fehler sollte jetzt nicht mehr auftauchen

Ich hatte die Meldung auch nochmals mit der APPID "F72671A9-012C-4725-9D2F-2A4D32D65169" - hier genauso damit verfahren!

Quelle:
Wiki Butzhammer.de: DistributedCOM-Fehler 10016, APPID 9CA88EE3-ACB7-47C8-AFC4-AB702511C276

symbolische links setzen unter Windows & Linux

Jeder Admin wird sich jetzt denken "was soll das denn nun ?" aber trotzdem schreibe ich hier mal etwas zu diesem Thema.
Es dient auch mir als kleiner Spicker :-)

In beiden Beispielen wird die letzte Version eines Ordners im root Ordner mit latest verlinkt.

Unter Linux ist es möglich sogenannte Links zu setzen. Die verhalten sich wie normale Ordner bzw Dateien liegen aber eigentlich an einem anderen Ort im Dateisystem. Somit kann man einfach z.B. das Storage einer Owncloud auf einen NFS Share legen oder, was auch gerne gemacht wird, immer auf die letzte Version einer Datei linken. Der Aufruf dazu ist
ln -s Zielverzeichnis Linkname
löschen kann man den link mit dem Befehl
rm Linkname

ln linux

Das selbe verhalten kann man auch unter Windows mit mklink nachvollziehen. Das rettet einem manchmal den Tag wenn z.B. der Benutzer die Länge von 256 Zeichen überschritten hat. Dann steigt man tiefer ein und kann die Datei umbenennen oder eben ein Backup durchführen. Früher habe ich dafür immer subst verwendet, das werden jetzt die Windows Admins kennen ;-)
Link setzen mit Windows (cmd als Admin)
mklink /D Linkname Zielverzeichnis
Achtung die Parameter sind im Vergleich zu Linux verdreht, passiert mir jedesmal deswegen die Warnung.
Mit dem folgenden Befehl kann man einen Link auf einen Ordner / eine Datei löschen
rmdir Linkname

mklink windows

Kleiner Tipp :
Was man unter Windows damit auch machen kann ist Spiele von Steam, Uplay oder Origin auf eine andere HDD zu schieben.


Informationen zu der Befehlszeile :
technet.microsoft.com - mklink erklärt
wiki.ubuntuusers.de - ln erklärt
technet.microsoft.com - subst erklärt

Exchange: Kostenloses SAN-Zertifikat bei StartSSL für Serverumzug

Problem:
Während meines Exchange-Server-Swings habe ich temporär ein zweites SAN-Zertifikat benötigt und wollte ein öffentliches haben, da sonst die Smartphones über ActiveSync Probleme machen!

Lösung:
Ich habe bei StartSSL ein kostenloses SAN-Zertifikat bekommen. Der Vorteil für mich, gegenüber von Let'sEncrypt", das Zertifikat ist ein Jahr gültig (nicht nur 3 Monate) und ich konnte eine CSR-Anfrage von meinem Exchange "reinkippen".

Nachteil:
Das Zertifikat ist nur ein Jahr gültig und wird von Apple als unsicher eingestuft (Nicht verwunderlich). Der Internet Explorer hat das Zertifikat als valid eingestuft, da hier noch die Root-CA als vertrauenswürdig gilt.

Als temporäres OWA- und SMTP-SAN-Zertifikat hat es für mich gereicht und hat auch super geklappt!

Franky hat hier eine super tolle Anleitung dazu gemacht (Wie immer!!): Frankys Web: Kostenlose SAN-Zertifikate auch bei StartSSL

...und StartSSL findet Ihr hier: StartSSL.com

Installierte Rollen & Features eines Servers anzeigen

Wenn man die installierten Rollen & Features eines Servers anzeigen möchte ist der schnellste Weg die Powershell.
Hierführ wird .NET Framework 4.5 und Powershell 4.0 benötigt.

Der Befehl dafür lautet :
Get-WindowsFeature | Where installed -eq true




Bitte schaut nach ob es ein aktuelleres Update für .NET Framework gibt zum Zeitpunkt der Erstellung war das aktuellste Release 4.5.2


Downloads :
.NET Framework 4.5
Powershell 4.0
“Das Alzheimer-Gesetz der Programmierung: Wenn du einen von dir vor zwei Wochen geschriebenen Code ansiehst, kommt es dir vor als hättest du ihn noch nie gesehen.”
Dan Hurvitz – Software-Entwickler