Microsoft 365

Exchange Online PowerShell V2 (EXO V2)

Microsoft, Exchange Online PowerShell V1 için 31 Ağustos 2022’de bitirme kararı aldı ve EXO V1 yerine Exchange Online PowerShell V2 kullanımda olacak.

Exchange Online PowerShell V2 modülü (EXO V2) modern kimlik doğrulaması kullanıyor (Basic Authentication Kullanamıyorsunuz) ve Microsoft 365’teki Exchange ile ilgili tüm PowerShell ortamlarına bağlanmak için çok faktörlü kimlik doğrulaması (MFA) ile çalışmaktadır

Bu yeni modülün bir diğer büyük yararı, tamamen Modern Kimlik Doğrulama tabanlı olmasıdır. Bu iyi bir şeydir, çünkü bildiğiniz gibi, Exchange Online’da Temel Kimlik Doğrulaması ortadan kalkıyor. Bunun Nisan 2020’de gerçekleşmesi gerekiyordu, ancak Microsoft, COVID-19 salgınıyla mücadele eden müşterilerin önceliklerindeki birçok değişiklik nedeniyle bu değişikliği ertelemişti.

Neden Basic Authentication’dan, Modern Authentication’a geçelim?

İlk olarak, Basic Authentication, gerçek Çoklu Oturum Açma için destek almadığınız anlamına gelmektedir. Ayrıca, günümüzde birçok kuruluşun hesapları korumak için Multi-Factor Authentication’ı kullanması gerekmektedir ve Basic Authentication bunu desteklememektedir. Basic Authentication, Modern Authentication tarafından kullanılan daha karmaşık OAuth tabanlı kimlik doğrulama mekanizmaları yerine basit HTTP oturum açma yöntemlerini de kullandığından, olası bir saldırganın Exchange Web Hizmetleri gibi bir hizmeti kullanıcı veya yönetici parolalarını tahmin etmeye çalışmak için bir komut dosyası veya araçla hedeflemesi çok daha kolaydır.

Basitçe belirtmek gerekirse, Modern Authentication’a geçiş daha güvenli bir bağlantı sağlayacaktır.

EXO V2 modülünde TBasic Authentication kullanamazsınız; ancak, eski cmdlet’lere erişmek için, istemci makinede WinRM BasicAuth’un etkinleştirilmesini gerektiren bir Uzak PowerShell oturumu oluşturulmalıdır. İstemci makinede WinRM Temel Kimlik Doğrulaması devre dışı bırakılırsa, yeni V2 cmdlet’leri çalışmaya devam eder (ancak eski RPS cmdlet’leri çalışmaz). Bu nedenle, varsayılan WinRM ayarlarınız değiştirilmişse, yine de Temel kimlik doğrulama ayarını yapılandırmanız gerekebilir (varsayılan olarak etkindir).

EXO V2 Modül Kurulumu

EXO V2 modülü hakkında bazı önemli maddeler;

  • PowerShell galerisinden indirebilirsiniz
  • EXO V2 Modülü Windows PowerShell ve Windows PowerShell ISE’den çalıştırabilirsiniz
  • Connect-ExchangeOnline cmdlet’i hem MFA’yı hem de MFA olmayan hesapları desteklemektedir
  • EXO V2 cmdlet’leri REST API tabanlıdır ve çok daha hızlıdır.
  • EXO V2 Modern Kimlik Doğrulaması kullanmaktadır.
  • Eski cmdlet’ler geriye dönük uyumludur.

Exchange Online PowerShell V2 Modülü İndirme

Microsoft Exchange Online PowerShell v2 modülünü (EXO V2 modülü) PowerShell galerisinden indirebilirsiniz:
https://www.powershellgallery.com/packages/ExchangeOnlineManagement/.

EXO V2 modülü için desteklenen işletim sistemleri

EXO V2 modülünün en son sürümü WindowsLinux ve Apple macOS’ta PowerShell 7’de resmi olarak desteklenmektedir.

Özellikle, EXO V2 modülünün 2.0.4 veya sonraki sürümleri PowerShell 7.0.3 veya sonraki sürümlerinde destekleniyor.

EXO V2 için PowerShell 7 sürümü yüklü olması gerekmektedir. PowerShell sürümünü nasıl kontrol ederiz?

Get-Host

PowerShell ile varsayılan olarak dosya yüklemesi yapamamaktayız, yüklemek istediğimiz modullerin güvenilir bir yayımcı tarafından imzalanmasını zorunlu tutmak için PowerShell’i run as administrator olarak açıyoruz ve Set-ExecutionPolicy RemoteSigned komutunu çalıştırmamız yeterli olacaktır.

WinRM’nin temel kimlik doğrulamasına izin vermemiz gerekmektedir (Varsayılan olarak etkin gelmekte)

winrm quickconfig

Şimdi ise WinRM temel kimlik doğrulaması aktif mi diye kontrol etmemiz gerekiyor. Çıkan sonuçta true değerini görmüyorsanız eğer, aşağıdaki komut seti ile değeri true olarak değiştirmemiz gerekiyor.

Kontrol için;

winrm winrm/config/client/auth

True olarak değiştirmek için;

winrm set winrm/config/client/auth @{Basic="true"}

Öncelikle PowerShell Get yüklemesi yapmamız gerekmekte, ilgili kurulumu aşağıdaki linkteki gibi kurabilirsiniz.

Installing PowerShellGet – PowerShell | Microsoft Docs

PowerShell Galerisi’ne erişmek için Aktarım Katmanı Güvenliği (TLS) 1,2 veya üstünü kullanmanız gerekir. Varsayılan olarak, PowerShell TLS 1.2 kullanacak şekilde yapılandırılmamıştır. PowerShell oturumunuzda TLS 1.2’yi etkinleştirmek için aşağıdaki komutu kullanın.

[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12

Windows PowerShell 5.1, NuGet sağlayıcısını içermeyen PowerShellGet sürüm 1.0.0.1 ile birlikte gelir. PowerShell Galerisi ile çalışırken PowerShellGet tarafından sağlayıcı gereklidir.

  • Diğer modülleri yüklemeden önce NuGet’i yüklemek için kullanın Install-PackageProviderNuGet sağlayıcısını yüklemek için aşağıdaki komutu çalıştırın.
Install-PackageProvider -Name NuGet -Force
  • Sağlayıcıyı yükledikten sonra PowerShell Galerisi ile PowerShellGet cmdlet’lerinden herhangi birini kullanabilmeniz gerekir.
Install-Module PowerShellGet -AllowClobber -Force


PowerShellGet’i yükledikten sonra

PowerShellGet’in yeni sürümünü yükledikten sonra yeni bir PowerShell oturumu açmanız gerekir. PowerShell, PowerShellGet cmdlet’ini kullandığınızda modülün en yeni sürümünü otomatik olarak yüklemektedir..

PowerShell Galerisi’ni güvenilen bir depo olarak kaydetmeniz önerilmektedir. Aşağıdaki komutu kullanın:

Set-PSRepository -Name PSGallery -InstallationPolicy Trusted

EXO V2 Modülü Deploy Etme

Tüm işlemleri yaptıktan sonra, artık PowerShell Galerisini kullanarak EXO V2 modülünü yükleyebiliriz.

Install-Module -Name ExchangeOnlineManagement

Exchange Online PowerShell V2 ile Bağlantı Sağlama

İşlemlere başlamadan önce M365 panelinizden MFA etkinleştirmenizi öneriyorum.

EXO V2 ile beraber yeni komutlar geldi ama eski komutlarıda aktif olarak kullanabilmekteyiz, bağlantı için komutu çalıştırdığımda bana yeni ve eski komutları gösteren bir tablo gösterdi.

Connect-ExchangeOnline -UserPrincipalName [email protected]

Bu işlemden sonra EXO V2 ile bağlantı sağlamış olduk.

EXO V2 Yeni Komutlar

New cmdlet in the EXO V2 moduleOlder related cmdlet
Get-EXOMailboxGet-Mailbox
Get-EXORecipientGet-Recipient
Get-EXOCASMailboxGet-CASMailbox
Get-EXOMailboxPermissionGet-MailboxPermission
Get-EXORecipientPermissionGet-RecipientPermission
Get-EXOMailboxStatisticsGet-MailboxStatistics
Get-EXOMailboxFolderStatisticsGet-MailboxFolderStatistics
Get-EXOMobileDeviceStatisticsGet-MobileDeviceStatistics
Connect-ExchangeOnlineConnect-EXOPSSession
or
New-PSSession
Connect-IPPSSessionConnect-IPPSSession
Disconnect-ExchangeOnlineRemove-PSSession

Cengiz YILMAZ

5 Yıldır IT Sektörü içerisindeyim, Microsoft ürünleri ile ilgilenmekteyim. Cengiz YILMAZ | MCT |

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu