Office 365, sunduğu Powershell desteği ile yöneticilere önemli avantajlar sağlamaktadır. Yöneticiler Powershell ile hızlı aksiyonlar alabilmekle birlikte, bazı durumlarda Office 365 üzerinde yönetimsel işlemleri Powershell üzerinden gerçekleştirmek zorundadır. Burada kastedilen DirSync olan ortamlardır. Eğer Office 365 organizasyonu Active Directory ile eşitlenmiş ise, tüm yönetim Active Directory üzerine geçtiği için, Office 365 yönetim paneli üzerinden bir aksiyon alınamaz. Kullanıcı yaratma, kullanıcı özelliklerini düzenleme, posta kutusu özelliklerini modifiye etme vs. gibi özelliklerin yönetimi tamamen Active Directory üzerinden yapılabilir. Bahsedilen aksiyonlar ve özellikle posta kutularına dair olan düzenlemeler, eğer on-premise ortamda Office 365 geçişi Exchange Server üzerinden yapılmış ise, kullanıcı attributeleri düzenlenerek yapılabilir. Çünkü Exchange kurulumunda şemaya eklenen attributler, Active Directory tarafında kullanıcıların üzerindedir ve bunlar düzenlenerek, yapılan değişikliklerin Office 365 tarafında etkili olması sağlanabilir. Eğer ortamda daha önceden bir Exchange Server yok ise bu işlemleri ADSI Edit üzerinden gerçekleştimek zorundayız. Bir diğer seçenekte ortama Exchange Server şemasını deploy etmek olabilir. DirSync olan ortamlarda Office 365 yönetimi konusunu detaylı bir şekilde daha sonra paylaşacağım.
Powershell kullanmak DirSync var ise bazen zorunludur dedik. Örnek vermek gerekirse de posta kutuları üzerinde “SendAs” ve “Full Access” yetkilerinin verilmesi gibi aksiyonları DirSync olan ortamda Powershell ile gerçekleştirebiliriz. Takdir edersiniz ki bahsettiğim yetkilendirmeler firmalar tarafından oldukça fazla kullanılmaktadır ve önemlidir. Bu özellikler Office 365′ in eski sürümünde ara yüz olarak yoktu, o zaman da mecburen Powershell kullanıyorduk. Yeni sürümde bu aksiyonları artık Exchange Online yönetim paneli üzerinden alabilmekteyiz. Fakat unutmayalım DirSync var ise yine Powershell’ e muhtacız J
Office 365′ i komutlar ile yönetmek için 2 araç kullanabiliriz. Bildiğimiz “Windows Powershell” ve Office 365 yönetimi için geliştirilmiş olan “Microsoft Online Services Module for Windows Powershell” aracı. Burada önemli olan nokta her iki aracı da yönetim için kullanabiliriz fakat ilk önce bu araçlar üzerinden Office 365 organizasyonumuza bağlanmamız gerekir. Böylece organizasyonumuza dair yönetimsel komutları kullanabiliriz. Ardından Exchange Online için kullanabileceğimiz komutları çağırmamız gerekir ki Exchange organizasyonumuzu da yönetebilelim.
Resim-1
Office 365′ e bağlanmak için gireceğimiz komutlar;
$Live-Cred = Get-Credential
Connect-MsolService –Credential $cred
Şeklindedir. Exchange Online komutlarını nasıl çağırabileceğinizi de buradan inceleyebilirsiniz.
Tüm Office 365 yapısının Powershell’ den yönetilebilmesi için altyapıyı hazırladıktan sonra, kullanabileceğiniz önemli komutlara göz atmaya başlayalım.
Get-MsolUser parametresi çok basit görünse de aslında size önemli bir bilgi sunar. Var olan kullanıcıları listelemekle birlikte, bu kullanıcıların lisanslı olup olmadığını da inceleyebilirsiniz.
Resim-2
New-MsolUser parametresi ile yeni bir kullanıcı yaratmanız mümkün.
Resim-3
Gördüğünüz gibi çeşitli parametreler ile yaratacağımız kullanıcıya dair ad, soyad, görüntü adı, UPN, Password ilkesi vs. gibi özellikleri belirleyebiliyoruz. Aynı şekilde;
New-MsolGroup -DisplayName “name” –Description “açıklama” komutu ile hemen bir grup da oluşturabiliriz.
Var olan bir kullanıcıyı silmek için;
Remove-MsolUser –UserPrincipalName “upn”
Resim-4
Tüm kullanıcılar şifrelerini belli bir zaman sonra var olan Password Policy den etkilenerek değiştirmesin istiyorsak; Get-MsolUser | Set-MsolUser –PasswordNeverExpires $True
Belli kullanıcılar hala password policy den etkilensin istiyorsak;
Set-MsolUser –UserPrincipalName “upn” –PasswordNeverExpires $false
Bir kullanıcının şifresini değiştirmek istiyorsak;
Set-MsolUserPassword –UserPrincipalName “upn” –NewPassword “password”
Resim-5
Sisteme yeni bir domain eklemek istiyorsak;
New-MsolDomain –Name “domain name”
Resim-6
Eklediğimiz domainlerden hangisinin varsayılan domain olacağını belirlemek istiyorsak;
Set-MsolDomain –Name “domain name” -IsDefault
Resim-7
Gibi komutları ve daha fazlasını kullanabilmekteyiz.
Gelelim Exchange Online tarafında alabileceğimiz önemli aksiyonlara. Microsoft Online Service kullanıcılarına olduğu gibi “Get” parametresi ile posta kutularının dökümünü alabilmekteyiz.
Resim-8
İstersek bu mailboxları belli özelliklerine göre görüntüleyebiliriz.
Get-Mailbox “user mailbox” |fl *primarysmtpaddress*
Resim-9
Yazının başında bahsettiğimiz ve oldukça fazla kullanılan “Send As ve Full Access” yetkilerinin verilmesi;
Add-RecipientPermission -Identity<identity> -AccessRights SendAs -Trustee <user>
Resim-10
Kullanıcı üzerindeki SendAs yetkisinin görüntülenmesi;
Get-RecipientPermission <identity>
Resim-11
“Full Access” yetkisi;
Add-MailboxPermission -Identity “mailbox@domain” -AccessRights FullAccess -user “user@domain”
Resim-12
Kullanıcının adres defterinden gizlenmesi;
Set-Mailbox “user mailbox” –HiddenFromAddressListsEnabled $true
Resim-13
Resim-14
Shared Mailbox oluşturulması ve kotalarının belirlenmesi;
New-Mailbox -Name “mailbox name” –Alias “alias” –Shared
Set-Mailbox “mailbox name” -ProhibitSendReceiveQuota 5GB -ProhibitSendQuota 4.75GB -IssueWarningQuota 4.5GB
Resim-15
Önemli Not: Shared mailbox oluşturduğumuzda posta kutusu boyutunu 5 GB ile sınırlamazsak, oluşturduğumuz posta kutusuna bir Exchange Online lisansı atamak zorundayız. Aksi halde posta kutusu 1 ay sonra disable duruma gelecektir. Boyutu 5 GB ile sınırladığımız zaman lisans atamamıza gerek yoktur.
Var olan bir posta kutusuna “Shared” hale çevirme;
Set-Mailbox “mailbox name” -Type shared
Set-Mailbox “mailbox name” -ProhibitSendReceiveQuota 5GB -ProhibitSendQuota 4.75GB -IssueWarningQuota 4.5GB
Resim-16
Eğer IMAP mail sunucudan Office 365 tarafına bir geçiş yapılacaksa, sunucunun geçiş için uygun olup olmadığını da Poweshell üzerinden test edebiliriz.
Test-MigrationServerAvailability –Imap –RemoteServer “remote server fqdn” –Port “port number”
Resim-17
Son olarak bahsetmek istediğim konu Office 365′ in yeni sürümü ile birlikte kullanılabilir olan ve eski sürümde kullanılabilir olmayan mail trafiğine ve raporlamalarına dair komutlar.
Bunlar;
Get-GroupActivityReport
Get-MessageTrace
Get-MailboxActivityReport
Get-MailboxActivityReport
Get-RecipientStatisticsReport
Get-MailDetailReport
Get-MailTrafficReport
Get-MailTrafficSummaryReport
Get-MailTrafficTopReport
Belirtilen komutla ile dağıtım gruplarına, mail trafiğine, aktif-pasif mailboxlara, gönderilen-alınan maillerin detaylarına kadar çeşitli çıktılar alabilirsiniz. Makalenin genelinde sık kullanılan komutlardan ve işlevlerinden bahsettik. Office 365 Exchange Online hizmeti ile kullanabileceğiniz komutların tümüne buradan ulaşabilirsiniz.
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
Gerçekten çok iyi yazı. Tebrikler Olcay.
Eline sağlık. Çok güzel anlatmışsın.