Exchange BPA 365

Es gibt wieder einen ExBPA. Diesmal aber aus der Office 365 Cloud.

BPA wer?

Der „Exchange Best Practice Analyzer“ wurde vor vielen Jahren vom Exchange Team entwickelt, um schnell die häufigsten Fehler in Exchange Installationen ausfinden machen zu können. Nach und nach gab es dann weiter BPAs für andere Produkte mit es scheint so, als ob dieses „Wissen“ mit Windows 2012 in den Server Manager gewandert ist. Der eigenständige ExBPA wurde seit Exchange 2010 nicht mehr weiter entwickelt aber hat durchaus auch unter Exchange 2013 und 2016 Hinweise auf Fehler gegeben, die auch auf die neueren Versionen zutreffen. Es gab aber keine sichtbare Weiterentwicklung.

Intern wurde natürlich bei Microsoft das BPA-Konzept weiter geführt und perfektioniert. Als Premier Support Kunde konnten Sie dazu ein „Risk Assessment Program“ ausführen, welches ihre Konfiguration überprüft.

BPA Link auf Exchange On-Premises

Um so überraschter war ich dann, dass in meinem Exchange 2016 Server ein “Best Practive Analyzer”-Link sichtbar wurde. Wenn Sie als Administrator sich per ECP mit ihrem Server verbinden und dann auf Tools gehen, finden Sie die Links

Der erste Link lädt eine kleine SETUP.EXE herunter, die dann die eigentlichen Installationsquellen nachlädt.

Exchange Server mit dem Office 365 Best Practices Analyzer
http://go.microsoft.com/?linkid=9839201

Die beiden weiteren Links verweisen auf die Details und Voraussetzungen

Die Voraussetzungen sollten aber für einen Administrator mit lokalem Exchange Server kein Problem sein. Sie können den BPA auch direkt auf dem Server ausführen, wenn dieser denn ins Internet kommt.

BPA ausführen und Ergebnisse

Danach werkelt der BPA im Hintergrund und versucht sich mit verschiedenen Servern zu verbinden. Eine entsprechende Berechtigung ist natürlich zur Ausführung erforderlich. Am Ende sehen Sie dann eine Zusammenfassung.

Ihr Ergebnis wird natürlich sicher mehr Prüfungen zeigen, denn dies ist nur meine kleine Testumgebung. Wenn Sie z.B. mehrere AD-Domains, mehrere Datenbanken und Server haben, werden einige Prüfüungen für jedes Ziel ausgeführt.

Liste der Checks

Ich habe mir meine Ergebnisse einmal exportiert. Hier die HTML-Ausgabedatei als Muster

Best Practice Analyzer Test Results

Ich habe die 98 Checks (Stand Sep 2017) einfach mal aufgelistet

  • Exchange Server: Check if the application pool 'MSExchangeOWAAppPool' runs with the recommended permissions
  • Exchange Server: Check if the Exchange Server is licensed and not in trial mode
  • Exchange Server: Check the checkpoint file path and the transaction log path for databases 'DB001'
  • Exchange Server: Check the checkpoint file path and the transaction log path for databases 'DB002'
  • Exchange Organization: Check if the incoming message size(CN=Msxfaq,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=msxfaq,DC=net) is set correctly
  • Exchange Organization: Check if the outgoing message size(CN=Msxfaq,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=msxfaq,DC=net) is set correctly
  • Exchange Organization: Check whether the incoming message(CN=Msxfaq,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=msxfaq,DC=net) size isn't set
  • Exchange Server: Verify if the Exchange signature is recognized
  • Office 365 admin credentials: Check whether you have Office 365 tenant admin credentials to evaluate your environment
  • Active Directory: Check whether topology service 'StaticDomainControllers' configuration is hard-coded
  • Active Directory: Check whether topology service 'StaticGlobalCatalogs' configuration is hard-coded
  • Active Directory: Check whether topology service 'StaticExcludedDomainControllers' configuration is hard-coded
  • Exchange Server: Check paging file size is more than physical memory size plus 10 MB
  • Computer Configuration: Check if permissions are appropriate for executing Get-ExchangeServer cmdlet
  • Exchange Server: Check if the temporary file path is configured correctly
  • Exchange Server: Check if the write DACL inherit setting is configured correctly
  • Exchange Server: Check if SSL is enabled on the IIS root directory
  • Exchange Server: Check if 'MaxUserPort' is missing or not the default value
  • Exchange Server: Check if default Global Address List is missing
  • Exchange Server: Check if Session limit is disabled
  • Exchange Server: Check whether global monitoring is overridden by customer
  • Exchange Server: Check whether server monitoring is overridden by customer
  • Exchange Server: Check if rejection threshold isn't configured on organization 'CN=Msxfaq,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=msxfaq,DC=net'
  • Exchange Server: Check whether network interface card is disabled for DHCP
  • Exchange Server: Check if Single-labeled DNS domain name is detected
  • Exchange Server: Office 365 hybrid configuration - Verify federation trust is working properly
  • Exchange Server: Check if Exchange Server 2013 version is RTM or greater (not a pre-release version)
  • Computer Configuration: Check if the Windows firewall service is enabled
  • Exchange Server: Check to see if Sender ID is configured on the server
  • Exchange Server: Check if crash upload logging is enabled
  • Exchange Server: Check if the application log size is configured correctly
  • Exchange Server: Check if junk store threshold is configured correctly
  • Active Directory: Check if the PDC emulator is excluded from the Active Directory Access (ADAccess) topology
  • Exchange Server: Check if Microsoft filter pack is installed
  • Exchange Server: Check if automatic system debugging is enabled
  • Exchange Server: Installation on a virtual machine
  • Exchange Server: Check to see whether the database cache size exceeds the maximum recommended value
  • Exchange Server: Check if MaxFieldLength parameter has been set
  • Exchange Server: Check if MaxRequestBytes parameter has been set
  • Exchange Organization: Check for incoming message and outgoing message size restriction on organization 'CN=Msxfaq,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=msxfaq,DC=net'
  • Active Directory: Check to verify if more than one global catalog servers are configured in your environment
  • Exchange Server: Active Directory: Check if topology service includes at least one global catalog server
  • Exchange Server: Check if RPC Client Access Service 'TCP/IP Port' value is valid
  • Exchange Server: Check if the host server is reachable
  • Exchange Server: Check if administrative file shares aren't disabled
  • Exchange Server: Check if 'CrashOnAuditFail' is enabled
  • Exchange Server: Check if debug tracing is enabled
  • Exchange Server: Check if 'MaxPageSize' value isn't set too high
  • Exchange Server: Check Group Auxiliary class schema verfication is successful
  • Exchange Server: WMI service start up account check
  • Exchange Server: Check the timestamp comparison between Exchange sever and Active Directory
  • Exchange Server:Check whether SMTP address is not defined in default recipient policy
  • Exchange Server: Check for possible 'double dot' SMTP address in recipient policy
  • Exchange Server: Check for possible 'double dot' SMTP address in recipient policy
  • Computer Configuration: Check if the physical disk alerts on critical errors
  • Exchange Server: Verify if the Exchange signature is recognized
  • Exchange Server: Check Exchange domain container
  • Exchange Server: Check if Hub Transport server role for Msxfaq-GT-Exchange is detected
  • Exchange Server: Check if 'MAPI32.DLL' file is present
  • Exchange Server: Check if 'MAPISTUB.DLL' file is present
  • Active Directory: Check whether topology service 'StaticConfigDomainController' configuration is hard-coded
  • Exchange Server: Check if paging file size is much larger than physical memory
  • Exchange Server: Check whether hyper-threading is disabled
  • Exchange Server: Check if the first network adapter is active
  • Exchange Server: Check whether Exchange server is running under VMware
  • Exchange Server: Check if DNS server is configured as a service
  • Exchange Server: Check if SQL server is configured as a service
  • Exchange Server: Check if the 'SystemPages' setting enabled on 64-bit computer
  • Computer Configuration: Check if the WMI service is running
  • Active Directory: Check if site name is hard-coded
  • Exchange Server: Check if Operating system GlobalFlag is enabled
  • Exchange Server: Configuration on a domain controller, but not a global catalog server
  • Exchange Server: Check if multiple default gateways are configured
  • Exchange Server: Check if Microsoft Forefront Security 2010 for Exchange Server reverse DNS lookup isn't enabled
  • Exchange Server: Check if DHCP client service is running
  • Exchange Server: Check if processor configuration is set correctly
  • Exchange Server: Check if ActiveSync tracing is enabled
  • Exchange Server: Check if RegTrace is enabled
  • Exchange Server: Check Power Management Setting on the Network Adapter
  • Exchange Server: Check if public folder content replication is paused
  • Exchange Server: Check present global address list numbers on organization 'Msxfaq'
  • Exchange Server: Check possible message routing loop on organization 'Msxfaq'
  • Exchange Server: Check if the primary SMTP address template is not the default
  • Exchange Server: Check Active Directory Address type on organization 'Msxfaq'
  • Exchange Server: Check whether the recipient policy references an unaccepted domain
  • Exchange Server: Check Active Directory Address type on organization 'Msxfaq'
  • Exchange Server: Check whether the recipient policy references an unaccepted domain
  • Exchange Server: Check present address lists numbers on organization 'Msxfaq'
  • Exchange Server: Check if DNS search order is blank for [00000010] Microsoft Hyper-V Network Adapter.
  • Exchange Server: Check if the Network interface driver file for 'netvsc' is less than two years old
  • Exchange Server: Check if the storage driver is less than two years old
  • Exchange Server: Check if the storage driver is less than two years old
  • Computer Configuration: Check if disk space on C:\ is acceptable
  • Exchange Server: Check if Single-labeled DNS domain name is detected
  • Exchange Server: Check if multiple Exchange domain containers are present
  • Exchange Server: Check if Client Access server role for Msxfaq-GT-Exchange is detected
  • Exchange Server: Check if the RPC 'RestrictRemoteClients' registry value is configured correctly
  • Exchange Server: Check if disk counters are enabled
  • Exchange Server: Check if Trend Micro ScanMail 'SharedResPool' folder is configured in the default path
  • Exchange Server: Configuration on a global catalog server
  • Exchange Server: Check if network interface teaming is enabled on this adaptor (Microsoft Hyper-V Network Adapter).

Die meisten Prüfungen werden ihnen schon von früheren ExBPA-Läufen bekannt sein. Aber das bedeutet ja nicht, dass ein Administrator das auch immer verinnerlicht hat.

Leider habe ich noch keine "Kommandozeilenversion" gefunden, mit der man z.B. über ein Monitoring-Tool den Check einfach einmal in der Woche automatisiert ausführen könnte.

Weitere Links