Auf der Homepage von Steve Goodmann kann man ein Script runterladen, dass die Dokumentation der Exchange-Umgebung im HTML-Format erstellen kann.
Windows Server 2008 R2 – Standard zur Enterprise
Einen Windows Server 2008 R2 Standard kann man nachträglich zu Enterprise Version umrüsten. Zu beachten ist, dass man nur auf höhere Lizenzen upgraden kann. Ein Wechsel von Enterprise auf Standard ist daher nicht möglich.
Außerdem zu beachten: Es wird nicht nur die Lizenz bzw. der Product-Key geändert, sondern viele Änderungen am System vorgenommen. Daher ist ein später Upgrade auf einem produktiven Server nicht unbedingt die beste Lösung.
DISM /online /Get-CurrentEdition
Standard auf Enterprise ändern
DISM /online /Set-Edition:ServerEnterprise /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Active Directory – User Bilder – Outlook 2010 / Lync 2010 – Teil 2
Jetzt werde ich zeigen, wie man das zuvor aktivierte Feature auch benutzen kann, bzw. Bilder in das Active Directory laden kann.
Einschränkungen für Bilder
- Bilder müssen kleiner als 10 KB sein
- Bilder müssen im JPG oder GIF Format vorlieren
Bilder in das Active Directory laden
Dem Benutzer manuel.maliszewski wird das Bild „C:\Users\chilli\Desktop\manuel.maliszewski.jpg“ zugeordnet und hoch geladen.
Import-RecipientDataProperty -Identity manuel.maliszewski -Picture -FileData ([Byte[]]$(Get-Content -path "C:\Users\chilli\Desktop\manuel.maliszewski.jpg" -Encoding Byte -ReadCount 0))
Bilder hochladen automatisieren
Damit das folgendes Script funktioniert, müssen die Bilder im Verzeichnis „C:\Photos“ vorname.nachme.jpg heißen. Der Aufruf würde dann so aussehen: script.ps -all
param([Switch]$all, [String]$UserName) #Default Values. Change them based on your environment. $DefaultPhotoPath = 'C:\Photos' Function CheckPhoto(){ Write-Warning "Validating file(s).." Write-Host "File exists... " -nonewline If (Test-Path $PhotoPath) { Write-Host "[OK]" -ForeGroundColor Green Write-host "Photo size... " -nonewline $PhotoSize = Get-ChildItem $PhotoPath | select Length If ($PhotoSize.Length -le 10000) { Write-Host "[OK]" -ForeGroundColor Green } Else { Write-Host "[Fail]" -ForeGroundColor Red; exit } } Else { Write-Host "[Fail]" -ForeGroundColor Red Exit } } Function UploadAll(){ ForEach ($TempFile in Get-ChildItem $DefaultPhotoPath | Where-Object { $_.Extension -eq ".jpg" } ) { $TempUserName = $TempFile.Name.substring(0, $TempFile.Name.Length - 4) Write-Host $TempUserName -ForeGroundColor Yellow -NoNewLine Import-RecipientDataProperty -Identity $TempUserName -Picture -FileData ([Byte[]]$(Get-Content -path $TempFile.Fullname -Encoding Byte -ReadCount 0)) Write-Host "[Done]" -ForeGroundColor Green } } If ( $all -eq $true) { Write-Warning " ## This action will upload all pictures of C:\Photos to the AD users." Write-Warning " ## All pictures must have the same name of the usernames" Write-Warning "Are you sure that you want upload all pictures to the users (Y/N)?" $Opt = Read-Host If ( $Opt -eq 'y' ) { UploadAll; } Else { Write-Host "No changes were made."; Exit } } Else { $PhotoPath = $DefaultPhotoPath + $UserName + '.jpg' CheckPhoto; If ( $AbortMission -eq '$true' ) { Write-Error "Please, review the errors and try again." } Else { Import-RecipientDataProperty -Identity $UserName -Picture -FileData ([Byte[]]$(Get-Content -path $PhotoPath -Encoding Byte -ReadCount 0)) } }
Dateinamen anpassen
Um den Upload Prozess zu automatisieren, ist es sinnvoll alle Bilder in dem Syntax vorname.nachname.jpg zu speichern. Da das in der Regel nicht der Fall ist, kann mit einigen Tools Dateinamen umbenennen. Wir haben z.B. Bilder im Format Nachname-Vorname_s.jpg und müssen diese entsprechend anpassen. Dafür kann man z.B. Total Commander benutzen und mit dem Dateiumbennenungs-Feature arbeiten.
In dem Beispiel würde das dann so aussehen:
Suchen nach: (.*)\-(.*)\_s.jpg
Ersetzen mit: $2.$1.jpg
Links
Active Directory – User Bilder – Outlook 2010 / Lync 2010 – Teil 1
Um jedem Active Directory Benutzer ein Bild zuzuordnen, muss erstmal ein bisschen was konfiguriert werden.
Active Direcory
DLL regestrieren
Um die Bilder im Active Directory aktivieren zu können, muss zuerst eine DLL registriert werden.
Start -> Ausführen -> regsvr32 schmmgmt.dll
Active Directory Schema
Jetzt muss das Attribut des Bildes auf allen Globalen Katalog Server repliziert werden.
- Im ADSI-Editor das User Objekt öffnen
- Das Attribut thumbnailPhoto öffnen
- Die Eigenschaft „Replicate this attribute to the Global Catalog“ aktivieren
Offline Adressbuch
Jetzt muss das Offline Adressbuch angepasst werden. Damit werden die Bilder dem OAB hinzugefügt und stehen damit dem Exchange Cache-Modus zur Verfügung.
Attribut löschen
$attributes = (Get-OfflineAddressBook).ConfiguredAttributes
$attributes.Remove("thumbnailphoto,Indicator")
Get-OfflineAddressBook | Set-OfflineAddressBook -ConfiguredAttributes $attributs
Neues Attribute hinzufügen
Nun kann das Attribut mit dem Bild dem OAB hinzugefügt werden.
$attributes.Add("thumbnailphoto,Value")
Get-OfflineAddressBook | Set-OfflineAddressBook -ConfiguredAttributes $attribute
Offline-Adressbuch regenerieren
Damit die Änderungen aktiviert werden, muss das OAB regeneriert werden.
Get-OfflineAddressBook | Update-OfflineAddressBook
Ergebnis in Outlook 2010 und Lync 2010
Blackberry Enterprise Server – Lync Integration
Lync 2010 kann mit dem Blackberry Enterprise Server verbunden werden. Somit kann man mit dem Blackberry über Lync schreiben und angeschrieben werden.
Blackberry Enterprise Server – Vorraussetzungen
- Dot Net – Windows Feature installieren
- C++ 2008 Runtime Installieren/li>
- SQL Nativ Client 64 Bit Installieren/li>
- Microsoft Unified Communications Managed API 2.0 Core Redist 64Bit Installieren/li>
- Microsoft Unified Communications Managed API 2.0 Core Redist 64Bit – Update I Installieren/li>
- Office Communications Server 2007 R2 Core Components Installieren
Blackberry Enterprise Server – Zertifikat
Der Blackberry Enterprise Server braucht ein Zertifikat, dass ihm die Verbindung zum Lync Server 2010 erlaubt. Das Zertifikat muss mit bestimmten Attributen angefordert werden, damit der BES die Zuordnung treffen kann. Das Zertifikat muss aus der Domänen CA kommen.
Eigenschaften
CN=S8K023.hypoport.local
DNS=S8K023.hypoport.local
Friendly-Name: OCSConnector
Zertifikat – Installation
Das angeforderte und ausgestellt Zertifikat von der Domänen CA muss in den lokalen Computer unter eigene Zertifikate importiert werden.
Activ Directory – Konfiguration
RTCUniversalAdmins – BESAdmin
BESAdmin der Gruppe RTCUniversalAdmins hinzufügen
Blackberry Enterprise Server – Collaboration Server
Blackberry Enterprise Server Collaboration muss installiert sein, damit Lync mit dem BES verknüpft werden kann.
Blackberry Enterprise Server Collaboration – Konfiguration
Instant Messaging Server-Pool: S8K023.hypoport.local
Blackberry Collaboration Service FQDN: S8KV004.hypoport.local
Protokoll: TLS
Port: 65061
Blackberry Enterise Server – Lync App verteilen
Damit jedes Blackberry automatisch den Enterprise Messenger für Lync erhält, muss dieser per Software-Richtlinie an alle Blackberrys verteilt werden.
Blackberry Enterprise Server – Enterprise Messenger
- Enterprise Messenger als Anwendung importieren
- Softwarekonfigurationsgruppe anpassen
Windows 7 – Probleme mit Windows Update
Immer wieder kommt es vor, dass das ein oder andere Update über Windows Update zu einem Fehler führt, der einfach nicht zu behben ist. In diesen Fällen kann man Windows Update und die heruntergeladenen Komponenten reparieren.
Die Anleitung gilt für Windows ab Vista/Server 2008 und ist nicht unter Windows XP benutzbar.
Defekte Pakete
Komponenten mit Status abfragen
Sollten hier Fehler erscheinen, müssen die fehlerhaften Packages gelöscht werden. Damit sollte das Problem dann schon behoben sein.
dism /online /get-packages
Fehlerhfate Packages entfernen
„Package_for_KB976932~31bf3856ad364e35~amd64~~6.1.1.17105“ ist ein Beispiel das durch das fehlerhafte Paket ersetzt werden muss.
dism /online /remove-package /packagename:Package_for_KB976932~31bf3856ad364e35~amd64~~6.1.1.17105
Windows Update reparieren
Sollte das Problem nicht durch ein fehlerhaftes Package enstehen, muss Windows Update repariert, bzw. auf den Standard zurückgesetzt, sowie alle gecachten Dateien entfern werden.
Dienste beenden
Um die Verzeichnisse umbennen zu können, müssen die Dienste beendet werden.
net stop bits net stop wuauserv
Cache leeren
Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
Ordner umbennen
Ren %systemroot%\SoftwareDistribution\DataStore *.bak Ren %systemroot%\SoftwareDistribution\Download *.bak Ren %systemroot%\system32\catroot2 *.bak
Bibliotheken regestrieren
Es empfiehlt sich den Inhalt in eine cmd Datei zu kopieren und auszuführen.
cd /d %windir%\system32 regsvr32.exe atl.dll regsvr32.exe urlmon.dll regsvr32.exe mshtml.dll regsvr32.exe shdocvw.dll regsvr32.exe browseui.dll regsvr32.exe jscript.dll regsvr32.exe vbscript.dll regsvr32.exe scrrun.dll regsvr32.exe msxml.dll regsvr32.exe msxml3.dll regsvr32.exe msxml6.dll regsvr32.exe actxprxy.dll regsvr32.exe softpub.dll regsvr32.exe wintrust.dll regsvr32.exe dssenh.dll regsvr32.exe rsaenh.dll regsvr32.exe gpkcsp.dll regsvr32.exe sccbase.dll regsvr32.exe slbcsp.dll regsvr32.exe cryptdlg.dll regsvr32.exe oleaut32.dll regsvr32.exe ole32.dll regsvr32.exe shell32.dll regsvr32.exe initpki.dll regsvr32.exe wuapi.dll regsvr32.exe wuaueng.dll regsvr32.exe wuaueng1.dll regsvr32.exe wucltui.dll regsvr32.exe wups.dll regsvr32.exe wups2.dll regsvr32.exe wuweb.dll regsvr32.exe qmgr.dll regsvr32.exe qmgrprxy.dll regsvr32.exe wucltux.dll regsvr32.exe muweb.dll regsvr32.exe wuwebv.dll
Standardsicherheitsbeschreibung zurücksetzten
sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
Winsock zurücksetzen
netsh reset winsock
Dienste starten
Nun können die Dienste wieder gestarten werden.
net start bits
net start wuauserv
BITS-Warteschlagen leeren
bitsadmin.exe /reset /allusers
Outlook – Autovervollständigen der E-Mail Adressen
Outlook 2003
In Outlook 2003 – 2007 wird die Autovervollständigen-Liste im Verzeichnis %APPDATA%\Microsoft\Outlook in einer *.nk2 Datei gespeichert. Die Datei hat den Namen des MAPI-Profils. So ist das übernehmen dieser Datei über Computer hinweg kein Problem. Diese Liste hat eine Limitierung von 1000 Einträgen bei Outlook 2003 und 2000 Einträgen bei Outlook 2007.
Limitierung ändern
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\AutoNameCheck\MaxNicknames = dword 1000
NK2 Datei bearbeiten/exportieren
Das Tool NK2Edit kann *.NK2 Dateien öffnen, bearbeiten und sogar den Inhalt exportieren.
Outlook 2010
Hier wird die Liste direkt im Outlook-Profil im Ordner „Vorgeschlagene Kontakte“ abgelegt. Diese Liste wird auf dem Server gespeichert, so dass diese auf allen Computern zur Verfügung steht und nicht gesichert werden muss.
Outlook 2003/2007 *.NK2 importieren
Die .NK2 Datei muss im Ordner *%APPDATA%\Microsoft\Outlook liegen.
outlook.exe /importnk2
Office 2003 – Office File Validation Add-In
Die Office-Dateiüberprüfung (OFV) ist eine Sicherheitsfunktion, die in Microsoft Office 2010 eingeführt wurde und mit der überprüft wird, ob eine bestimmte Binärdatei den Erwartungen der Anwendung entspricht. OFV soll den Anwender so vor Bedrohungen schützen. Für Office 2003 wurde dies als Add-In nachgereicht.
Probleme die durch das Office File Validation Add-In verursacht werden sind z.B.:
- Excel 2003 – Excel Dokumente auf Netzlaufwerken können nicht geöffnet werden
Unter Excel 2003 kann es sehr lange dauern, wenn eine größere Excel-Datei von einem Netzlaufwerk geöffnet wird. Unter Umständen ist das Öffnen auch gar nicht möglich.
Problemlösung
In Excel 2003 kann das OFV folgendermaßen deaktiviert werden;
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\Security\FileValidation\EnableOnLoad = DWORD 0
Exchange Server 2003 – Deinstallation – Öffentliche Ordner Instanzen verleiben
Um bestehende Exchange 2003 Server zu deinstallieren, muss der öffentliche Ordner migriert werden. Die Replikation und das Verschieben aller Replikate ist klar. Allerdings kann es unter Umständen passieren, dass nicht alle öffentliche Ordner Instanzen verschwinden. Hierdurch kann der öffentliche Ordner nicht entfernt und der Server somit nicht deinstalliert werden.
Erstmal muss kontrolliert werden, ob diese Ordner als Replikat auf der neuen Exchange Server 2010 Infrastruktur vorhanden sind. Wenn dies nicht der Fall ist, kann man diese exportieren und wieder importieren.
Alle Replikate verschieben
Hier gibt es ein Script das im Installations-Ordner der Exchange 2010 Installation liegt.
MoveAllReplicas.ps1
Alle Änderungen erneut senden
Alle Änderungen an der öffentlichen Ordner Struktur können neu gesendet werden. Wenn es hier vielleicht Replikationsfehler gab, kann dies helfen. EInfach im System Manager den öffentlichen Ordner auswählen und die Änderungen für die letzten 3600 Tage erneut senden.
Öffentlicher Ordner trotz Instanzen entfernen
Wenn man sichergestellt hat, dass ein Replikat vorhanden ist oder der Inhalt der Ordner die als Instanzen verbleiben exportiert wurde, kann der Ordner entgültig gelöscht werden. Dies muss allerdings über den ADSI-Editor getan werden.
Exchange Server 2003 – Deinstallation – Routinggruppen & Connectoren
Wenn ein Server Mitglied einer Routinggruppe ist, kann dieser Server nicht deinstalliert werden. Eine Routinggruppe kann wiederum nicht gelöscht werden, wenn dieser noch Connectoren angehören oder Mitglieds-Server hat. Nicht alle Connectoren tauchen im Exchange System Manager auf. Diese müssen auf der Exchange 2007/2010 Seite entfernt werden.
Alle Connectoren anzeigen
Mit diesem Befehl kann man die Connectoren anzeigen lassen. Die ID vom Connector der gelöscht werden soll, muss notiert werden.
get-routinggroupconnector | fl
Connectoren löschen
Mit der ID kann der Connector jetzt gelöscht werden.
remove-routinggroupconnector -identidy "Connector ID"
Routinggruppen löschen
Wenn alle Connectoren gelöscht worden sind, kann die Routinggruppe gelöscht werden. Vorher müssen alle Mitglieder gelöscht werden. Wenn dies nicht über den System Manager möglich ist, kann die Routinggruppe direkt mit dem ADSI-Editor gelöscht werden.