Links:
 
   TechNet Exchange Forum
   MS Exchange Forum
   MCSE Board
   ActivSync
   Exchange Migration
   Limits mit Exchange 2007/2010
   Anleitung Exchange 2010 Installation
   Referenz: Eseutil
   Exchange 2010 Zugriff von extern
   Datenbankwartung in Exchange 2010
Backup und Recorery
   Exchange 2010 Mailbox Wiederherstellen
   Exchange Server Soft and Hard Recovery
Downloads:
   Microsoft Exchange Server 2010 Service Pack 3 v.14.03.0123.004
   Updaterollup 17 für Exchange Server 2010, Service Pack 3 (KB4011326) v.14.03.0352.000
   Kumulatives Update 9 für Exchange Server 2013 (KB3049849) v.15.00.1104.005
   Exchange Server 2016 v.15.01.0225.042
   Kumulatives Update 3 für Exchange Server 2016 (KB3152589) v.15.01.0544.027
   Exchange Server Role Requirements Calculator v9.1
   ExFolders - stellt gelöschte Öffentliche Ordner wieder her
Exchange Tools:
   Anti-Spam SMTP Proxy Server (ASSP)
   Microsoft Outlook Configuration Analyzer Tool 2.0 mit Exchange PST Capture - Import von PST Dateien direkt von der Arbeitsstation
   Die Microsoft Online Services Diagnose und Protokollierung (MOSDAL) Support-Toolkit
   Exchange Deployment Assistant
   Microsoft Exchange PST Capture 2.0
   Microsoft Exchange Server User Monitor
Microsoft Baseline Security Analyzer (sucht Sicherheitspatches für das System)
   ExBPA Microsoft Exchange Server Best Practices Analyzer (Sicherheits-Analyse)
Remote Verbindungen von Exchange testen
POPCon (kostenpflichtig)
   POPBeamer (kostenpflichtig)
   Fetchmail mit CygWin (kostenlos)
   pullution.net (kostenlos)
   MAPILab POP3 Connector (kostenpflichtig)
Exchange Server-Updates: Buildnummern und Veröffentlichungstermine
- Powershell Exchange Server 2010/2013 Version anzeigen, nur ServicePack Version, !! Rollup Packs werden nicht angezeigt !!
Get-ExchangeServer | Format-List Name, Edition, AdminDisplayVersion
- Powershell aktuelle Exchange Server Build Nummer
Get-Command ExSetup | ForEach {$_.FileVersionInfo}
gcm exsetup |%{$_.fileversioninfo}
 | Virtuellen Verzeichnisse | Dienst | 
|---|---|
| https://ExchangeServer/owa | Outlook Web App | 
| /exchange | Outlook Web App | 
| /OAB | Offline Adressbuch | 
| /ecp | Exchange-Verwaltungskonsole (ECP) | 
| /EWS | Exchange Web Services, Exchange-Verwaltungsshell | 
| /Public | Öffentlichen Ordner in Outlook Web App | 
| /Microsoft-Server-ActiveSync | Active Sync kompatible Geräte | 
| /rpc | Outlook Anywhere HTTPSoverRPC | 
| /RPCwithCert | Outlook Anywhere Authentifizierung mit Clientzertifikat | 
| Verzeichnisse | Beschreibung | 
| %SystemRoot%\System32\LogFiles\HTTPERR | IIS HTTP Fehler Log Ordner, Microsoft-Server-ActiveSync Fehler u.a. | 
| %SystemDrive%\inetpub\logs\LogFiles\W3SVC1 | IIS Server ZugriffsLogs, Autodisover Logs | 
| %ProgramFiles%\Microsoft\Exchange Server\V1x\Logging | Exchange Server Log Verzeichnis | 
| %ProgramFiles%\Microsoft\Exchange Server\V1x\Logging\RPC Client Access | Outlook Client Zugriffs Logs | 
| %ProgramFiles%\Microsoft\Exchange Server\V1x\Logging\Autodiscover | |
| %ProgramFiles%\Microsoft\Exchange Server\V1x\Logging\AddressBook Service | Log des Dienstes Microsoft.Exchange.AddressBook.Service stellt für das Exchange-Adressbuch einen statischen Port bereit | 
| %ProgramFiles%\Microsoft\Exchange Server\V1x\Mailbox\Mailbox Database xxx | Exchange Mailbox Datenbank und Transaktion-LOGs | 
Standardauthentifizierungseinstellungen für Exchange-bezogene virtuelle Verzeichnisse
Nokia Mail for Exchange (PushMail)
 Einrichtung Client
Exchange ActiveSync und Outlook Mobile Access, MS KB 817379 Artikel
Mobile Admin Verwaltung für Mobile Geräte
- Exchange Server 2003 SP2 Anleitung für die Bereitstellung von Windows Mobile-basierten Geräten Guide, Zertifikate
E-Mail Push mit 1und1 Exchange Server
Outlook Web Access (OWA)
   ActiveSync (OMA)
 PushMails TCP Port 465
 SSL TCP Port 443 (Standard)
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MasSync\Parameters] "ExchangeVDir"="/exchange-oma"
IIS neu Konfiguration laden
iisreset /noforce
- Exchange Postfachfunktionen deaktivieren Outlook WebApp, Exchange ActiveSync, Unified Messaging
get-mailbox -resultsize Unlimited | Set-CASMailbox -OWAEnabled $false -ActiveSyncEnabled $false ` -MAPIBlockOutlookRpcHttp $true
- Exchange Postfachfunktionen aktivieren Outlook WebApp, Exchange ActiveSync, Unified Messaging
get-mailbox -resultsize Unlimited | Set-CASMailbox -OWAEnabled $true -ActiveSyncEnabled $true ` -MAPIBlockOutlookRpcHttp $false
- für einzelne Postfächer, aktuelle Einstellung anzeigen
Get-CASMailbox <identity> Get-CASMailbox "Administrator"
- beim Benutzer Adminsitrator ActiveSync deaktivieren
Set-CASMailbox -Identity "Administrator" -ActiveSyncEnabled $false Set-CASMailbox -Identity "administrator@domain.tld" -ActiveSyncEnabled $false
- Öffentlichen Kalender als Adressbuch einrichten
   Outlook | Ordnerliste | Öffentliche Ordner | Alle Öffentlichen Ordner | <Ordner wählen> | Eigenschaften | Outlook-Adressbuch
   Diesen Ordner als E-Mail-Adressbuch anzeigen: aktivieren
   Name des Adressbuchs: <öffentliche Kontakte>
- Öffentlichen Ordner eine eMail Adresse zuordnen
   Exchange System-Manager | Administrative Gruppen | erste administrative Gruppen | Ordner | Öffentliche Ordner | <Ordner wählen> | Alle Aufgaben:E-Mail aktivieren
danach ist die eMail Adresse des öffentichen Ordners unter
   Exchange System-Manager | Administrative Gruppen | erste administrative Gruppen | Ordner | Öffentliche Ordner | <Ordner wählen> | Eigenschaften | E-Mail-Adresse
   sichtbar und kann auch dort festgelegt werden.
- Öffentliche Ordner im Client unter Kalender | Kontakte verfügbar machen
   Outlook | Ordnerliste | Öffentliche Ordner | Alle Öffentlichen Ordner | <Ordner wählen> und diesen unter Öffentliche Ordner/Favoriten ablegen oder im Kontextmenü Zu Favoriten hinzufügen... wählen
- Syncronisieren von Öffentlichen Ordnern
   Outlook | Extras | E-Mail Konten | Vorhandene E-Mail-Konten anzeigen oder bearbeiten | <Konto wählen> Ändern | Weitere Einstellungen... | Erweitert | Einstellungen für den Exchange-Cache-Modus
   Exchange-Cache-Modus verwenden: aktivieren
   Öffentliche Ordner-Favoriten downloaden: aktivieren
öffentlichen Ordner | Eigenschaften | Ordnerverwaltung | Ordnerassistent | Regel hinzufügen
   !! Der Benutzer der die Regel definiert, muss Besitzer des öffentlichen Ordners sein.
- E-Mail Nachrichtengröße festlegen
   Exchange System-Manager | Globale Einstellungen | Nachrichtenübermittlung | Eigenschaften | Standard
   Größe für gesendete Nachrichten:
   Größe für empfangene Nachrichten:
   Empfängerbeschränkungen:
- auf dem Exchange Server
   Server | Erste Speichergruppe | Postfachspeicher | Eigenschaften | Grenzwerte | Löscheinstellungen
- für den einzelnen Benutzer
   Active Directory-Benutzer und -Computer | <Domain> | <User-OU> | <Benutzer> | Exchange - Allgemein | Speichergrenzwerte...
Registry Schlüssel setzen
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Exchange\Client\Options] "DumpsterAlwaysOn"=dword:00000001
Wiederherstellen der Elemente (bis Outlook 2007)
   Outlook | Extras | Gelöschte Elemente wiederherstellen
Links:
   Automatische Konfiguration der User Accounts
   Autodiscover Dienst
   Set-AutodiscoverVirtualDirectory
   setzen der InternalUrl KB Artikel
   Outlook 2007 Autodiscover Problem
   Outlook 2007 DNS-Dienstidentifizierung (SRV)
   IIS Fehlercode
   Reset Client Access Virtual Directories
- Verzeichnis entfernen
Remove-AutodiscoverVirtualDirectory -Identity "<ServerName>\Autodiscover (Default Web Site)"
- Verzeichnis neu entfernen
New-AutodiscoverVirtualDirectory ` -WebSiteName "Default Web Site" ` -BasicAuthentication $true ` -DigestAuthentication $false ` -WindowsAuthentication $true
_autodiscover._tcp.domain.tld SRV 0 0 443 mail.domain.local.
- Eintrag testen
nslookup
set type=srv
_autodiscover._tcp.domain.tld
- Autodiscover Einstellungen anzeigen
Get-AutodiscoverVirtualDirectory | fl
https://<server.domain.tld>/autodiscover/autodiscover.xml
- Einstellungen prüfen
Get-AutodiscoverVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-ClientAccessServer | fl *InternalUri* ... AutoDiscoverServiceInternalUri : https://server.domain.tld/Autodiscover/Autodiscover.xml ...
- URLs setzen für intern und extern
Set-ClientAccessServer -Identity "Server" -AutodiscoverServiceInternalURI ` "https://server.domain.tld/autodiscover/autodiscover.xml" Get-AutodiscoverVirtualDirectory | Set-AutodiscoverVirtualDirectory ` -ExternalUrl 'https://mail.domain.de/Autodiscover/Autodiscover.xml' ` -InternalUrl 'https://server.domain.tld/Autodiscover/Autodiscover.xml'
IIS | Sites | Default Web Site | EWS | Authentifizierung
   Anonyme Authentifizierung
   Standardauthentifizierung
   Windows-Authentifizierung
IIS | Sites | Default Web Site | Autodiscover | Authentifizierung
   Anonyme Authentifizierung
   Standardauthentifizierung
   Windows-Authentifizierung
- per Powershell EWS Einstellungen prüfen/externe URL und Authentifizierung setzen
Get-WebServicesVirtualDirectory -Identity "EXSRV\EWS (Default Web Site)" | fl Set-WebServicesVirtualDirectory -Identity "EXSRV\EWS (Default Web Site)" ` -ExternalUrl https://mail.domain.de/EWS/Exchange.asmx ` -BasicAuthentication:$True
oder
Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Clientzugriff
   Virtuelles Verzeichnis zurücksetzen
   Durchsuchern
   Autodiscover (Default Web Site)
   ecp (Default Web Site)
   EWS (Default Web Site)
   Microsoft-Server-ActiveSync (Default Web Site)
   OAB (Default Web Site)
   owa (default Web Site)
Clienttest mit der Power Shell und Test-OutlookWebServices oder im Outlook bei gedrückter STRG Taste einen Rechtsklick auf das Outlook-Symbol im Systray |E-Mail Autokonfiguration testen| wählen.
Zum Abschluß einen IISRESET in der Kommandozeile ausführen.
Powershell Script set-url.ps1 setzt Interne und Externe URLs auf den gleichen Wert.
 Powershell Script set-url2.ps1 setzt Interne und Externe URLs auf unterschiedliche Werte.
# ab Exchange 2010 Set-ClientAccessServer -Identity ex2010 ` -AutoDiscoverServiceInternalUri "https://ex2010.domain.local/Autodiscover/Autodiscover.xml" # aktiviert OutlookAnywhere Enable-OutlookAnywhere -Server ex2010 -ExternalHostname "ex2010.domain.local" ` -ClientAuthenticationMethod "Basic"-SSLOffloading:$False Set-OwaVirtualDirectory -Identity "ex2010\owa (Default Web Site)" ` -InternalUrl "https://ex2010.domain.local/owa" ` -ExternalUrl "https://ex2010.domain.local/owa" Set-EcpVirtualDirectory -Identity "ex2010\ecp (Default Web Site)" ` -InternalUrl "https://ex2010.domain.local/ecp" ` Set-WebServicesVirtualDirectory -Identity "ex2010\EWS (Default Web Site)" ` -InternalURL "https://ex2010.domain.local/EWS/Exchange.asmx" ` -BasicAuthentication:$true Set-OABVirtualDirectory -Identity "ex2010\OAB (Default Web Site)" ` -InternalURL https://ex2010.domain.local/OAB ` -ExternalUrl "https://ex2010.domain.local/owa" Set-ActiveSyncVirtualDirectory -Identity "ex2010\Microsoft-Server-ActiveSync (Default Web Site)" ` -ExternalURL https://ex2010.domain.local/Microsoft-Server-Activesync Get-AutodiscoverVirtualDirectory -Identity "ex2010\owa (Default Web Site)" ` -InternalUrl "https://ex2010.domain.local/owa" ` -ExternalUrl "https://ex2010.domain.local/owa"
- Wichtige URLs für den AutoErmittlungsdienst
   Outlook Anywhere (Set-OutlookAnywhere)
   exteres Offlineadressbuch (Set-OABVirtualDirectory)
   Exchange-Webdienste-URL (Set-WebServicesVirtualDirectory)
- alle Einstellungen der OWA Anwendung anzeigen
Get-OwaVirtualDirectory |fl
- Identity Name der OWA anzeigen
Get-OwaVirtualDirectory |fl Identity
- Virtuelles Verzeichnis entfernen, KB-Artikel
Remove-OwaVirtualDirectory -identity "<Server>\owa (Default Web Site)"
- Neueinrichtung der OWA, KB-Artikel
New-OwaVirtualDirectory -Name "owa (OMA)" -WebsiteName "OMA"
- auf dem Client Outlook Autokonfiguration testen
   Outlook starten, im Infobereich (rechts bei der Uhr) auf das Outlook Symbol mit gebrückter STRG  + rechteMaus Taste klicken, im Menü "E-Mail-Autokonfiguration testen" wählen
   Guessmart verwenden: deaktivieren
   Sichere Guessmart-Authentifizierung: deaktivieren
- auf dem Server in der ExchangePowerShell
Test-OutlookWebServices -Identity <Benutzername>
- von extern über Internet
- Autodiscover eingestellt Server anzeigen, mithilfe der ExchangePowerShell
Get-ClientAccessServer | fl Identity,AutoDiscoverServiceInternalUri Get-OutlookAnywhere | fl Identity,ExternalHostname,ClientAuthenticationMethod Get-OwaVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-EcpVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-WebServicesVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-ActiveSyncVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-OabVirtualDirectory | fl Identity,InternalUrl,ExternalUrl Get-AutodiscoverVirtualDirectory | fl Identity,InternalUrl,ExternalUrl
- Outlook ist extern mit einem Exchange Server verbunden, beim Versuch eine Abwesenheitsnotiz zu setzen, kommt folgende Fehlermeldung
Ihre Einstellungen für automatische Antworten können nicht angezeigt werden, da der Server zur Zeit nicht verfügbar ist. Versuchen Sie es später erneut
- Konfiguration am Exchange Server in der Powershell testen
Get-ClientAccessServer | ft Name,Autodiscoverserviceinternaluri Name AutoDiscoverServiceInternalUri ---- ------------------------------ ExSRV https://remote.domain.tld/Autodiscover/Autodiscover.xml
- beim DomainProvider im DNS die SRV Einträge setzen
Dienstidentifizierung (SRV) Service: _autodiscover Protocol: _tcp Port Number: 443 Host: remote.domain.tld
- Datenbank Datei Path und LOGDatei Path anzeigen
Get-MailboxDatabase | fl Name,EdbFilePath,LogFolderPath
- neue MailboxDatenbank erstellen
New-MailboxDatabase -Name EXDB01 -Server EX01 ` -EdbFilePath "D:\ExchangeDB\EXDB01\EXDB01.edb" ` -LogFolderPath D:\ExchangeDB\EXDB01
- MailboxDatenbank überschreibbar setzen
Set-MailboxDatabase EXDB01 -AllowFileRestore:$true
- MailboxDatenbank mounten
mount-database EXDB01
- MailboxDatenbank umbenennen
Set-MailboxDatabase "Mailbox Database 2116642217" -Name "DB01"
- MailboxDatenbank verschieben
Move-DatabasePath EXDB01 -EdbFilePath D:\EXDB01\EXDB01.edb -LogFolderPath E:\EXDB01
- Mailboxen einer MailboxDatenbank anzeigen
Get-Mailbox -Database "Mailbox Database xxx" -AuditLog Get-Mailbox -Database "Mailbox Database xxx" -PublicFolder Get-Mailbox -Database "Mailbox Database xxx" -Archive Get-Mailbox -Database "Mailbox Database xxx" -Arbitration Get-Mailbox -Database "Mailbox Database xxx"
- Größe der Datenbank anzeigen für Postfach Datenbank und Öffentliche Ordner
Get-MailboxDatabase -Status | ft name,databasesize,AvailableNewMailboxSpace -auto Get-PublicFolderDatabase -Status | ft name,AvailableNewMailboxSpace
- Bereitstellung dr Datenbank aufheben, in der Verwaltungskonsole unter Organisationskonfiguration | Postfach | Datenbankverwaltung
cd "\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database" Dismount-Database "Mailbox Database"
- angegebene Datenbak defragmentieren und wieder bereitstellen
eseutil /d "Mailbox Database.edb" mount-Database "Mailbox Database"
Informationsspeicher beenden, Defragmentieren, Informationsspeicher starten
net stop "Microsoft Exchange-Informationsspeicher" cd \<Exchange Datenbankverzeichnis> eseutil /d "Mailbox Database.edb" net start "Microsoft Exchange-Informationsspeicher"
Shutdown Check der Datenbank "Clean Shutdown" oder "Consistent state"
Clean Shutdown - Datenbank wurde ordnungsgemäß heruntergefahren
   Consistent state - Datenbank wurde mit Fehlern heruntergefahren, oder Protokolldatei muss mit Datenbank abgeglichen werden.
 Dirty Shutdown - Datenbank wurde nicht richtig heruntergefahren, Stromausfall o.a.
eseutil /mh "Mailbox Database xxx.edb"
DATABASE HEADER:
Checksum Information:
Expected Checksum: 0x25348877
  Actual Checksum: 0x25348877
Fields:
        File Type: Database
         Checksum: 0x25348877
   Format ulMagic: 0x89abcdef
   Engine ulMagic: 0x89abcdef
 Format ulVersion: 0x620,17
 Engine ulVersion: 0x620,17
Created ulVersion: 0x620,17
     DB Signature: Create time:02/09/2012 12:39:40 Rand:6930105 Computer:
         cbDbPage: 32768
           dbtime: 641516253 (0x263cc2dd)
            State: Clean Shutdown
     Log Required: 0-0 (0x0-0x0)
    Log Committed: 0-0 (0x0-0x0)
 
c:\programme\exchsrvr\bin\eseutil /?
| Befehle | Beschreibung | 
|---|---|
| eseutil /mh "\Path\zu Datenbank\Mailbox Database.edb" | Status der Datenbank anzeigen (DATABASE HEADER) | 
| eseutil /g "\Path\zu Datenbank\Mailbox Database.edb" | Check Datenbank Integrität | 
| eseutil /r E00 /d <Exchange Datenbank> /l <LogFile Path> | Recovery - Datenbank mit Protokolldatei abgleichen | 
| eseutil /k "\Path\zu Datenbank\Mailbox Database.edb" | Checksummen prüfen | 
| eseutil /p "Mailbox Database xxx.edb" | Hard Repair ohne Transaktion-LOGs File Nutzung | 
| eseutil /d "\Path\zu Datenbank\Mailbox Database.edb" | Defragmentieren der Datenbank | 
Transaktionsprotokolldateien werden in die Datenbank eingearbeitet.
- Status der DB prüfen
eseutil /mh "Mailbox Database xxx.edb"
- Protokollwiederherstellung, Transaktionsprotokolldateien werden in eine Datenbank eingespielt
eseutil /R E00
- Protokollwiederherstellung, Transaktionsprotokolldateien werden in eine Datenbank eingespielt, mit Angabe des Paths zu den Transaktionsprotokolldateien.
eseutil /R E00 /L%ProgramFiles%\Microsoft\Exchange Server\V1x\Mailbox\Mailbox Database xxx\
- Status noch mal prüfen
eseutil /mh "Mailbox Database xxx.edb"
Wenn keine Transaktionsprotokolldateien vorhanden sind, oder nicht berücksichtigt werden sollen.
- Status der DB prüfen
eseutil /mh "Mailbox Database xxx.edb"
- Datenbank Reparatur ohne Berücksichtigung der Transaktionsprotokolldateien. Diese müssen vor dem Mounten der Datenbank gelöscht werden. E00.chk, E00.log Standard Path der Protokolldateien %ProgramFiles%\Microsoft\Exchange Server\V1x\Mailbox\Mailbox Database xxx
eseutil /p "Mailbox Database xxx.edb"
- Status der DB prüfen
eseutil /mh "Mailbox Database xxx.edb"
- Status Datenbank Mount/Dismount
Get-MailboxDatabase -Status | Sort Name | Format-Table Name, Server, Mounted
- Datenbank einbinden
Get-MailboxDatabase -Server ex01 | Mount-Database
- Exchangeserver der Organisation anzeigen
get-exchangeserver | fl
- Domaincontroller anzeigen
get-domaincontroller | fl
- Exchange Dienste testen ob diese laufen
get-service *exchange* -ComputerName <Exchange-Server> Test-Servicehealth
- Verfügbarkeit der Exchange-Datenbank testen
Get-MailboxDatabase | Get-MailboxDatabaseCopyStatus
- eMail Fluss testen
test-mailflow -SourceMailboxServer <Exchange-Server>
- Warteschlange der Transportserver testen
Get-TransportService | Get-Queue
- DC Fehlgesclagene Anmeldeversuche anzeigen
Get-EventLog -LogName Security -InstanceId 4776 | Where-Object Message -match "admin" | FT TimeGenerated,Message ` -AutoSize -Wrap
https://<server.domain.tld>/OAB/
- Offline Adressbuch Dateien im Dateisystem
%ProgramFiles%\Microsoft\Exchange Server\V14\ClientAccess\OAB\<GUID>\
- Protokollierung der Offlineadressbuchgenerierung anzeigen/setzen
   Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Diagnoseprotokollierung
   Dienst MSExchangeSA | OAL Generator: Hoch
Get-EventLogLevel -Identity "MSExchangeSA\OAL Generator" | fl Set-EventLogLevel -Identity "MSExchangeSA\OAL Generator" -Level High
- OfflineAdressBuch Konfiguration anzeigen
Get-PublicFolder -Identity ` "\NON_IPM_SUBTREE\OFFLINE ADDRESS BOOK\EX:/o=First Organization/ou=Exchange Administrative Group (FYDIBOHF23SPDLT)"
- OfflineAdressBuch interne und externe URL anzeigen/setzen und SSL aktivieren
Get-OabVirtualDirectory | fl Set-OabVirtualDirectory -Identity "OAB (Default Web Site)" ` -InternalUrl https://server.domain.tld/OAB ` -ExternalUrl https://mail.domain.de/OAB -RequireSSL:$true
Outlook | Synchronisierungsprobleme
Microsoft Exchange-Offlineadressbuch Die Offlineadressbuchdateien werden nicht heruntergeladen. Es wurde kein Server (URL) gefunden. 0X8004010F Microsoft Exchange-Offlineadressbuch Die Offlineadressbuchdateien werden nicht heruntergeladen. Es wurde kein Server (URL) gefunden. 0X80004005
Lösung
- Einstellungen prüfen
   Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Postfach | Offlineadressbuch
   Eigenschaften | Verteilung
   Webbasierte Verteilung aktivieren: aktivieren
   Hinzufügen: OAB (Default Web Site)
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Postfach | Datenbankverwaltung
   Mailbox Database <GUID> | Eigenschaften
   Clienteinstellungen | Offlineadressbuch: \Standard-Offlineadressliste
- Offlineadressbuch Einstellungen per Powershell prüfen
Get-OfflineAddressBook | fl Get-OabVirtualDirectory | fl
bei Outlook 2007 die Autodiscover Funtion prüfen. DNS Eintrag, Zertifikat des Exchange Servers mit DNS Eintrag für autodiscover.domain.tld
- Offlineadressbuch Generierung manuell starten
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Postfach | Offlineadressbuch
   Standard-Offlineadressbuch markieren Kontextmenü und  Aktualisieren wählen
Danach die Ereignisanzeige eventvwr.msc unter Windows-Protokolle | Anwendungen auf Fehler vom MSExchangeSA prüfen.
- Jetzt den LogLevel wieder zurücksetzen
Set-EventLogLevel -Identity "MSExchangeSA\OAL Generator" -Level Lowest
Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration
   Exchange-Zertifikate | Dem Zertifikat Dienste zuordnen
Bei einem neu installierten Zertifikat, Dienst neustarten
iisreset /noforce net stop MSExchangeImap4 net stop MSExchangePop3 net stop MSExchangeTransport net start MSExchangeTransport net start MSExchangeImap4 net start MSExchangePop3
Bei gestarteten Outlook mit gedrückter STRG Taste auf das Outlook Symbol in der Taskleiste bei der Uhr klicken und den E-Mail-AutoKonfiguration testen.. wählen.
- MessageGröße Versand/Empfang anzeigen Exchange Powershell
get-receiveconnector | select identity,maxmessagesize get-sendconnector | select identity,maxmessagesize
- Message Versand Größe setzen
set-receiveconnector <Name des Connectors> -maxmessagesize 20MB
(EX2010/2007) Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Hub-Transport | Empfangsconnector
   Default <ServerName>
Maximale Nachrichtengröße (KB): 20480
Windows SBS Fax Sharepoint Receive <ServerName>
Maximale Nachrichtengröße (KB): 20480
Windows SBS Internet Receive <ServerName>
Maximale Nachrichtengröße (KB): 20480
(EX2010/2007) Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Sendeconnectors
   Allgemein | Maximale Nachrichtengröße (KB): 20480
(EX2010/2007) Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Globale Einstellungen
   Allgemein | Transportgrenzwerte
   Maximale Empfangsgröße (KB): 20480
   Maximale Sendegröße (KB): 20480
- Einstellung des Empfangsconnectors anzeigen
Get-ReceiveConnector | sort name | ft name,bindings,permissiongroups -auto
- Exchange Nachrichtengröße für ActivSync einstellen
%ExchangeInstallPath%ClientAccess\Sync\web.config <httpRuntime maxRequestLength="25600" fcnMode="Disabled" /> <add key="MaxDocumentDataSize" value="25600000">
%ExchangeInstallPath%FrontEnd\HttpProxy\sync\web.config <httpRuntime maxRequestLength="25600" />
Exchange 2010
- Einstellungen und Path zu den LOG Dateien
Get-TransportServer | fl name,*log*
- Exchange MessageTracking Einstellungen setzen und anderen Path festlegen.
Standardpath
C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\MessageTracking
Get-Transportserver | Set-TransportServer ` -MessageTrackingLogEnabled $true ` -MessageTrackingLogPath D:\TrackingLogs ` -MessageTrackingLogMaxFileSize 10MB ` -MessageTrackingLogMaxDirectorySize 250MB ` -MessageTrackingLogMaxAge 30 ` -MessageTrackingLogSubjectLoggingEnabled $true
- Protokollierung für die Connectoren aktivieren
C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpReceive
Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Hub-Transport | Empfangsconnectors
   Protokolliergrad: Ausführlich
C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpSend
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Sendeconnectors
   Protokolliergrad: Ausführlich
Get-ClientAccessServer | fl Get-ExchangeCertificate | fl
Durchsuchen von Nachrichtenverfolgungsprotokollen
- alle Mails der letzten 24 Stunden
$start = (get-date).AddDays(-1) $end = get-date Get-MessageTrackingLog -Start $start -End $end
- alle Mails an ein bestimmtes Postfach, der letzten 10Min
$start = (get-date).AddMinutes(-10) $end = get-date Get-MessageTrackingLog -Start $start -End $end -recipients user@domain.tld
- alle Nachrichten eines Tages
Get-MessageTrackingLog -EventId Send -Start "05/22/2018 00:00:00" -End "05/22/2018 23:59:59" | fl ` Send*,Recipient*,Timestamp,TotalBytes > "C:\Temp\SendSearch.txt"
Parameter
   -ResultSize Unlimited - falls die Ausgabe nicht reicht, kann der Puffer erhöht werden (Default 1000)
Die OWA und ECP Seite wird nach dem Login nur leer dargestellt.
Fehlermeldung im System EventLog des Servers ID 15021, 15300, 15301
Bei der Verwendung der SSL-Konfiguration für den Endpunkt 0.0.0.0:444 ist ein Fehler aufgetreten. Der Fehlerstatuscode ist in den zurückgegebenen Daten enthalten.
Lösung:
Internetinformationsdienste (IIS)-Manager | Sites | Exchange Back End
   Bindungen
 | https Port 444 bearbeiten
 SSL-Zertifikat: Zuordnung prüfen
Exchange Benutzer können keine eMails an eMail Adressen ihrer eigenen Domain schicken die aber nur bei einem externen Provider existieren. Es kommt eine Fehlermeldung, das die eMail nicht existiert, da Exchange diese Adresse nur intern sucht.
Organisationskonfiguration | Hub-Transport | akzeptierte Domänen
   die betreffende Domain auf Interne Relaydomäne setzen
oder die externe eMail als Kontakt anlegen
Exchange Pipeline Trace msxfaq
- Pipeline Trace aktivieren
Set-TransportServer ` -Identity SRV01` -PipelineTracingEnabled $true ` -ContentConversionTracingEnabled $true ` -PipelineTracingPath "C:\Program Files\Microsoft\Exchange Server\TransportRoles\Logs\PipelineTracing" ` -PipelineTracingSenderAddress SRV01-IS@msxfaq.local
- Pipeline Trace deaktivieren
Set-TransportServer ` -PipelineTracingEnabled $false ` -ContentConversionTracingEnabled : $false
- Transport Agenten anzeigen
Get-TransportServer| ft -AutoSize
- ab Exchange 2013
Set-TransportService ` -Identity win2012 ` -PipelineTracingEnabled $true ` -ContentConversionTracingEnabled $true -PipelineTracingSenderAddress administrator@local.zz -PipelineTracingPath : "C:\Program Files\Microsoft\Exchange Server\V15\TransportRoles\Logs\Hub\PipelineTracing"
MS Artikel Antispamschutz (Exchange 2013)
   Exchange Grundlegendes zur Antispam- und Antivirusfunktionalität (Exchange 2010)
- Antispamfunktionen für alle Postfächer setzen, in der Organisation der Schwellenwert für Junk-E-Mail auf 5
Set-OrganizationConfig -SCLJunkThreshold 6
- Installieren des SPAM Schutzes mit der PowerShell
& $env:ExchangeInstallPath\Scripts\Install-AntiSpamAgents.ps1
- Microsoft Exchange-Transportdiensts neu starten
Restart-Service MSExchangeTransport
- Angeben der internen SMTP-Server in Ihrer Organisation, es muß mind. die IP des Exchange Server angegeben werden.
Set-TransportConfig -InternalSMTPServers @{Add="<ip address1>","<ip address2>"...}
 testen ob der Befehl fehlerfrei ausgeführt wurde
Get-TransportConfig | Format-List InternalSMTPServers
Absenderfilterung (Standard ist an)
- Adressfilterung aktivieren
Set-SenderFilterConfig -Enabled $true
- Status Adressfilterung testen
Get-SenderFilterConfig | fl Enabled
SPAM Wert (Wert von 0 - 9, 0 = Clean und 9 = ist eindeutig SPAM)
X-MS-Exchange-Organization-SCL:
Phishing Wert ( Wert von 1 - 8, 1 - 3 neutral, 4 - 8 Suspicious - Phishing wahrscheinlich)
X-MS-Exchange-Organization-PCL:
SMTP-Relays und Bereinigen der SMTP-Warteschlangen
Open SMTP Relay Test
Telnet set localecho open <mail.domain.tld> 25 ehlo <domain.tld> mail from:<user@domain.tld> rcpt to:<user@domain.tld> 550 5.7.1 Unable to relay
wenn die Antwort Unable to relay ist, dann ist der Server nicht als Relay konfiguriert und sicher.
New-ExchangeCertificate
   Understanding TLS Certificates
   Zertifikat für Exchange erstellen
   SAN Zertifikat und interne Zertifizierungsstelle (CA)
Zertifikate mit PowerShell erstellen
import-exchangecertificate -path C:\cert.cer enable-exchangecertificate -thumbprint (Fingerabdruck des Zertifikats) -services IMAP,POP,SMTP,IIS export-exchangecertificate -thumbprint (Fingerabdruck des Zertifikats) ` -binaryencoded:$true -path C:\cert.ex1.pfx ` -passwordface-sadget-credential).Password
- Zertifikate anzeigen
get-exchangecertificate | fl
New-ExchangeCertificate ` -SubjectName "cn=Domain-Server-CA" ` -IncludeAcceptedDomains ` -IncludeAutoDiscover ` -privatekeyexportable $true ` -domainName remote.domain.tld, autodiscover.domain.tld, domain.tld, server.domain.local, autodiscover.domain.local ` -Services "SMTP, IMAP, POP, UM, IIS"
- ein Selbstsigniertes Zertifikat erneuern
Get-ExchangeCertificate | fl Get-ExchangeCertificate -Thumbprint xxxxxxxxxxxxxxxxxxxxxx | New-ExchangeCertificate
Zertifikatanforderung erstellen, SubjectName cn= Name der im Zertifikat unter Antragsteller und "Ausgestellt für" erscheint. Darf nicht mit dem Namen der Zertifizierungsstelle übereinstimmen.
 mit Option -BinaryEncoded DER-codierten Zertifikatsanforderung (.cer), ohne Base64-Format (.crt)
$Data = New-ExchangeCertificate ` -GenerateRequest ` -SubjectName "cn=Exchange-SBS2011-CA" ` -IncludeAcceptedDomains ` -IncludeAutoDiscover ` -privatekeyexportable $true ` -domainName remote.domain.tld, autodiscover.domain.tld, *.domain.tld, domain.tld, ex.domain.zz, autodiscover.domain.zz, domain.zz
- Zertifikatanforderung in Datei speichern, C:\Temp\MyCertRequest.req
Set-Content -path "C:\Temp\MyCertRequest.req" -Value $Data
- aus der Anforderung ein Zertifikat erstellen und in Datei MyCertRequest.crt speichern.
certreq -attrib "CertificateTemplate:WebServer" -submit "C:\Temp\MyCertRequest.req"
- Zertifikatanforderung abschliessen und Dienste dem Zertifikat zuweisen
Import-ExchangeCertificate ` -FileData ([Byte[]]$(Get-Content -Path C:\Temp\MyCertRequest.crt -Encoding byte -ReadCount 0)) | ` Enable-ExchangeCertificate ` -Services "IIS,POP,IMAP,SMTP"
- Zertifikatsdatei .cer mit PrivatKey (sitekey.pem) zusammenführen und als .pfx speichern.
openssl pkcs12 -export -out certifikat.pfx -inkey sitekey.pem -in certifikat.cer
Passwort für den PrivatKey Import wird abgefragt und hinterlegt.
im Exchange ECP unter Server | Zertifikate importieren, Privat Key Passwort was beim zusammenführen hinterlegt wurde mit angeben.
   Stift Symbol wählen und Dienste aktivieren. (SMTP, IIS, POP, IMAP)
!! Bei einem Wildcard Zertifikat *.domain.tld wird nur der Service SMTP und IIS aktiviert und im Parameter -X509CertificateName wird ein Name hinterlegt, der vom Wildcard Zertifikat abgedeckt ist. !!
Get-ExchangeCertificate -Thumbprint xxx | Enable-ExchangeCertificate -Services SMTP, IIS
Set-POPSettings -X509CertificateName mail.domain.tld
Set-IMAPSettings -X509CertificateName mail.domain.tld
Prüfen kann man das mit
Get-PopSettings -Server ExSRV | fl X509CertificateName Get-IMAPSettings -Server ExSRV | fl X509CertificateName
SMTP Connector und Wildcard- / SAN-Zertifikate
Exchange Admin Center | Server | Zertifikate | StiftSymbol - Fingerabdruck
Get-ExchangeCertificate | where {$_.services -match "IIS"}
$Cert = Get-ExchangeCertificate -Thumbprint <Thumbprint ID>
$TLSCertificateName = "<i>$($Cert.Issuer)<s>$($Cert.Subject)"
$TLSCertificateName
 - Empfangs Connectoren
Get-ReceiveConnector Set-ReceiveConnector "EX01\Default Frontend EX01" -TlsCertificateName $TLSCertificateName set-ReceiveConnector "EX01\Client Frontend EX01" -TlsCertificateName $TLSCertificateName
- Sende Connectoren
Get-SendConnector Get-SendConnector | Set-SendConnector -TlsCertificateName $TLSCertificateName
- im Exchange Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration
   Zertifikat auswählen und "Anstehende Anforderung abschließen.." ausführen
- Dienste zuweisen unter Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration
   Zertifikat auswählen und "Dem Zertifikat Dienste zuordnen"
Thumbprint des neue Zertifikates notieren
get-exchangecertificate | fl
Zertifikat aktivieren, MS Artikel
enable-exchangecertificate -Thumbprint xxx -Services
Zertifikate mit der Zertifizierungsstelle erstellen
Zertifizierungsstelle | Zertifikatvorlagen | Verwalten
   Webserver Vorlage markieren und Vorlage duplizieren wählen
   Allgemein
   Vorlagenanzeigename: Exchange Server Zertifikat
   Gültigkeitsdauer: 2 Jahre
Anforderungsverarbeitung
   Vom Antragssteller zugelassene symmetrische Algorithmen einbeziehen: aktivieren
   Exportieren von privaten Schlüssel zulassen: aktivieren
Sicherheit
   Gruppe "Exchange Servers": Vollzugriff
Zertifizierungsstelle | Zertifikatvorlagen | Neu | Auszustellende Zertifikatsvorlage
   Exchange Server Zertifikate
- Gruppenrichtlinie aktualisieren
   gpupdate /force
   certutil /pulse
MMC | Snap-In Zertifikate | Computerkonto | Lokalen Computer
   Eigene Zertifikate | Zertifikate
   Alle Aufgaben | Neues Zertifikat anfordern
   Active Directory-Registrierungsrichtlinie | Weiter
   Exchange Server Zertifikat: aktivieren
   Es werden zusätzliche Informationen für diese Zertifikatsregistrierung benötigt: wählen
Antragsteller
   Land: DE
   Ort: Springfield
   Organisation: Firma
   Organisationeinheit: Exchange
   Allgemeiner Name: owa.domain.tld
Alternativer Name:
   Typ: DNS
   owa.domain.local
   owa.domain.tld
   autodiscover.domain.tld
   autodiscover.domain.local
   domain.tld
   *.domain.tld
   *.domain.local
   ex2010.domain.local
   ex2016.domain.local
   ex2010
   ex2016
   mail.domain.tld
Allgemein
   Anzeigename: Exchange Server Zertifikat
Let’s Encrypt Zertifikat mit ACME2 auf Windows Server
   Win-ACME 
- im Beispiel ein TDSL Business Zugang
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Sendeconnectors
   Adressraum
   Typ: smtp
   Adressraum: *
   Alle Unterdomänen einschließen: aktivieren
   Kosten: 1
Netzwerk
   E-Mail über folgenden Smarthost leiten: aktivieren
   (FQND): smtp.webpage.t-com.de
   Smarthost-Authentifizierung
   Benutzername: webmaster@<Kundennummer>.webpage.t-com.de
   Kennwort: ***
| Befehl | Erläuterung | 
|---|---|
| Get-ReceiveConnector | fl | alle Einstellungen der Empfangsconnectoren | 
| Get-SendConnector | fl | alle Einstellungen der Sendeconnectoren | 
| Get-Queue | fl | Warteschlange anzeigen | 
- alles in Formatierte Liste (fl), Formatierte Tabelle (ft), Format-Wide (fw)
Get-SendConnector | fl
- aus der Gesamttabelle nur den Eintrag Identity und MaxMessageSize
Get-SendConnector | Select Identity,MaxMessageSize
- Filter umstellen nach migration vom Exchange 2003
Set-AddressList "Alle Benutzer" -IncludedRecipients MailboxUsers
Set-AddressList "Alle Gruppen" -IncludedRecipients MailGroups
Set-AddressList "Alle Kontakte" -IncludedRecipients Mailcontacts
Set-AddressList "Öffentliche Ordner" -RecipientFilter { RecipientType -eq "PublicFolder" } -ForceUpgrade:$True
 - Eigenschaften des Offline Adressbuches anzeigen
Get-OfflineAddressBook | fl
- Offline Adressbuch auf neuen Server verschieben
Get-OfflineAddressBook | Move-OfflineAddressBook -server sbs2011
- Ermitteln des OAB Virtuellen Verzeichnisses
Get-OabVirtualDirectory | fl Server,Name
- Aktivieren des OAB für die Webverteilung für Outlook 2007 Clients
Get-OfflineAddressBook | Set-OfflineAddressBook -VirtualDirectories "OAB (Default Web Site)"
- Eigenschaften Öffnetlicher Ordner Datenbank
Get-PublicFolderDatabase | fl
- Exchange 2007 / 2010 Version anzeigen
Get-ExchangeServer | fl name,edition,admindisplayversion
-Echange Bindungen anzeigen
Get-OwaVirtualDirectory | fl
- eingerichtete Mailboxen anzeigen
Get-CASMailbox | ft DisplayName
- Abwesenheitsassistent Einstellungen anzeigen
get-mailboxautoreplyconfiguration -identity <Benutzername>
- Abwesenheitsassistent Einstellungen ändern, Abwesenheitsassistent deaktivieren
set-mailboxautoreplyconfiguration -autoreplystate Disabled -identity <Benutzername>
- Mailboxen der User anzeigen
get-MailboxRegionalConfiguration -Identity <BenutzerName>| fl
- Zeitzone setzen
Set-MailboxRegionalConfiguration -Identity <Benutzer> ` -Language de-de -TimeZone "W. Europe Standard Time"
- ProduktKey eingeben
Set-ExchangeServer -Identity <ExchangeServerName> -ProductKey aaaaa-aaaaa-aaaaa-aaaaa-aaaaa
- Übersicht aller Mailboxen und gesetzten Quota
Get-Mailbox |sort ProhibitSendQuota -desc | select-object DisplayName,Alias,ProhibitSendQuota
- Benutzer der Datenbank mit Limit anzeigen
Get-Mailbox -Database "Mailbox Database xxx" | `
 where {$_.ObjectClass -NotMatch ‘(SystemAttendantMailbox|ExOleDbSystemMailbox)’}
 - Größe der Exchange Mailbox des Benutzers anzeigen
Get-MailboxStatistics <Postfachname> | ft DisplayName, TotalItemSize, ItemCount
Get-MailboxStatistics <Postfachname> | fl StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,`
 ItemCount,DeletedItemCount
Get-MailboxStatistics <Postfachname> | select-object DisplayName, {$_.TotalItemSize.Value.ToMB()}
 - Größe aller Exchange Mailboxen
Get-Mailbox | Get-MailboxStatistics | select-object DisplayName, {$_.TotalItemSize.Value.ToMB()}
Get-MailboxStatistics -server <Servername> | sort TotalItemSize -desc | FT DisplayName,TotalItemSize
Get-MailboxStatistics -server <Servername> | Sort TotalItemSize -desc | `
 ft displayname, {$_.TotalItemSize.Value.Tomb()} , {$_.TotalDeletedItemSize.Value.Tomb()}, `
 storagelimitstatus >C:\Temp\MailboxSize.txt
 - alle Mailboxen nach Größe anzeigen
Get-MailboxDatabase | get-mailboxstatistics | Sort -Property TotalItemSize -descending| `
 select-object DisplayName,@{expression={$_.TotalItemSize.value.ToMB()}}, Itemcount,ServerName
 - alle Mailboxen nach Größe und mit Datenbank anzeigen
Get-MailboxDatabase | Get-MailboxStatistics | Sort -Property TotalItemSize -descending| `
select-object DisplayName,@{expression={$_.TotalItemSize.value.ToMB()}}, Itemcount,ServerName,Database |ft
 - Mailboxen aller Datenbanken anzeigen
Get-Mailbox | Sort-Object Database | format-Table Name, Alias, Database
- Mailboxen der angegebenen Datenbank anzeigen
Get-Mailbox | where-object{$_.Database -like "Mailbox Db"} | Sort-Object Database | `
 format-Table Name, Alias, Database
 - Datenbank des Servers mit der Größe
Get-MailboxDatabase -Status | Select Name,DatabaseSize
-ActiveSync Geräteliste Informationen
Get-ActiveSyncDevice | sort UserDisplayName | fl UserDisplayName,WhenCreated,DeviceModel, DeviceActiveSyncVersion
Get-ActiveSyncDeviceStatistics -mailbox <BENUTZER>
- Anmeldestatistik anzeigen
Get-LogonStatistics -server <SERVER>
Einrichtung Server
Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Clientzugriff | <Server> wählen
   Eigenschaften | Outlook Anywhere
   Externer Hostname:
   Standard-Authentifizierung wählen
   SSL-Verschiebung (Secure Channel) zulassen: deaktivieren
nach dem einstellen oder ändern der Einstellung muss man ca. 15 Minuten warten, bis diese übernommen werden. In der Ereignisanzeige erscheint nach Abschluss der Konfiguration eine Meldung.
Client Konfiguration
- Zugriff ohne ExchangeProxy
eMail -Konteneinstellung | Exchange Konto
Server: <interner Name des Servers> meist <server.domain.local>
Benutzername: <Domain Benutzername> (nur Benutzername, nicht Domain mit angeben)
Weitert Einstellungen | Verbindung
   Verbindung mit Microsoft Exchange über HTTP herstellen: aktivieren
   Exchange Proxyeinstellungen | Verbindungseinstellungen
   https://remote.domain.tld
   Nur SSL für Verbindung verwenden: aktivieren
   Verbindung nur mit Proxyservern herstellen...: deaktivieren 
   Proxyauthentifizierungseinstellungen: Standard-Authentifizierung
- Zugriff erfolgt über den Exchange Proxy (meist bei HostedExchange)
eMail -Konteneinstellung | Exchange Konto
 Server: <interner Name des Servers>
 Benutzername: <eMail Adresse>
Weitert Einstellungen | Verbindung
   Verbindung mit Microsoft Exchange über HTTP herstellen: aktivieren
   Exchange Proxyeinstellungen | Verbindungseinstellungen
   https://remote.domain.tld
   Nur SSL für Verbindung verwenden: aktivieren
   Verbindung nur mit Proxyservern herstellen, deren Zertifikat den folgenden Prinzipalnamen enthält: msstd:remote.domain.tld
   Proxyauthentifizierungseinstellungen: NTLM-Authentifizierung
Anzahl der erlaubten Active Sync Geräte pro Postfach festlegen
- aktuelle erlaubte Anzahl der ActiveSync Geräte pro Postfach anzeigen (Standard 10)
Get-ThrottlingPolicy default* | fl eas*
- erlaubte Anzahl der ActiveSync Geräte pro Postfach auf 5 einschränken
Set-ThrottlingPolicy default* -EasMaxDevices 5
https://<server.domain.tld>/ecp
Telefon und Voice | ActiveSync-Zugriff
   Einstellungen für den Exchange ActiveSync-Zugriff
   Bearbeiten
   In Quarantäne stellen - Selbst entscheiden, ob blockiert oder später zugelassen werden soll: aktivieren
   Benachrichtigungs-E-Mails für Isolieren
   Admin Account auswählen der die eMail für ein neu zuzulassendes Gerät bekommen soll.
Telefon und Voice | ActiveSync-Geräterichtlinie
   Default | Bearbeiten
   Kennwort anfordern: aktivieren
   Einfache Kennwörter zulassen: aktivieren
   Minimale Kennwortlänge: setzen
oder unter Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Clientzugriff
   Exchange ActiveSync-Geräterichtlinie
   Default
Exchange Admin Center | Mobil | Zugriff auf mobile Geräte
   Bearbeiten
 In Quarantäne stellen - Selbst entscheiden, ob blockiert oder später zugelassen werden soll: aktivieren
Benachrichtigungs-E-Mails für Quarantäne
   Wählen Sie Administratoren für den Empfang von E-Mails aus, wenn sich ein mobiles Gerät in Quarantäne befindet.
- Gerät zulassen
Exchange Admin Center | Mobil | Zugriff auf mobile Geräte
   Geräte in Quarantäne 
Exchange Admin Center | Mobil | Postfachrichtlinien für mobile Geräte
   Default (Standard Richtlinie)
- Device anzeigen
Get-ActiveSyncDevice -mailbox user@domain.tld | fl
- letzte Syncronisierung der Geräte der angegebennen UserMailBox
Get-ActiveSyncDevice -mailbox <AD-BENUTZER> | Get-ActiveSyncDeviceStatistics | ft ` FirstSyncTime,LastPolicyUpdateTime,LastSyncAttemptTime,LastSuccessSync,DeviceType,DeviceUserAgent
- Liste aller Geräte nach UserNamen sortiert
Get-ActiveSyncDevice | sort UserDisplayName | fl UserDisplayName,WhenCreated,DeviceModel,DeviceActiveSyncVersion, ` FirstSyncTime,LastPolicyUpdateTime,LastSyncAttemptTime,LastSuccessSync,DeviceUserAgent
Get-ActiveSyncDeviceStatistics -mailbox <BENUTZER>
- ActivSync testen, wenn die Meldung
Test-ActiveSyncConnectivity | ft -autosize
wenn die Meldung erscheint, das der Benutzer extest nicht existiert, kann er mit dem Script C:\Program Files\Microsoft\Exchange Server\V15\Scripts\new-TestCasConnectivityUser.ps1 angelegt werden.
Benutzer domain.tld\extest_49afc2f998a24 konnte nicht gefunden oder angemeldet werden. Wenn der Task ohne
Anmeldeinformationen ausgeführt wird, melden Sie sich als Domänenadministrator an, und führen Sie anschließend
Scripts\new-TestCasConnectivityUser.ps1 aus, um sicherzustellen, dass der Benutzer auf Postfachserver
ex.domain.tld vorhanden ist.
    + CategoryInfo          : ObjectNotFound: (:) [Test-ActiveSyncConnectivity], CasHealthCouldN...edInfoException
    + FullyQualifiedErrorId : A049DB3D,Microsoft.Exchange.Monitoring.TestMobileSyncConnectivity
  Beim Anlegen des extest Users kann die folgende Fehlermeldung erscheinen. Dann muss das Script new-TestCasConnectivityUser.ps1 mit einem Editor bearbeitet werden.
Geben Sie ein temporäres sicheres Kennwort zum Erstellen von Testbenutzern ein. Aus Sicherheitsgründen wird das
Kennwort regelmäßig und automatisch vom System geändert.
Kennwort eingeben: ********
Testbenutzer erstellen für: ex.domain.tld
Drücken Sie zum Beenden auf STRG+UNTBR oder zum Fortfahren auf die EINGABETASTE.:
CreateTestUser : Mailbox could not be created. Verify that OU ( Users ) exists and that password meets complexity
requirements.
In C:\Program Files\Microsoft\Exchange Server\V15\Scripts\new-TestCasConnectivityUser.ps1:267 Zeichen:17
+ ...   $result = CreateTestUser $exchangeServer $mailboxServer $securePass ...
+                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
    + FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException,CreateTestUser
 new-TestCasConnectivityUser.ps1 im Editor öffnen und die folgende Passage in Zeile 49 löschen.
-OrganizationalUnit:$OrganizationalUnit
Ereignisanzeige | Anwendung
   Aktuelles Protokoll filtern...
   Quellen: MSExchange ActiveSync
- Einzutragende Domain remote.domain.tld
   Verwaltung | DNS | Forward-Lookupzone
   Neue Zone | Weiter ...
   Zone: remote.domain.tld
die neue Zone markieren | rechte Maus Neuer Host
   Name: leer lassen
   IP-Adresse: <IP-Adresse des Exchange Servers>
die neue Zone markieren | rechte Maus Weitere neue Einträge | Dienstidentifizierung (SRV)
   Dienst: _autodiscover
   Protokoll: _tcp
   Priorität: 0
   Gewichtung: 0
   Portnummer: 443
   Host: remote.domain.local.
Exchange Management Console | Microsoft Exchange <Domain> | Serverkonfiguration | Clientzugriff
   Externe Clientzugriffsdomäne konfigurieren
 (rechte Seite, wenn Clientzugriff ausgewählt ist)
Exchange Management Console | Microsoft Exchange <Domain> | Empfängerkonfiguration | Postfach
   Benutzer wählen | Eigenschaften | Nachrichtenübermittlungseinstellungen | Zustellungsoptionen
   Weiterleiten an: aktivieren
Exchange Management Console | Microsoft Exchange <Domain> | Empfängerkonfiguration | E-Mail-Kontakt
   Neuer 
 E-Mail-Kontakt.. einrichten mit der eMail Adresse des externen Teilnehmers.
Danach kann man den Kontakt unter Nachrichtenübermittlungseinstellungen wählen.
im AD ein Kontakt anlegen inklusive einer eMail Adresse, dann kann man in Outlook unter Extras | Regeln und Benachrichtigungen | Neue Regel:
   Regel ohne Vorlage erstellen | Nachrichten bei Ankunft prüfen
   über Konto Kontoname: Exchange Konto
   diese umleten an eine Person/Verteilerliste: ActivDirectory eMail Kontakt
- Suche nach getrennten Postfächer anstoßen
Get-MailboxDatabase | Clean-MailboxDatabase
- getrennten Postfächer anzeigen und GUID (Identity) ausgeben
get-mailboxdatabase | get-mailboxstatistics | Where{ $_.DisconnectDate -ne $null } |fl `
 displayName,Identity,disconnectdate,database
 - Löschen der getrennten Postfächer
Remove-StoreMailbox -database "Mailbox Database" -Identity "Identity" -MailboxState SoftDeleted/Disabled oder Remove-StoreMailbox -database "Mailbox Database" -Identity "Identity" -MailboxState Disabled
Exchange Management Console | Microsoft Exchange <Domain> | Empfängerkonfiguration | Postfach
   Postfach wählen, mit dem andere Benutzer eMails versenden sollen.
   Berechtigung 'Senden als' verwalten... : Benutzer zuordnen die eMails unter der Adresse senden sollen.
https://<Exch-Srv>/owa
   Posteingang | Neu | Nachricht
   Optionen | Absender anzeigen wählen
   Von | Andere E-Mail-Absender
- für das Freigegebene Postfach "Info Post" festlegen, das Nachrichten die mit diesem Postfach gesendet wurden, sowohl im Benutzerpostfach "Gesendete Elemente" als auch im Postfach "Info Post" unter "Gesendete Elemente" gespeichert werden.
Set-MailboxSentItemsConfiguration "Info Post" -SendAsItemsCopiedTo SenderAndFrom
Get-MailboxSentItemsConfiguration, Set-MailboxSentItemsConfiguration
- aktuelle Einstellungen anzeigen
Get-MailboxSentItemsConfiguration "Info Post"
- gesendete Nachricht im Ordner Gesendete Objekte des freigegebene Postfach speichern, per Registrykey für Outlook 2007 als GPO oder Einzelplatz.
[HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\12.0\Outlook\Preferences] "DelegateSentItemsStyle"=dword:00000001 [HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Outlook\Preferences] "DelegateSentItemsStyle"=dword:00000001
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Journalregeln
   Neue Journalregel
Get-TransportAgent - Konfiguration eines Transport-Agents anzuzeigen
Get-TransportAgent
- Exchange 2010
Exchange Management Console | Microsoft Exchange <Domain> | Organisationskonfiguration | Hub-Transport | Transportregeln
   Neue Transportregel
   Ausgang BCC
   von einem Mitglied einer Verteilerliste: alle Mitarbeiter
   Die Nachricht als BCC-Kopie an Adresse: Postfach Ausgang
   außer, wenn die Nachricht an ein Mitglied einer Verteilerliste gesendet wird: alle Mitarbeiter (interne Kommunikation landet nicht im Ausgang)
- Exchange ab 2013
Exchange Admin Center | Nachrichtenfluss | Regeln
   neue Regel erstellen
   Name: <beliebig>
   Diese Regel anwenden, wenn...
   Der Absender ist
Folgendermaßen vorgehen...
   Bcc der Nachricht an
   Modus für diese Regel auswählen:
   Erzwingen: aktivieren
Variante 1 - Verteilergruppe einrichten
Exchange ab 2013 – Mit zweiter Email Adresse versenden
Variante 2 - per IMAP
Mit der Konfiguration, erreicht man das die eMail Adresse support@domain.tld als Standard Versandadresse genutzt wird, für neue eMails als auch für Antworten auf empfangene eMails.
Variante 3 - freigegebenes Postfach
Exchange 2016 - E-Mails über Alias-Adressen verschicken
- aktuelle Einstellung anzeigen, mit Set-SendConnector wird ein neuer Port gesetzt.
Get-SendConnector | fl port Get-SendConnector | Set-SendConnector -Port 587
- Identity der vorhandenen MailBoxen anzeigen
Get-Mailbox | fl Identity
- Eigenschaften der Mailbox des Benutzers anzeigen
Get-Mailbox -Identity "User Name" | fl
- Berechtigung für den Im/Export von Postfächern setzen. Nach dem setzen der Rechte die Powershell neu starten, sonst stehen die Befehle nicht zur Verfügung.
New-ManagementRoleAssignment -Role "Mailbox Import Export" -User "Domain\administrator"
New-MailboxExportRequest -Mailbox <user> -FilePath \\Server\d$\PST\<user>.pst
- mehrere Postfächer exportieren
(Get-Mailbox) | foreach {New-MailboxExportRequest -Mailbox $_.alias -FilePath "\\Server\d$\PST\$_.pst"}
 - prüfen ob der Export abgeschlossen ist.
Get-MailboxExportRequest | ft name,mailbox,status, Length -AutoSize > export.txt
New-MailboxImportRequest -Mailbox <User> -FilePath \\Server\d$\PST\<user>.pst
- mehrere PST Dateien gleichzeitig importieren
Dir \\Server\d$\PST\*.pst | %{ New-MailboxImportRequest -Mailbox $_.BaseName -FilePath $_.FullName}
 - prüfen ob der Import abgeschlossen ist.
Get-MailboxImportRequest | ft name,mailbox,status, Length -AutoSize > import.txt
Get-MailboxImportRequest | fl mailbox,identity Get-MailboxExportRequest | fl mailbox,identity
- jetzt kann der Request mit der vorherigen Identity abfrage gelöscht werden
Remove-MailboxExportRequest -Identity "domain.local/Users/<UserName>\MailboxExport"
SBS 2003 Relay abschalten
   Junk-Mails Aufbewahrungszeit festlegen
   Exchange mit Antivierensoftware
Beim Provider eine SubDomain erstellen mit Zertifikat z.B. mail.domain.tld
DNS Einstellungen ändern, CNAME Umleitung auf DynDNS Name <name>.dyndns.org erstellen.
auf den internen DNS eine Zone erzeugen mail.domain.tld
   in der Zone einen Host erstellen, der keinen Namen hat nur die IP des Exchange Servers.
Setzt die Größe der DB auf 50GB hoch, beim SBS2003 ist die DB Standardmäßig auf 16GB begrentz, erst ab Exchange SP2 bis 75GB verfügbar.
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\<Server>\Private-<GUID-der-DB>] "Database Size Limit in GB"=dword:00000032
StandardServer: 1-75, bei Enterprise: 1-8000
 Defaulteinstellung auf StandardServer: 18, bei Enterprise: 8000 (Unlimited)
ab wieviel Prozent Füllstand der DB eine Warnung ausgegeben wird.
"Database Size Buffer in Percentage"=dword:00000010
Der eMail Absender ist der Name der im Active Directory unter "Angezeigter Name" aufgeführt ist.
[HKEY_CURRENT_USER\Software\Microsoft\Exchange\EXAdmin] "ShowSecurityPage"=dword:00000001
jetzt ist im Exchange System-Manager | "<Domain> (Exchange)" | Eigenschaften | Sicherheit
   Administrator wählen und unter den Berechtigungen
   Receive As: Verweigern deaktivieren
   Send As: Verweigern deaktivieren
das gleiche ist auch für die Gruppe Domain-Admins und Organisations-Admins zu erledigen, da der Administrator auch in diesen Gruppen Mitglied ist.
nach zwei Stunden (Wartezeit durch Replikation von Exchange mit dem AD), als Administrator Outlook starten, das Konto des Benutzers auf den man zugreifen will einrichten (Cache Mode deaktivieren).
- Berechtigungen setzen
   Active Directory-Benutzer und -Computer | <Benutzer> | Exchange - Erweitert | Postfachberechtigungen..
- Konto einbinden
   unter Outlook | Kontoeinstellungen | Ändern | Weitere Einstellungen... | Erweitert
   Zusätzlich diese Postfächer öffnen:
Exchange System-Manager | Administrative Gruppen | <Server> | erste Speichergruppe
   Postfachspeicher | Eigenschaften | Datenbank: Watungsintervall setzen
   Informationsspeicher für Öffentliche Ordner | Eigenschaften | Datenbank: Watungsintervall setzen
Exchange-Einstellung:
   System-Manager | Globale Einstellungen | Internet-Nachrichtenformate | Standard | Eigenschaften | Erweitert:
   Abwesenheitsnachrichten zulassen aktivieren
Outlook 2010 Passwort Exchange speichern
   Datei | Optionen erweiter | senden/empafangen.. | Bearbeiten | Kontoeigenschaften. | Sicherheit
KB290684 Kennwörter werden in Outlook und OutlookExpress nicht gespeichert.
Outlook 2010 Kennwörter werden nicht gespeichert.
- intern als auch extern kann man keine Mails verschicken
System-Manager unter Server | Protokolle | SMTP | Virtueller Standardserver für SMTP
   Beenden danach Starten wählen
Das Einspiele eines Pollups ist fehlgeschlagen, Update noch mal starten, durch das PowerShellScript.
C:\Program Files\Microsoft\Exchange Server\V14\Bin\UpdateCas.ps1
Verwalten von Postfachdatenbanken in Exchange 2016
- altuelle Datenbank und LOG des Servers
Get-MailboxDatabase | fl Name,EdbFilePath,LogFolderPath
- Postfach Datenbank verschieben und LOG Dateien
Move-DatabasePath -Identity "MailboxDB" -EdbFilePath "D:\ExchangeDB\Mailbox\MailboxDB.edb" Move-DatabasePath -Identity "MailboxDB" -LogFolderPath "D:\Logfiles\MailboxDB"
- alle Datenpfade der Datenbank
Get-MailboxDatabase "MailboxDB" | FL Name,*Path*
- MailBox DB umbenennen und DB mig LOGs verschieben
Get-MailboxDatabase -Server NSEX | Set-MailboxDatabase -Name MBXDB01 Move-DatabasePath MBXDB01 -EdbFilePath c:\MBXDB01\MBXDB01.edb -LogFolderPath c:\MBXDB01
Exchange Admin Center | Nachrichtenfluss | Regeln
   Hinzufügen
   Haftungsausschlüsse anwenden...
   Der Empfänger befindet sich...
   Außerhalb der Organisation
   Haftungsausschlüsse anfügen...
- Quarntaine Check alle Server
Get-Mailbox | Get-MailboxStatistics | Where {$_.IsQuarantined -eq $True}
 - Quarntaine Check einzelme Mailbox
Get-MailboxStatistics "User_Name" | fl IsQuarantined
- Quarntaine entfernen
Disable-MailboxQuarantine "User_Name"
- MailboxGuid des User Postfaches anzeigen
Get-MailboxStatistics -Identity <User Name> | fl Database,MailboxGuid,ServerName
- Eintrag aus Registy entfernen {mailbox guid} löschen und Informations Store neu starten
HKLM\SYSTEM\CurrentControlSet\Services\MSExchangeIS\<ServerName>\Private-{dbguid}\QuarantinedMailboxes\{mailbox guid}
 - nach Änderung der Registry, den Dienst "Microsoft Exchange Information Store" neu starten
net stop MSExchangeIS net start MSExchangeIS
- MailBox des Users bereinigen
New-MailboxRepairRequest -mailbox "User_Name" -corruptiontype Aggregatecounts,searchfolder,provisionedfolder,folderview
Send-MailMessage -From "user-a@domain.tld" -To "user-b@domain.tld" -Subject "Test mail" ` -smtpserver <ex.domain.tld> -port 587 -Credential "Domain\User"
The following error was generated when "$error.Clear();
           Write-ExchangeSetupLog -Info "Creating SBS certificate";
 Lösung:
   Änderungen wie folgt durchführen, nur den Wert löschen, nicht den Key selbst.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SmallBusinessServer\Networking] "LeafCertThumbPrint"=""
WinRM - Windows Remote Management
"Beim Verbinden mit dem Remoteserver ist folgender Fehler aufgetreten: Zugriff verweigert"
winrm quickconfig
man kann auch versuchen, auf dem DC die Firewall mal testweise auszuschalten und dann noch einmal neu anmelden am Exchange Server.
Protokollname: Application
   Quelle:        MSExchangeTransport
   Ereignis-ID:   15006
   Ebene:         Fehler
   Beschreibung:
   Der Microsoft Exchange-Transportdienst weist Nachrichtenübermittlungen zurück, weil der verfügbare Speicherplatz den konfigurierten Schwellenwert unterschritten hat. 
Die folgenden Ressourcen sind überlastet:
   Warteschlangen-Datenbankpfad ("C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\data\Queue\mail.que") = 97% [Medium] [Normal=95% Mittel=97% Hoch=99%]
   Warteschlangen-Datenbankprotokollierungspfad ("C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\data\Queue\") = 97% [Medium] [Normal=95% Mittel=97% Hoch=99%]
!! Festplatte ist mit TransaktionsLogs voll gelaufen, im Verzeichnis der MailBox C:\Program Files\Microsoft\Exchange Server\V14\Mailbox\Mailbox Database xxxxx sind viele E0xxx.log von 1MByte Größe !!
Lösung
   Variante 1
   prüfen, wann das letzte KomplettBackup der Datenbank erstellt wurde, beim Backup des ExchangeServers werden die Transaktionsprotokolle abgeschnitten. Das geschieht aber nur, beim einer "Vollständigen VSS-Sicherung", nicht bei einer "VSS-Kopiesicherung"
Get-MailboxDatabase -Status |fl ... LastFullBackup : 27.02.2017 20:00:00 LastIncrementalBackup : LastDifferentialBackup : LastCopyBackup : 27.02.2017 15:30:00 ...
Variante 2
eseutil /mh MailBoxDB.EDB
Set-MailboxDatabase -Identity <Datenbank> -CircularloggingEnabled $trueStatus der MailBox prüfen
Get-MailboxDatabase |flExchange default Einstellung
Set-MailboxDatabase -Identity <Datenbank> -CircularloggingEnabled $false
Die Datei "C:\Program Files\Microsoft\Exchange Server\V15\bin\RemoteExchange.ps1" kann nicht geladen werden...
- in der Powershell den Befehl ausführen
Set-ExecutionPolicy RemoteSigned -scope LocalMachine
New-PSSession : [nsex.nordsaat.loc] Beim Verbinden mit dem Remoteserver "nsex.nordsaat.loc" ist folgender Fehler
aufgetreten: WinRM kann den Vorgang nicht abschließen. Überprüfen Sie, ob der angegebene Computername gültig, der
Computer über das Netzwerk erreichbar und eine Firewallausnahme für den WinRM-Dienst aktiviert ist und den Zugriff von
diesem Computer zulässt. Standardmäßig wird der Zugriff auf Remotecomputer innerhalb desselben lokalen Subnetzes von
der WinRM-Firewallausnahme für öffentliche Profile eingeschränkt. Weitere Informationen finden Sie im Hilfethema
"about_Remote_Troubleshooting".
In Zeile:1 Zeichen:1
+ New-PSSession -ConnectionURI "$connectionUri" -ConfigurationName Micr ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [New-PSSession], PSRemotin
   gTransportException
    + FullyQualifiedErrorId : WinRMOperationTimeout,PSSessionOpenFailed
 Exchange Management Shell startet nicht (PowerShell vDir)
- Exchange SnapIn in der Standard Powershell laden
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn
- Virtuelle Verzeichnisse der Powershell löschen
Get-PowerShellVirtualDirectory -Server NSEX | Remove-PowerShellVirtualDirectory Get-PowerShellVirtualDirectory -Server NSEX -ShowMailboxVirtualDirectories | Remove-PowerShellVirtualDirectory
- Virtuelle Verzeichnisse der Powershell neu erstellen
New-PowershellVirtualDirectory -Name "Powershell" -RequireSSL $false -CertificateAuthentication $true ` -BasicAuthentication $false -InternalUrl http://ex.domain.tld/powershell New-PowershellVirtualDirectory -Name "Powershell" -Role Mailbox -CertificateAuthentication $true ` -BasicAuthentication $false -WindowsAuthentication $true