Möchte man mittels PowerShell alle Mailboxen ermitteln, welche an eine andere E-Mailadresse (intern oder extern) forwarden, bzw. redirecten, kann man folgenden Befehl dazu verwenden:
[PS] C:\Windows\system32>foreach ($i in (Get-Mailbox -ResultSize unlimited)) { Get-InboxRule -Mailbox $i.DistinguishedName | where {$_.RedirectTo -or $_.ForwardTo } | fl MailboxOwnerId,Description >> C:\rules.txt }
Posts mit dem Label Exchange werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Exchange werden angezeigt. Alle Posts anzeigen
30.09.15
[How-To] Exchange 2010 - Vollzugriff ohne Automapping einrichten
Ab Exchange 2010 SP1 wird ein Postfach, auf welches man Vollzugriff erhalten hat, per Automapping in Outlook eingebunden.
Dies kann beim Vollzugriff auf viele Postfächer zu erheblichen Leistungseinbußen in Outlook führen.
Möchte man nun das Automapping für bestimmte Postfächer deaktivieren, muss man folgendermaßen vorgehen:
In diesem Beispiel wird der Vollzugriff des Benutzers "Administrator" auf das Postfach von Benutzer "Test1" entfernt:
Remove-MailboxPermission -Identity Test1 -User Administrator -AccessRights FullAccess -InheritanceType All
Nachfolgend wird die Berechtigung für den Vollzugriff wieder erteilt, diesmal jedoch ohne Automapping:
Add-MailboxPermission -Identity Test1 -User Administrator -AccessRights:FullAccess -AutoMapping $false
Beim nächsten Start von Outlook werden die Postfächer, auf welche man Vollzugriff hat, nicht mehr automatisch geöffnet.
Dies kann beim Vollzugriff auf viele Postfächer zu erheblichen Leistungseinbußen in Outlook führen.
Möchte man nun das Automapping für bestimmte Postfächer deaktivieren, muss man folgendermaßen vorgehen:
In diesem Beispiel wird der Vollzugriff des Benutzers "Administrator" auf das Postfach von Benutzer "Test1" entfernt:
Remove-MailboxPermission -Identity Test1 -User Administrator -AccessRights FullAccess -InheritanceType All
Nachfolgend wird die Berechtigung für den Vollzugriff wieder erteilt, diesmal jedoch ohne Automapping:
Add-MailboxPermission -Identity Test1 -User Administrator -AccessRights:FullAccess -AutoMapping $false
Beim nächsten Start von Outlook werden die Postfächer, auf welche man Vollzugriff hat, nicht mehr automatisch geöffnet.
Tags:
Exchange,
Outlook,
PowerShell,
Technik
20.05.15
[iOS] Exchange Kalender Synchronisierung schlägt fehl
Seit dem Update auf iOS 8 kann es unter Umständen dazu kommen, dass Kalendereinträge nicht mehr korrekt mit Exchange synchronisiert werden. Um die Einträge wieder zu synchronisieren, muss man die Kalendersynchronisierung deaktivieren und wieder aktivieren.
Dazu muss man unter: Einstellungen --> Mail, Kontakte, Kalender
den Schalter bei Kalender deaktivieren
einen Moment warten, bis alle Kalendereinträge auf dem iPhone / iPad gelöscht sind
den Schalter wieder aktivieren.
10.12.14
[Exchange] Vollzugriff auf alle Postfächer erteilen
Will man dem Administrator-Konto Vollzugriff auf alle Postfächer erteilen, kann man dies mit dem folgenden PowerShell Befehl bewerkstelligen:
Postfachberechtigungen entfernen:
Postfachberechtigungen prüfen:
Get-Mailbox | Add-MailboxPermission -User Administrator -AccessRights Fullaccess -InheritanceType allPostfachberechtigungen entfernen:
Remove-MailboxFolderPermission -Identity Username:\Posteingang -User Username.Zugriff Postfachberechtigungen prüfen:
Get-MailboxPermission -Identity Username16.10.14
[Office365] Organisator in Resourcenkalendern anzeigen
Folgende cmdlets werden benötigt, um die Standardeinstellungen der Resourcenpostfächer so anzupassen, dass im Betreff die Organisatoren von Terminen angezeigt werden:
Anmelden an Exchange online:
$LiveCred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange-ConnectionUri https://ps.outlook.com/powershell -Credential $LiveCred -Authentication Basic -AllowRedirection
Import-PSSession $Session
Anpassen der Berechtigungen:
Set-MailboxFolderPermission -AccessRights LimitedDetails -Identity <Resourcenpostfach>:\Kalender -User Default
Set-CalendarProcessing -Identity <Resourcenpostfach> -AddOrganizerToSubject $true -DeleteComments $false -DeleteSubject $false
Anmelden an Exchange online:
$LiveCred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange-ConnectionUri https://ps.outlook.com/powershell -Credential $LiveCred -Authentication Basic -AllowRedirection
Import-PSSession $Session
Anpassen der Berechtigungen:
Set-MailboxFolderPermission -AccessRights LimitedDetails -Identity <Resourcenpostfach>:\Kalender -User Default
Set-CalendarProcessing -Identity <Resourcenpostfach> -AddOrganizerToSubject $true -DeleteComments $false -DeleteSubject $false
Tags:
Exchange,
Office 365,
Outlook,
Technik
11.10.14
Exchange Postfächer mit aktiviertem Forwarding auflisten
Mit dem untenstehenden Befehl kann man sämtliche Postfächer auflisten, welche Weiterleitungen konfiguriert haben.
Mit "Select" wird die Ausgabe außerdem noch angepasst, so dass man den Namen der Mailbox und die Adresse aufgelistet bekommt wohin weitergeleitet wird. DeliverToMailboxAndForward zeigt an, ob die Mailbox nur weiterleitet, oder ob hier auch Mails im entsprechenden Postfach gespeichert werden.
Get-Mailbox | Where {$_.ForwardingAddress -ne $null} | Select Name, ForwardingAddress, DeliverToMailboxAndForward
Mit "Select" wird die Ausgabe außerdem noch angepasst, so dass man den Namen der Mailbox und die Adresse aufgelistet bekommt wohin weitergeleitet wird. DeliverToMailboxAndForward zeigt an, ob die Mailbox nur weiterleitet, oder ob hier auch Mails im entsprechenden Postfach gespeichert werden.
Get-Mailbox | Where {$_.ForwardingAddress -ne $null} | Select Name, ForwardingAddress, DeliverToMailboxAndForward
Tags:
Exchange,
Office 365,
PowerShell,
Technik
07.10.14
Exchange Online Besitzer einer Email Adresse ermitteln
Mit folgendem Powershell Befehl ermittelt man den Besitzer einer Email Adresse.
Get-Recipient -Identity user@domain.com
Die Ausgabe sollte dann folgendermaßen aussehen:
PS C:\Users\davissteiner> Get-Recipient -Identity user@domain.com
PS C:\Users\davissteiner> Get-Recipient -Identity distributiongroup@domain.com
Get-Recipient -Identity user@domain.com
Die Ausgabe sollte dann folgendermaßen aussehen:
PS C:\Users\davissteiner> Get-Recipient -Identity user@domain.com
| Name | RecipientType |
| ---- | ------------- |
| User Name | UserMailbox |
PS C:\Users\davissteiner> Get-Recipient -Identity distributiongroup@domain.com
| Name | RecipientType |
| ---- | ------------- |
| Distribution Group | MailUniversalDistributionGroup |
30.09.14
Exchange Online reply Adresse ändern
Um die Antwortadresse eines Empfängers in Exchange Online zu ändern muss man folgendermaßen vorgehen:
Sollte "-PrimarySMTPaddress" nicht funktionieren, kann man auch folgenden Parameter verwenden:
-WindowsEmailAddress
- An Exchange Online via Powershell anmelden
- set-mailbox -identity user@domain.com -PrimarySMTPaddress replyaddress@domain.com
Sollte "-PrimarySMTPaddress" nicht funktionieren, kann man auch folgenden Parameter verwenden:
-WindowsEmailAddress
26.09.14
[CentOS 6] Office 365 als SMTP relay für Postfix nutzen
Benötigte Pakete installieren:
yum install postfix cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain
Relayhost konfigurieren:
postconf -e 'relayhost = smtp.office365.com:587'
TLS Verschlüsselung aktivieren:
postconf -e 'smtp_tls_security_level=encrypt'
IPv6 als Internet Protokoll deaktivieren:
postconf -e 'inet_protocols=ipv4'
Authentifizierung aktivieren, auth mapping Datei erstellen und in auth Datenbank konvertieren:
postconf -e 'smtp_sasl_auth_enable = yes'
chown root:root /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
postmap /etc/postfix/sasl_passwd
Namenszuordnung erstellen um zu erreichen, dass Exchange Mails annimmt:
postconf -e 'canonical_maps = hash:/etc/postfix/canonical'
vi /etc/postfix/canonical
root nagios@netbiscuits.com
postmap /etc/postfix/canonical
yum install postfix cyrus-sasl cyrus-sasl-lib cyrus-sasl-plain
Relayhost konfigurieren:
postconf -e 'relayhost = smtp.office365.com:587'
TLS Verschlüsselung aktivieren:
postconf -e 'smtp_tls_security_level=encrypt'
IPv6 als Internet Protokoll deaktivieren:
postconf -e 'inet_protocols=ipv4'
Authentifizierung aktivieren, auth mapping Datei erstellen und in auth Datenbank konvertieren:
postconf -e 'smtp_sasl_auth_enable = yes'
postconf -e 'smtp_sasl_security_options = noanonymous'
postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
echo "smtp.office365.com user@domain.com:password" > /etc/postfix/sasl_passwdchown root:root /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd
postmap /etc/postfix/sasl_passwd
Namenszuordnung erstellen um zu erreichen, dass Exchange Mails annimmt:
postconf -e 'canonical_maps = hash:/etc/postfix/canonical'
vi /etc/postfix/canonical
root nagios@netbiscuits.com
postmap /etc/postfix/canonical
24.09.14
Office 365 Mailserver
Protokoll |
Servername |
Port |
Verschlüsselung |
POP3 |
outlook.office365.com |
995 |
SSL |
IMAP4 |
outlook.office365.com |
993 |
SSL |
SMTP |
smtp.office365.com |
587 |
TLS |
Office365 - SMTP Mailversand mittels Powershell testen
Hier eine kurze Anleitung, wie man den Mailversand per SMTP über die PowerShell testen kann.
Dies ist nötig, da man sich per Telnet nicht an Office 365 authentifizieren kann.
PS Z:\> $msolcred = get-credential
PS Z:\> Send-MailMessage -From sender@domain.com -To recipient@domain.com -Subject "Test Email" -Body "Test SMTP Relay Service" -SmtpServer smtp.office365.com -Credential $msolcred -UseSsl -Port 587
Dies ist nötig, da man sich per Telnet nicht an Office 365 authentifizieren kann.
PS Z:\> $msolcred = get-credential
PS Z:\> Send-MailMessage -From sender@domain.com -To recipient@domain.com -Subject "Test Email" -Body "Test SMTP Relay Service" -SmtpServer smtp.office365.com -Credential $msolcred -UseSsl -Port 587
15.09.14
Automatisiert Verteilerlisten erstellen und Mitglieder hinzufügen
Um mehrere Verteiler automatisiert zu erstellen und mehrere Mitglieder hinzuzufügen, muss man folgende Schritte befolgen:
1.Windows PowerShell installieren und konfigurieren.
2. Mit PowerShell an Exchange Online anmelden.
=========
Mehrere Verteiler auf einmal erstellen
1. CSV Datei vorbereiten um mehrere Verteiler zu importieren und auf lokalem Datenträger abspeichern (z.B.: C:\verteiler.csv ).
Beispiel:
Name, Type
Group1, Distribution
Group2, Distribution
Hinweis:
Name stellt hierbei den Anzeigenamen der Verteilerliste dar.
2. Der untenstehende Befehl muss ausgeführt werden, um die Verteiler zu importieren:
Import-CSV "C:\verteiler.csv" | foreach {New-DistributionGroup -Name $_.name -Type $_.Type}
==========
Mehrere Mitglieder zu den Verteilern hinzufügen
1.CSV Datei mit den Benutzerinformationen wie, Display name, Alias, E-mail address, erstellen und auf lokalem Datenträger abspeichern (z.B.: C:\benutzer.csv ).
Beispiel:
Display name, Alias, E-mail address
Member1, member1, member1@contoso.com
Member2, member2, member2@contoso.com
2. Die CSV Datei mittels PowerShell an Exchange Online übermitteln.
Folgendes cmdlet muss dafür ausgeführt werden:
Import-Csv "C:\benutzer.csv" | foreach{Add-DistributionGroupMember -Identity "GroupName" -Member $_.alias}
Hinweis:
GroupName stellt hierbei den Namen des Verteilers dar, wo die Benutzer hinzugefügt werden sollen.
Tags:
Exchange,
Office 365,
PowerShell,
Scripting,
Technik
Mailbox Servername via Powershell ermitteln
Möchte man Outlook manuell konfigurieren, benötigt man auch den Namen des Mailboxservers, an welchem man sich anmelden möchte.
Hat man nun ein Office 365 Konto kann es sich mitunter schwierig gestalten, diesen zu ermitteln.
Relativ einfach geht dies per Powershell.
An Exchange Online via Powershell anmelden
Die recipient Liste in eine CSV Datei exportieren:
get-recipient |export-csv C:\recipients.csv
ExchangeGuid + mailbox.outlook.com = Name des Mailboxservers.
Tags:
Exchange,
Outlook,
PowerShell,
Technik
Exchange Online Administration mittels Powershell
Mittels Powershell an Exchange anmelden
Powershell mit erhöhten Rechten ausführen
MSOL credentials an Powershell Session übergeben:
$LiveCred = Get-Credential
$LiveCred = Get-Credential
MS Exchange Session starten:
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection
Das Import-PSSession cmdlet importiert Befehle (cmdlets, functions und aliases) von einer lokalen oder entfernten PSSession in die aktuelle Session. Man kann jeden BEfehl, den das Get-Command cmdlet in der PSSession finden kann importieren. In diesem Fall werden cmdlets von ps.outlook.com/powershell importiert.
Import-PSSession $Session
Falls die Skripte auf dem Computer nicht ausgeführt werden können, muss der folgende Befehl ausgeführt werden, um die Ausführung von remote Scripts zu erlauben:
Set-ExecutionPolicy Unrestricted
Wenn die Administration von Exchange Online abgeschlossen ist, muss man die Verbindung zu MS Exchange mit dem folgenden Befehl schließen, da sie ansonsten für 15 Minuten offen bleibt, bis sie in einen timeout läuft:
Remove-PSSession $Session
Tags:
Exchange,
Office 365,
PowerShell,
Technik
24.05.12
Exchange 2010 - New-MoveRequest schlägt fehl
Fehler:
Fehler bei Active Directory-Vorgang mit DC.DOMAIN.TLD. Bei diesem Fehler ist kein Wiederholungsversuch möglich. Zusätzliche Informationen: Die Zugriffsrechte reichen für diesen Vorgang nicht aus.
Active Directory-Antwort: 00002098: SecErr: DSID-03150BB9, problem 4003 (INSUFF_ACCESS_RIGHTS), data 0
.
Der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Ausführungsversuch eines Exchange-Verwaltungsshellbefehls:
'DOMAIN.TLD/OU/CN' | New-MoveRequest -TargetDatabase 'DATABASE_NAME'
Verstrichene Zeit: 00:00:01
Um diesen Fehler zu beheben, hilft folgender simple Workaround:
Im Active Directory muss beim entsprechenden User unter den erweiterten Sicherheitseinstellungen die Option “Vererbbare Berechtigungen des übergeordneten Objekts einschließen” aktiviert werden.
Fehler bei Active Directory-Vorgang mit DC.DOMAIN.TLD. Bei diesem Fehler ist kein Wiederholungsversuch möglich. Zusätzliche Informationen: Die Zugriffsrechte reichen für diesen Vorgang nicht aus.
Active Directory-Antwort: 00002098: SecErr: DSID-03150BB9, problem 4003 (INSUFF_ACCESS_RIGHTS), data 0
.
Der Benutzer verfügt nicht über die erforderlichen Zugriffsrechte.
Ausführungsversuch eines Exchange-Verwaltungsshellbefehls:
'DOMAIN.TLD/OU/CN' | New-MoveRequest -TargetDatabase 'DATABASE_NAME'
Verstrichene Zeit: 00:00:01
Um diesen Fehler zu beheben, hilft folgender simple Workaround:
Im Active Directory muss beim entsprechenden User unter den erweiterten Sicherheitseinstellungen die Option “Vererbbare Berechtigungen des übergeordneten Objekts einschließen” aktiviert werden.
23.08.11
EX2K07/EX2K10: Mail an Verteilergruppen von extern
Da unter Exchange 2007/2010 standardmäßig die Option “Authentifizierung aller Absender anfordern” aktiviert ist, kann man keine Mails von extern an Verteiler senden.
Um dies zu ermöglichen, muss man diese mittels Exchange-Verwaltungsshell deaktivieren.
Einzelne Verteiler mittels dieses CMDLETs:
set-DistributionGroup -identity "DistributionGroupName" -RequireSenderAuthenticationEnabled $false
ALLE Verteiler mittels diesem:
Get-DistributionGroup | set-DistributionGroup -RequireSenderAuthenticationEnabled $false
Um dies zu ermöglichen, muss man diese mittels Exchange-Verwaltungsshell deaktivieren.
Einzelne Verteiler mittels dieses CMDLETs:
set-DistributionGroup -identity "DistributionGroupName" -RequireSenderAuthenticationEnabled $false
ALLE Verteiler mittels diesem:
Get-DistributionGroup | set-DistributionGroup -RequireSenderAuthenticationEnabled $false
06.01.11
“hart” gelöschte Mails in Outlook wiederherstellen
Standardmäßig steht die Funktion Gelöschte Objekte wiederherstellen nur für den Ordner “Gelöschte Objekte” in persönlichen Ordnern eines Benutzers zur Verfügung;
“hart” gelöschte Elemente lassen sich nicht wiederherstellen.
Um die Funktion Gelöschte Objekte wiederherstellen auch für andere E-Mail-Ordner zu aktivieren, müssen in der Registry die folgenden Änderungen vorgenommen werden:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Options
Bearbeiten –> Wert hinzufügenName: DumpsterAlwaysOn
Typ: DWORD
Wert: 1
Wiederherstellen der Elemente:
Ordner wählen, der die Elemente enthielt
Extras –> Gelöschte Elemente wiederherstellen
Daraufhin wird eine Liste von Elementen angezeigt, die während des auf dem Server eingestellten Aufbewahrungszeitraums “hart” gelöscht wurden.
Ab Outlook 2007 muss dieser Registrierungsschlüssel nicht mehr hinzugefügt werden.
Die Option zum Wiederherstellen gelöschter Objekte steht nun standardmäßig zur Verfügung.
Microsoft KB246153
“hart” gelöschte Elemente lassen sich nicht wiederherstellen.
Um die Funktion Gelöschte Objekte wiederherstellen auch für andere E-Mail-Ordner zu aktivieren, müssen in der Registry die folgenden Änderungen vorgenommen werden:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Options
Bearbeiten –> Wert hinzufügenName: DumpsterAlwaysOn
Typ: DWORD
Wert: 1
Wiederherstellen der Elemente:
Ordner wählen, der die Elemente enthielt
Extras –> Gelöschte Elemente wiederherstellen
Daraufhin wird eine Liste von Elementen angezeigt, die während des auf dem Server eingestellten Aufbewahrungszeitraums “hart” gelöscht wurden.
Ab Outlook 2007 muss dieser Registrierungsschlüssel nicht mehr hinzugefügt werden.
Die Option zum Wiederherstellen gelöschter Objekte steht nun standardmäßig zur Verfügung.
Microsoft KB246153
gelöschte Elemente in öffentlichen Ordnern wiederherstellen
Mit dem Tool PFDAVAdmin kann man versehentlich gelöschte Objekte oder auch ganze Ordner in den öffentlichen Ordnern wiederherstellen.
Schritt 1:
PFDAVAdmin Tool downloaden.
Schritt 2: gelöschten Ordner wiederherstellen
PFDAVAdmin.exe starten
File –> Connect
Exchange server –> gewünschten Exchange Server eintragen
Global Catalog –> Server, welcher den GC enthält eintragen
ggf. Authentifizierungsinformationen eintragen
Connection –> Public Folders
Public Folders –> Rechtsklick –> Show deleted subfolders –> der gelöschte Ordner wird in rot dargestellt
Rechtsklick auf den gelöschten Ordner –> Recover folder –> Recovery succeeded –> OK –> Ordner erscheint als “Name RECOVERED”.
Exchange System Manager –> Rechtsklick auf wiederhergestellten Ordner –> umbenennen
Schritt 3: gelöschtes Objekt wiederherstellen
PFDAVAdmin –> Ordner öffnen, welcher das gelöschte Objekt enthält
Items –> Deleted items
Rechtsklick auf gewünschtes Objekt –> Recover items
Microsoft KB924044
Schritt 1:
PFDAVAdmin Tool downloaden.
Schritt 2: gelöschten Ordner wiederherstellen
PFDAVAdmin.exe starten
File –> Connect
Exchange server –> gewünschten Exchange Server eintragen
Global Catalog –> Server, welcher den GC enthält eintragen
ggf. Authentifizierungsinformationen eintragen
Connection –> Public Folders
Public Folders –> Rechtsklick –> Show deleted subfolders –> der gelöschte Ordner wird in rot dargestellt
Rechtsklick auf den gelöschten Ordner –> Recover folder –> Recovery succeeded –> OK –> Ordner erscheint als “Name RECOVERED”.
Exchange System Manager –> Rechtsklick auf wiederhergestellten Ordner –> umbenennen
Schritt 3: gelöschtes Objekt wiederherstellen
PFDAVAdmin –> Ordner öffnen, welcher das gelöschte Objekt enthält
Items –> Deleted items
Rechtsklick auf gewünschtes Objekt –> Recover items
Microsoft KB924044
06.09.10
Postfach in Exchange 2003 löschen und neu erstellen
- AD Benutzer & Computer -> Benutzer -> Eigenschaften -> Exchange Aufgaben -> Postfach löschen
- Exchange System Manager -> Server -> Postfachspeicher -> Postfächer -> Rechtsklick -> Cleanup Agent ausführen
- Das gelöschte Postfach ist nun mit einem roten X gekennzeichnet
- Postfach mit (X) anklicken und leeren
- Postfach ist nun gelöscht
- über AD Benutzer & Computer -> Benutzer -> Eigenschaften -> Exchange Aufgaben ->Postfach wieder neu anlegen
- Exchange System Manager -> Server -> Postfachspeicher -> Postfächer -> Rechtsklick -> Cleanup Agent ausführen
- Das gelöschte Postfach ist nun mit einem roten X gekennzeichnet
- Postfach mit (X) anklicken und leeren
- Postfach ist nun gelöscht
- über AD Benutzer & Computer -> Benutzer -> Eigenschaften -> Exchange Aufgaben ->Postfach wieder neu anlegen
Abonnieren
Posts (Atom)