Exchange Online – PowerShell Üzerinden User Mailbox İşlemleri

Office 365 Exchange Online üzerinde WEB GUI yani grafiksel ara yüz ile ulaşamayacağımız birçok bilgi mevcuttur. Peki, bu bilgilere, içeriğe, raporlamaya nasıl ulaşabiliriz? PowerShell ile bu işlemleri yapmamız mümkündür. Exchange Online PowerShell, On Prem Exchange PowerShell kadar temel bir ihtiyaç haline gelmektedir. Aslında PowerShell size Exchange Online üzerinde her işlemi yapmanıza yardımcı bir seçenektir. Sınırsız bir güce sahip olduğu gibi, bilinçsiz kullanımlarda da ciddi sorunlara yol açabilir. Bu yazının içeriğinde sizlere Exchange Online ortamında ki bilgilere nasıl ulaşacağımızı PowerShel Cmd’letsler ile örnekleyerek paylaşacağım.

Windows PowerShell ile Office 365-Exchange Online kısmına bağlanıyoruz.

Offıce 365 Exchange Powershell Baglantı Icın:

Windows 2008r2, Windows 7 SP1, Windows 8, Windows 8.1, Windows 2012 ve Windows 2012r2 ile birlikte gelen, Windows PowerShell’ i Run As Administrator olarak açıyoruz. Aşağıda ki komutları sırasıyla girip, bağlantıyı sağlıyoruz.

1-      $Cred = Get-Credential (Office 365 Username & Password bilgisini girmemiz gerekir).

2-      $s = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell -Credential $cred -Authentication Basic –AllowRedirection

3-      Import-PSSession $s

https://technet.microsoft.com/en-us/library/jj200677%28v=exchg.150%29.aspx

Mailbox Tiplerinin Görüntülenmesi:

En basit komutumuz Get-Mailbox, bu komut ile bütün Exchange Online userlarını, Aliasları, ServerNameleri ve kota bilgilerini görebiliriz.

Sistem Discovery Search Mailboxlarını değilde, sadece user mailboxları görmek istersek, bu komutla bir filtre koymuş oluyoruz.

Get-Mailbox -ResultSize Unlimited | Where {$_.name -notlike ‘*DiscoverySearchMailbox*’}

Exchange Online yapınızda ki User, Group vb. mailboxların detaylarını görebilmek için,

Get-User | Group RecipientTypeDetails komutunu kullanabilirsiniz. Komut sayesinde mailboxların tipini, adedini, isimlerini görebilirsiniz.

Sadece Usermailbox’ları görmek istersek, Get-Mailbox -Filter ‘(RecipientTypeDetails -eq “UserMailbox”)’ | Select RecipientTypeDetails,Name,Alias komutunu kullanabiliriz.

Exchange Online yapınızda ki Room Mailboxları görebilmek için, Get-MailBox -Filter ‘(RecipientTypeDetails -eq “RoomMailBox”)’ | Select Name,Alias komutunu kullanabiliriz.

Exchange Online yapımızda ki Equipment Mailbox’ ları görebilmek için, Get-MailBox -Filter ‘(RecipientTypeDetails -eq “EquipmentMailbox”)’ | Select Name,Alias

Equipment Mailbox Nedir?

Herhangi bir kullanıcıya ait olmayan özel cihazlar için kullanabileceğimiz bir Mailbox türüdür. Laptop, Projector vb. cihazlar için kullanılabilir.

Exchange Online Shared Mailboxları görebilmemiz için,

Get-MailBox -Filter ‘(RecipientTypeDetails -eq “SharedMailbox”)’ | Select RecipientTypeDetails,Name,Alias

Email Adres Bilgilerinin Görüntülenmesi:

Exchange Online mailboxlarının SMTP adreslerinin görüntülenmesi için,

Get-Mailbox -ResultSize Unlimited |FL EmailAddresses

Get-Mailbox -ResultSize Unlimited | Where {$_.name -Notlike ‘*DiscoverySearchMailbox*’} |FL EmailAddresses

Alias, SIP gibi bilgilere erişmek içinse aşağıda ki CMD’letsleri kullanabilirsiniz.

Get-Mailbox | FL name, @{name=”count”;expression={[array]($_.EmailAddresses).Count}},EmailAddresses

Tek user için,

Get-Mailbox <Identity>| Select -Expand EmailAddresses Alias 

Mailbox İstatistiklerini Görüntüleme:

Ufuk user mailbox’ ı için bir istatistik çekelim.

Get-MailboxStatistics ufuk | FL DisplayName,StorageLimitStatus,TotalItemSize,TotalDeletedItemSize,ItemCount,DeletedItemCount

User Mailbox’ ın kota bilgilerini görüntülemek için,         

Get-Mailbox Ufuk | FL *Quota

Exchange Online üzerinde ki bütün Mailbox’ların kota bilgilerini görebilmek için,

Get-Mailbox -ResultSize Unlimited | FL DisplayName,Alias,*Quota

Exchange Online User Mailboxlarının son logon zamanlarını görebilmek için,

Get-mailbox -Resultsize unlimited| Get-MailboxStatistics | Select Displayname,Lastlogontime | Sort-Object LastLogonTime

Group Bilgilerini Görüntülemek:

Bütün Distribution Group bilgilerini görebilmek için,

Get-DistributionGroup | FL Name,DisplayName,GroupType,PrimarySmtpAddress

Exchange Online Mail Contactları görebilmek için,

Get-MailContact 

Export User Mailbox’s information:

Get-Mailbox -Filter ‘(RecipientTypeDetails -eq “UserMailbox”)’ | Select RecipientTypeDetails,Name,Alias | Export-CSV c:\exonline.csv

Exchange Online Export User Mailbox  Mailboxes Content Folders, Items:

Bütün Exchange Online User Mailbox’ların itemleri ve boyutlarını görüntülemek için,

Get-Mailbox | Select-Object alias | ForEach-Object {Get-MailboxFolderStatistics -Identity $_.alias | Select Identity,ItemsInFolder,FolderSize} | Export-CSV c:\exonlineREPORT.csv –NoTypeInformation

Son Logon Olan Exchange Online User Mailbox’ ların Raporunun Alınması:

Get-Mailbox -ResultSize unlimited | Get-MailboxStatistics | Select  DisplayName,lastlogontime,lastlogofftime | Sort-Object DisplayName -descending | Export-CSV c:\LASTLOGON.csv –NoTypeInformation

Faydalı olması dileğiyle.

Exit mobile version