Check Exchange Online Protection IP's with PowerShell (ExOIPChecker)

Andres Bohren
Hallo zusammen, Die Dokumentation der Office 365 URL's und IP's existiert schon sehr lange. Anfänglich konnte man sich ein XML herunterladen. Seit knapp zwei Jahren gibt es einen Webservice, welches ein JSON zurückliefert. Office 365 URLs and IP address ranges https://docs.microsoft.com/en-us/office365/enterprise/urls-and-ip-address-ranges Office 365 IP Address and URL web service https://docs.microsoft.com/en-us/office365/enterprise/office-365-ip-web-service Falls auf einer Firewall die IP's für Exchange Online Protection eingeschränkt werden, so sollte man zumindest mitbekommen, wenn sich die IP's ändern, damit man die Firewall Regeln angepasst werden können.

Check for pending reboot with PowerShell

Andres Bohren
Hallo zusammen, Nachdem ich mich beim Exchange Update wieder mal durch den Wizard geklickt hatte und dann darauf hingewiesen wurde, dass noch ein Pending Reboot offen ist. Habe ich gedacht, das könnte man auch rasch vorher checken. Die folgende Tabelle habe ich im Internet gefunden. Daraus habe ich dann rasch ein PowerShell Script gebastelt. How to Check for a Pending Reboot in the Registry (Windows) https://adamtheautomator.com/pending-reboot-registry-windows/ KEY VALUE CONDITION HKLM:\SOFTWARE\Microsoft\Updates UpdateExeVolatile Value is anything other than 0 HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager PendingFileRenameOperations value exists HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager PendingFileRenameOperations2 value exists HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired NA key exists HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Services\Pending NA Any GUID subkeys exist HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\PostRebootReporting NA key exists HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce DVDRebootSignal value exists HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending NA key exists HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootInProgress NA key exists HKLM:\Software\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackagesPending NA key exists HKLM:\SOFTWARE\Microsoft\ServerManager\CurrentRebootAttempts NA key exists HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon JoinDomain value exists HKLM:\SYSTEM\CurrentControlSet\Services\Netlogon AvoidSpnSet value exists HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName ComputerName Value ComputerName in HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName is different Daraus habe ich dann folgende PowerShell Script gemacht:

Disable Egnyte Cloud Storage Provider in Microsoft Teams

Andres Bohren
Hallo zusammen, Wie im Message Center angekündigt, ist der Storage Provider "Egnyte" automatisch aktiviert. So sieht das dann im Microsoft Teams Admin Center aus. Das kann man übers GUI deaktivieren oder natürlich auch über PowerShell. Get-CsTeamsClientConfiguration | fl allow* Set-CsTeamsClientConfiguration -AllowEgnyte $false Danach ist es deaktiviert Grüsse Andres Bohren

Endpoint analytics (preview)

Andres Bohren
Hallo zusammen, Vor ein paar Tagen wurde die Public Preview vom Endpoint Analytics angekündigt. Ich habe mir das mal angeschaut und ein paar Screenshots davon gemacht. What is Endpoint analytics (preview)? https://docs.microsoft.com/de-de/mem/analytics/overview https://aka.ms/endpointanalytics Grüsse Andres Bohren

Powershell store password with encryption key

Andres Bohren
Hallo zusammen, Sicher steht der eine oder andere auch vor der Herausforderung, Credentials in Scripten zu verwenden. Dabei sollten die ja nicht gerade im Cleartext in den Scripten sichtbar sein. Mit folgendem Vorgehen, werden die Passwörter mit einem AES Key Encrypted und gespeichert. AES Encryption Key anlegen $Key = New-Object Byte[] 32 [Security.Cryptography.RNGCryptoServiceProvider]::Create().GetBytes($Key) $Key | out-file E:\Scripting\aes.key Passwort mit dem Encryption Key speichern (get-credential).Password | ConvertFrom-SecureString -key (get-content E:\Scripting\aes.key) | set-content "

New Exchange Online Admin Center

Andres Bohren
Hallo zusammen, Im Exchange Admin Center wird der Hinweis auf ein neues Exchange Admin Center angezeigt. Das habe ich mal ausprobiert. Das neue Exchange Online Admin Center kann man direkt mit folgender URL aufrufen https://admin.exchange.microsoft.com/ Die Navitation ist viel mehr ans Design und die Funktionen wie im Microsoft 365 Admin Center angelehnt. Gibt auch ein paar Interessante Funktionen Beispielsweise sind die Einstellungen der Protokolle rasch und einfach zu erreichen. Beim Message Tracking ist leider noch nichts zu sehen

M365 Offboarding: Cannot find a recipient that has mailbox GUID '<GUID>'

Andres Bohren
Hallo zusammen, Beim Migrieren einer Mailbox von Exchange Online nach On-Prem habe ich bei einer Mailbox folgende Fehlermeldung erhalten: Cannot find a recipient that has mailbox GUID '<GUID>' Das ist eine Mailbox, welche mit Enable-RemoteMailbox direkt in der Exchange Online erstellt worden ist. Die Mailbox GUID von Exchange Online wird dabei nicht wieder in das AD Objekt im On-Prem Active Directory eingetragen. Dazu gibt es auch einen Support Artikel von Microsoft:

Active Directory Attributes for diffrent Mailbox Types

Andres Bohren
Hallo zusammen, Für einen Analyse der ExchangeAttribute habe ich einige Mailboxen OnPrem angelegt. Ich habe die AD Objekte im Active Directory Users und Computers angelegt und dann mit dem Enable-Mailbox eine Mailbox angelegt Von jedem Typ eine Mailbox: User Mailbox Room Mailbox Equipment Mailbox Shared Mailbox Das selbe habe ich mit weiteren Accounts gemacht, jedoch mit dem Befehl Enable-RemoteMailbox. Damit werden nur ein paar Attribute im OnPrem AD erstellt. Nach dem AAD Sync werden durch diese Attribute die Mailboxen direkt in Exchange Online angelegt.

Get SamAccountName from Azure Active Directory by PowerShell

Andres Bohren
Hallo zusammen, Für ein Projekt musste ich aus dem Azure Active Directory den SamAccountName auslesen. Das Problem ist nur, dass dieses Property nicht so einfach über die PowerShell Module abgefragt werden kann. Hier das Beispiel vom MSOnline Modul Get-MsolUser -UserPrincipalName a.bohren@icewolf.ch | fl Auch beim PowerShell Modul AzureAD gibt es dieses Property nicht. Get-AzureADUser -SearchString "a.bohren@icewolf.ch" | fl Man kann dies jedoch über den Graph Explorer, sprich über das Graph API abfragen.

Exchange 2016 Cumulative Update 17

Andres Bohren
Hallo zusammen, Die quarterly Exchange Updates für Exchange 2016 und Exchange 2019 wurden veröffentlicht. Benötigt .NET Framework 4.8 Braucht kein /PrepareAD /PrepareDomain sofern man von CU13 oder höher upgraded Enthält ein paar Zeitzonen Updates - daylight saving time (DST) Ändert die OWA Blocked File Exstensions Restore-RecoverableItems erlaubt nun pipelining Released: June 2020 Quarterly Exchange Updates https://techcommunity.microsoft.com/t5/exchange-team-blog/released-june-2020-quarterly-exchange-updates/ba-p/1458993 Cumulative Update 17 for Exchange Server 2016 https://support.microsoft.com/de-ch/help/4556414/cumulative-update-17-for-exchange-server-2016 Cumulative Update CU17 for Exchange Server 2016 (KB4556414)