Seiten

Freitag, 28. November 2014

Exchange 2013 / 2010 - Verteilen der Datenbanken anhand der Präferenz

DAG ist eine feine Sache. Nie war es einfacher seine Exchange Daten ausfallsicher zur Verfügung zu stellen. Doch nach einem Failover gibt es keinen automatischen Failback der Datenbanken, obwohl den Datenbanken Präferenzen vergeben werden können oder besser müssen.

Bei mangelndem Monitoring der Exchange Server kommt es sogar vor, dass ein geschehener Failover nicht einmal auffällt. Um dies zu überwachen nehme ich meist ein Script von Paul Cunningham welches mir immer dann ein Mail schreibt, wenn auf dem Exchange etwas nicht so ist wie ich mir das wünsche: Test-ExchangeServerHealth

Wenn ich nun also feststelle, dass meine Datenbanken nicht auf den dafür vorgesehenen Servern aktiv sind, bediene ich mich eines Scripts welches wir von Microsoft bei der Installation von Exchange 2013 oder 2010 erhalten haben: RedistributeActiveDatabases.ps1

Um die mitinstallierten Scripts verwenden zu können müssen wir in der Exchange Shell zuerst in das entsprechende Verzeichnis wechseln. Die geht am einfachsten mittels folgenden Cmdlet:

cd $exscripts

Exchange 2013 - Ins Script Verzeichnis wechseln

Folgendes Cmdlet platziert die Datenbanken gemäss den konfigurierten Präferenzen:

.\RedistributeActiveDatabases.ps1 -DagName DAG01 -BalanceDbsByActivationPreference -Confirm:$false


Weitere Infos zum Script findet ihr hier: Managing mailbox database copies (im unteren Bereich)

Montag, 24. November 2014

Lokales Administrator Passwort auf mehreren Computern ändern

Sicherheitsexperten empfehlen Passwörter regelmässig zu ändern. Dies wird in Firmenumgebungen meist über die Passwort Richtlinie (Default domain policy) durchgesetzt. Dabei werden aber die Passwörter der lokalem Administratoren-Konten meist vergessen. Wenn ein Eindringling einmal über das lokale Administratoren-Konto Zugriff auf einen Server erlangt hat ist es ein Leichtes auch Passwörter von Domänen-Konten heraus zu finden.

In grösseren Umgebungen ist es aber eher Umständlich die lokalen Administratoren-Passwörter regelmässig von Hand zu ändern. Dafür gibt es ja schlisslich auch Power Shell. so lassen sich auf einen Schlag die lokalen Administratoren-Passwörter von mehreren Computern / Servern ändern.

Active Directory Cleanup

Die digitale Welt stellt uns vor ganz neue Herausforderungen. Eine digitale Unordnung fällt nicht so schnell auf wie eine Digitale. Doch auch in der digitalen Welt ist Ordnung die halbe Miete. Digitale Unordnung findet man oft in der Active Directory. Server / Computer die ausser Betrieb genommen wurden oder Userobjekte von Mitarbeitern welche die Firma verlassen haben geistern oft noch lange in der AD umher und Ordnung zu schaffen ist sehr zeitraubend. Zum Glück hat uns Microsoft in den neueren OS-Versionen eine Power Shell Untersützung für die AD spendiert.

Nicht mehr verwendete Computerobjekte in der AD finden:

Eine Möglichkeit veraltete Computerobjekte in der AD zu finden ist zu schauen wann sich ein Computer zuletzt an der AD angemeldet hat. Dies kann über 2 verschiedene Parameter geschehen:

Get-ADComputer <Computer Name> -LastLogon

Finde Computerobjekte in deiner AD

Seit wir auch im AD-Umfeld mit Power Shell arbeiten können haben sich diverse neue Möglichkeiten ergeben um die eigene AD zu managen. Hier mal ein paar befehle um Computer oder Server in der AD zu finden und das Ergebnis nach bedarf zu filtern:

Finde alle Computer in der AD (Ausgabe in ein CSV):

Get-ADComputer -Filter { OperatingSystem -Like '*' } | Select -Exp Name | Out-File "C:\Scripts\Find_all_Computers_with_OS\All_Computers.csv"

Finde alle Windows Server in der AD (Ausgabe in ein CSV):

Get-ADComputer -Filter { OperatingSystem -Like '*Windows Server*' } | Select -Exp Name | Out-File "C:\Scripts\Find_all_Computers_with_OS\All_Windows_Servers.csv"

Freitag, 26. September 2014

Remote Wipe oder Mobile Device Verwaltung für User deaktivieren

Seit Exchange 2010 können User ihre Mobile Devices über OWA selbst verwalten. Diese Funktion erlaubt den Usern auch für ihre Mobile Devices selbst Remote Wipes durchzuführen. Dies ist so nicht immer gewünscht und kann mittels einer OWA Mailbox Policy eingeschränkt werden.

Eine Default OWA Mailbox Policy wird bei der Installation von Exchange erstellt, diese OWA Mailbox Policy wird aber nicht automatisch auf User angewendet. Es kann also die Default OWA Mailbox Policy angepasst oder eine neue OWA Mailbox Policy erstellt werden.

Mit folgendem Befehl kann der/die Name/n der bestehenden OWA Mailbox Policy/s ausgelesenen werden:

Get-OwaMailboxPolicy |  select name

Ob einem User schon eine OWA Mailbox Policy zugewiesen ist kann mit folgenden Befehl geprüft werden:

Get-CASMailbox b.brunner | FL OWAMailboxPolicy

Um die Mobile Verwaltung für User in OWA zu unterbinden kann die OWA Mailbox Policy folgendermassen angepasst werden:

Set-OwaMailboxPolicy "Default" -ActiveSyncIntegrationEnabled:$false

Nun muss die OWA Mailbox Policy nur noch einem User zugewiesen werden:

Set-CASMailbox b.brunner -OwaMailboxPolicy "Default"

Bei der nächsten Anmeldung des Users in OWA ist der Navigationspunkt "mobile devices" nicht mehr ersichtlich.

Dienstag, 23. September 2014

Exchange Shell Befehle remote ausführen

Wenn Exchange Shell Befehle von einem Server ohne Exchange Installation ausgeführt werden sollen kann folgendes verwendet werden:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://<URL virtuelles Verzeichniss Powershell>/powershell -Authentication Kerberos
Import-PSSession $Session -AllowClobber
<COMMANDS>
Remove-PSSession $Session

Exchange 2013 - Mobile Device Policy zuweisen

Um eine Mobile Device Policy mehreren Benutzern zuzuweisen können folgende Cmdlets verwendet werden:

Allen Benutzern im AD die gleiche Mobile Device Policy zuweisen:

Get-CASMailbox -ResultSize Unlimited | Where {$_.ActiveSyncMailboxPolicyIsDefaulted -eq $false} | Set-CASMailbox -ActiveSyncMailboxPolicy "My_MPR"

Allen Benutzern in einer OU eine Mobile Device Policy zuweisen:

Get-Mailbox -ResultSize Unlimited | Where {$_.OrganizationalUnit -eq "my.domain.com/iTrain/Mitarbeiter" -and $_.RecipientType -eq "UserMailbox"} | Set-CASMailbox -ActiveSyncMailboxPolicy "My_MPR"