Powershell ile Exchange Management Shell ‘e bağlanmak

Başlamadan Önce...

Yerel bilgisayarınızda yüklü Exchange yönetim araçlarına sahip değilseniz, bir Exchange sunucusuna uzak bir PowerShell oturumu oluşturmak için Windows PowerShell’i kullanabilirsiniz. Kimlik bilgilerinizi girdiğiniz, gerekli bağlantı ayarlarını sağladığınız ve daha sonra bunları kullanabilmeniz için Exchange cmdlet’lerini yerel Windows PowerShell oturumunuza aktaracağınız üç adımlık basit bir işlemdir. 

Bu işlem için Windows’ un aşağıdaki versiyonlarını kullanabilirsiniz.

  • Windows 10

  • Windows 8.1*

  • Windows Server 2016

  • Windows Server 2012 R2*

  • Windows Server 2012**

* Microsoft .NET Framework 4.5.2 veya sonraki bir sürümünü yüklemeniz gerekir
** .NET Framework 4.5.2 veya sonraki bir sürümünü yükledikten sonra, Windows Management Framework 4.0’ı da yüklemeniz gerekir.
 
Scriptleri çalıştırabilmek için Windows Powershell ‘i konfigüre etmelisiniz çünkü Powershell ‘in default ayarlarında alacağınız hata aşağıdaki gibidir.
Files cannot be loaded because running scripts is disabled on this system. Provide a valid certificate with which to sign the files.

Windows PowerShell’in imzalı komut dosyalarını çalıştırmasını sağlamak için, yükseltilmiş bir Windows PowerShell penceresinde aşağıdaki komutu çalıştırın (Yönetici olarak çalıştır’ı seçerek açtığınız bir Windows PowerShell penceresi):

Set-ExecutionPolicy RemoteSigned

Exchange Hizmetine Bağlanma

  • Local makinenizde açtığınız Powershell üzerinde aşağıdaki komutu çalıştırın.
$UserCredential = Get-Credential

Kullanıcı adı ve şifre soran pencereye UPN (user principal name) formatında kullanıcı adınızı ve şifrenizi yazınız. Örneğin: contoso\admin ya da admin@contoso.com gibi…

  • <ServerFQDN> kısmını Exchange sunucunuzun fully qualified domain name ‘i ile değiştirmeyi unutmayınız. Örneğin: mailbox1.contoso.com gibi…
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri http://<ServerFQDN>/PowerShell/ -Authentication Kerberos -Credential $UserCredential

Not: -ConnectionUri değerinin browser üzerinden eriştiğiniz gibi https değil, http olduğuna dikkat edin.

  • Aşağıdaki komutu da çalıştırdıktan sonra oluşturmuş olduğumuz oturumu local Powershell ‘imize import ediyoruz
Import-PSSession $Session
  • Uzak PowerShell oturumunu kesmek için aşağıdaki komutu çalıştırın
Remove-PSSession $Session

Oturumun bağlantısını kesmeden Windows PowerShell penceresini kapatırsanız, bağlantı yaptığınız tüm uzak PowerShell oturumları policy’ler ile belirlediğiniz oturum süresinin sonuna kadar açık kalacağından, kullanılabilir durumda bekleyecektir. Bu da kaynak tüketimine yol açacaktır. Local bilgisayarınız ile Exchange sunucunuz arasındaki TCP 80 iletişimi açık olması gerekmektedir ve eğer kuruluşunuzun kısıtlayıcı bir ağ erişim politikasına sahip olup olmadığını düşünürsek muhtemelen açıktır.

Site Footer