E-Kitap Exchange Server 2013 İçerik - TechNet Gallery

Transkript

E-Kitap Exchange Server 2013 İçerik - TechNet Gallery
E-Kitap
Exchange Server 2013
İçerik
Önsöz ............................................................................................................................................................ 2
Giriş ............................................................................................................................................................... 2
Exchange Server 2013, Powershell Remoting ve yönetimsel işlemler ....................................................... 3
Exchange Server 2013, Mailbox yönetimi ................................................................................................... 5
Exchange Server 2013, Resource Mailbox Yönetimi ................................................................................... 8
Exchange Server 2013, Bulk Recipient Management................................................................................ 13
Exchange Server 2013, Recipient Filter kullanımı ..................................................................................... 16
Exchange Server 2013, Recipient Moderation .......................................................................................... 19
Exchange Server 2013, Email adresi ekleme/silme operasyonları ve “bulk” işlemler ............................. 23
Exchange Server 2013, Distribution Group’larında email gönderimi yönetimi ....................................... 26
Exchange Server 2013, Ofis dışı ayarların ve otomatik cevapların yönetimi ........................................... 28
Exchange Server 2013, Inbox Rule modifikasyonları ................................................................................ 30
Exchange Server 2013, Mailbox Folder(Calendar) izinleri ........................................................................ 33
Exchange Server 2013, Mailbox Folder izinleri.......................................................................................... 38
Exchange Server 2013, Mailbox boyutlarının raporlanması ..................................................................... 42
Exchange Server 2013, “Move Request” ’ler ve “Mailbox Move” taleplerinin yönetimi ........................ 44
Exchange Server 2013, Mesajların silinmesi ve “bulk” işlemler ............................................................... 47
Exchange Server 2013, Mailbox ’ların Import Export edilmesi işlemleri.................................................. 50
EK ................................................................................................................................................................ 53
Test Ortamı ............................................................................................................................................. 53
Sanal sunucular ve sürümleri .................................................................................................................. 53
Önsöz
Değerli bilişim teknolojileri çalışanlarına ve bilişim gönüllülerine…
Kurumsal Mesajlaşma ürünlerinden Exchange Server 2013 ‘ün, Exchange Management Shell ile
yönetimini anlattığım e-kitapta, ağırlıklı olarak “ Powershell ile Recipient Management Nasıl Yapılır?”
konusundan bahsettim.
Bu e-kitap, daha önce Microsoft Exchange ile ve/veya powershell ile uğraşmamış olanlar için öğretici
olmayabilir.
Faydalı olması temennisiyle.
Barış AYDOĞMUŞOĞLU, Aralık 2013
Giriş
Microsoft’un, XENIX-tabanlı mesajlaşma sisteminden Exchange server yapısına geçme planı Nisan,1993
’te başladı . 1996 sonlarına doğru son XENIX sisteminin Microsoft’un omurgasından çıkarılması ile bu
süreç tamamlandı. Geçmişten günümüze, Exchange Server ürünleri aşağıdaki gibidir.
Exchange Server 4.0
Exchange Server 5.0
Exchange Server 5.5
Exchange 2000 Server
Exchange Server 2003
Exchange Server 2007
Exchange Server 2010
E xchange Server 2013
Kurumsal Mesajlaşma Ürünü olarak Microsoft Exchange Server 2013;
-
Kurumsal seviyede ve kalitede email kullanımı
Kurumsal seviyede ve kalitede takvim kullanımı
Kurumsal seviyede ve kalitede Mobile Device desteği (ActiveSync)
Kurumsal ihtiyaçları kayşılacak ölçüde ve yenilikte Yüksek Erişilebilirlik sağlayan mimarisi
Kurumsal ihtiyaçları kayşılacak ölçüde ve yenilikte Felaketten Kurtama mimarisi
Kurumsal ihtiyaçları kayşılacak ölçüde güvenilirlik sağlamasının yananda karmaşıklığının
azaltılmış olası
Kurumsal ihtiyaçları kayşılacak ölçüde hassas verilerin ve gizli bilgilerin korunmasına sağladığı
destek
hizmetlerini sağlar.
Exchange Server 2013, Powershell Remoting ve yönetimsel işlemler
Exchange Server 2013 organizasyonun exchange management shell ile yönetiminden bahsetmek
istiyorum. Microsoft, Exchange Server 2007 ile mimarideki radikal değişikliklerle tanıştırmıştı bizi.Bu
değişimler ve powershell yapısı, Exchange Server yöneticilerine bir komut satırı ile tüm organizasyonu
yönetme imkanı tanıyordu. Zaman içinde Exchange Server 2013’e(150 civarında yeni cmdlet ile) kadar
geldik.Tabii ki değişimler ve gelişimler de devam etti ve powershell 3.0 ile yönetimsel işlerimize devam
ediyoruz.
Exchange Server 2013 organizasyonunda yönetimse işler için kullanılan Exchange Management Console ,
yerini Exchange Admin Center’a bıraktı. Bununla birlikte halen Exchange Management Shell’e
sahibiz(hatta yeni gelen 140+ yeni cmdlet ile ).
Yazının devamında;
Exchange Management Shell için EMS kısaltmasını kullanacağım
Exchange Admin Center için EAC kısaltmasını kullanacağım.
Windows Powershell için WPS kısaltmasını kullanacağım.
Remote Desktop Protocol için RDP kısaltmasını kullanacağım.
Exchange organizasyonu yönetimi için; bir client’a EMS’yi yükleyebilirsiniz(Exchange Management Tool
ile yüklenmekte), doğrudan exchange server’larınızdan birine RDP ile bağlanabilirsiniz yada PowerShell
Remoting’den yararlanabilirsiniz.
PowerShell remoting ile Yönetimi incelemek istiyorum.
Domain Controller(bu yazım için test client olarak düşünülebilir) üzerinde windows powershell
uygulaması ile PowerShell Remoting’i kullandım.
Üstte görüldüğü üzere 00E2 isimli exchange server’da hizmet veren IIS altındaki Powershell virtual
directory’sinden faydalanarak açtığım session’i 00DC1’in windows powershell session’ina import etmiş
olduk.
Get-pssession cmdlet’i ile açtığımız session’ı gözleyebiliriz.
Test amaçlı olarak get-exchangeserver cmdlet’ini kullanabiliriz.
Üstte görüldüğü üzere session’ımızda Exchange cmdlet’lerini çalıştırabiliyoruz.
Remote Session’da pipelining kullanımına bir örnek verelim.
Mailbox’ı CorporateDB’de olan kullanıcıların departman niteliklerini değiştirmiş olduk.
Sonucun detayı üstteki gibidir.(h harfini unutmuşum  )
Açılan session’da, çalışmak istediğimiz scope’u belirleyerek çalışmak da mümkün.
Üstteki örneğe bakacak olursak; session’ı “services” OU’su ile sınırlandırıp mailbox’lara baktığımızda iki
adet mailbox görmekteyiz.
Scope’u tüm forest’a çevirerek baktığımızda tüm mailbox’ları görebiliyoruz. Scope kısıtlaması sırasında
gerekiyorsa, domain controller ve global catalog seçimi de yapabilirsiniz. Seçimler için,
-SetPreferredDomainControllers server_fqdn ve -PreferredGlobalCatalog server_fqdn parametrelerini
kullanabilirsiniz.
Özet:
Exchange Server 2013 yönetiminde PowerShell remoting’den bahsetmiş olduk. Genel olarak kullanımı
Management Tool yüklü olan bir sunucu konforunda olsa da Remote PowerShell session’ının
kullanımında pipelining’e dikkat etmek gerekebilir.Remote PowerShell session’ı içerisinde neler
yapabileceklerinizin cevabı, aslında neler yapmak istediklerinizle orantılıdır.
Exchange Server 2013, Mailbox yönetimi
Exchange “recipient” objelerinin yönetimi,Exchange Server yöneticilerinin günlük rutinleri arasındadır.
“Recipient” objesi dendiğinde ilk akla gelen obje genellikle mailbox objesidir. Elbette ki mailbox’lar en
çok vakit harcanan objelerdir . Diğer “recipient” objeleri ise; distribution group’lar , mail-enabled objeler
, public folder’lar , contact’lar , room mailbox’lar vb. şeklide sıralanabilir. Genel olarak Active
Directory’deki her mail-enabled obje bir “recipient” ‘tır diyebiliriz.
Yeni nesil Exchange server organizasyonunda “recipient” yönetimini Exchange Admin Center’dan
yapabilirsiniz. Fakat binlerce recipient objesinin bulunduğu devasa exchange organizasyonlarında bu tür
işlemleri, ismi “bulk” şeklinde de geçen, toplu hallerde yapmak gerekir. Bu durumda ise Exchange
Management Shell, gereken ortamı sağlar.
Yazımda; “mailbox” yönetiminde kopleks scriptler oluşturarak günlük rutin işleri yönetmek için gereken
shell komutları temellerinden bahsetmek istiyorum.
Exchange Management Shell’ini açarak devam edebilrisiniz yada bir workstation’dan windows
powershell ile remoting’i kullanarak exchange powershell virtual directory’sine bağlanabilirsiniz.
Domain Controller üzerinden windows powershell ile Exchange’e session açarak devam edeceğim.
Yeni session’ı “import” etmeyi unutmayınız! Bu “session” ile yeni mailbox ekleme,değiştirme ve silme
işlemleri yapalım. Böylece günlük rutin görevler arasında en çok yapılan mailbox oluşturma, silme ve
güncelleme işlemlerini incelemiş olacağız.
Parola için bir değişken belirlemek istiyorum.
$parola=ConvertTo-SecureString -AsPlainText Password1 –Force
New-Mailbox cmdlet’ini kullanarak bir account ve onunla eşleştirilmiş bir mailbox oluşturduk. Sonrasında
mailbox’a dair bir takım nitelikleri güncelleyebiliriz.
Mailbox’ın, Mailbox database’den varsayılanda aldığı bir kaç özelliği değiştirmiş olduk.
Active Directory user objesinden Exchange atrribute’ları silmek için ( mailbox’ını da silinecek şekilde
işaretlemek için ) aşağıdaki cmdlet’i kullanabiliriz.
Disable-Mailbox -Identity baris -Confirm:$false
Bu durumda disconnected mailbox 30 gün içinde ( default retention period 30 gündür ) silinir fakat AD
account objesi silinmez! Mailbox objesini ve AD account objesini bir cmdlet ile temizlemek isterseniz
aşağıdaki cmdlet bu işlem için yeterlidir.
Remove-Mailbox –identity baris –confirm:$false
New-Mailbox cmdlet’ini kullanarak yeni bir AD User Account’u ve Exchange Mailbox’ı oluşturduk. AD
veritabanında bulunan bir kullanıcı objesi için mailbox objesi oluşturmak istersek, üstteki komutu
kullanabiliriz.
Mailbox’ı olmayan AD User accout’larını listeleyip, onlara mailbox atama işini aşağıda görüldüğü gibi
pipeline ile birleştirilmiş iki cmdlet ile yapabilirsiniz.
Pipelining, bir cmdlet’in output’unu bir sonraki cmdlet’e aktarma konusunda müthiş bir icat değil mi ? 
Bir önceki örnekte set-mailbox ile bir mailbox objesinin bir kaç niteliğini değiştmiştik. Şimdi pipelining ile
bu işlemi bir bulk işlem haline getirelim.
Üstte görüldüğü gibi get-mailbox ile elde ettiğimiz output’u pipeline ile set-mailbox cmdlet’ine gönderdik
ve ilgili OU’nun altındaki kullanıcı objelerinin mailbox niteliklerinde bir kaç güncelleme yaptık.
Önceki örneğimizde parola için bir değişken kullanmıştım. Bu tür bir değişken ile bir script hazırlayarak
tüm işlemi/süreci otomatize etmek mümkündür. Ama parola girme işlemini bir account operator’a
yaptıracaksanız farklı yöntemler de kullanabilirsiniz.
Üstteki ilk örnekte parola, account operator’ün klavyeden yazması sonucunda okunacak. İkinci örnekte,
windows credential ekranına girilen parola kutucuğu okunacak ve new-mailbox cmdlet’ine verilecek.
Mailbox yaratırken bazı nitelikleri new-mailbox cmdlet’ini kullanarak belirleyemeyiz. Bu niteliklere
city,state,company nitelikleri örnek verilebilir. Bu tip nitelikleri değiştirmek için set-user cmdlet’ini
kullanmanız gerekir.
Set-user cmdlet’inin parametrelerine bakmak isterseniz get-help set-user –detailed cmdlet’ini
kullanabilirsiniz.
ilgili Kullanıcı için yeni nitelikleri görmek istersek;
Üstteki cmdlet ile output almak yeterli olacaktır.
Yazımın sonuna geldim. Örneklerde, yeni kullanıcı ve beraberinde yeni mailbox oluşturma işlemini ,
varolan kullanıcıya mailbox atama işlemini , exchange niteliklerini ve/veya beraberinde ad account’unu
silme işlemini, cmdlet’leri pipeline ile birleştirme örneklerini incelemiş oldum. Gerisi hayal gücünüz ile
sınırlı 
Exchange Server 2013, Resource Mailbox Yönetimi
Exchange “recipient” ‘larından bir önceki yazımda bahsetmiştim. Bu yazımda “recipient” objelerinden bir
başkası olan Resource Mailbox’lardan ve yönetimlerinden bahsetmek istiyorum. Resource Mailbox’ları,
konferans odalarının ve/veya ortak kullanılan şirket ekipmanlarının(laptop,projector vb.) rezervasyonları
için kullanılar.
Resource Mailbox’larının oluşturulması işlemini ve yönetimini Exchange Admin Center web arayüzünden
yapabileceğiniz gibi management shell ile de yapabilirsiniz.
Exchange Admin Center’ı kullanmak isteyenler için ilgili kısım aşağıdaki gibidir.
Exchange Management Shell ile devam edeceğim. Kullanıcı mailbox’ı oluşturma işlemine benzer şekilde
new-mailbox cmdlet’ini kullanarak resource mailbox oluşturuyoruz. room ve/veya equipment)
Display Name kısmında harf hatası yapmışım. Düzeltme işlemini aşağıdaki cmdlet ile yaptım.
Aşağıdaki cmdlet ile yeni bir resource mailbox daha oluşturdum.
İlk resource mailbox oluşturma işlemine göre cmdlet’e bir kaç parameter ekledim. Oluşturduğum
resource mailbox’ların listesini aşağıdaki cmdlet ile gözlüyorum.
Oluşturulan resource mailbox’ların toplantı taleplerini işlemesi, Resource Booking Attandent ile otomatik
olarak yapılabilir veya delegasyon verilerek yapılabilir.
Resource Booking Attendant’ın ts-zambak toplantı odası için gelen rezervasyon taleplerini otomatik
olarak işlemesini, ( autoaccept ) aşağıdaki cmdlet ile sağlayabilirsiniz.
Bu durumda, ts-zambak odasına yapılan rezervasyon talebi başka bir toplantı zamanı ile çakışmıyorsa
otomatik olarak kabul edilir. Toplantı zamanının çakışması durumununda da ikinci talebi yapana, zaman
ile ilgli çakışma olduğu bilgisi gönderilir. Çakışma yaşanması durumunda da talebin kabul edilmesi
isteniyorsa allowconflicts parametresi kullanılabilir.
OWA’dan yada Office Outlook uygulamasından toplantı talebi yaparsanız, toplantı odası uygunluk
durumuna göre size geri bildirim yapmaktadır. Aşağıda bir örnek mevcuttur.
Farklı bir örneği inceleyelim. İki yeni resource mailbox daha oluşturdum. Bilgileri aşağıdaki gibidir ve
equipment tipli resource’lar için kullanacağım bir mailbox’tır.
Bu resource mailbox’ları ekipmanlar için oluşturdum ( 2 adet demo laptop bilgisayarı ). Exchange Admin
Center’ı kullanarak DL-1 resource’unda booking onayı için [email protected] kullanıcısına
delegasyon verdim. Baris kullanıcısı bir toplantı talebinde bulundu. Oda olarak papatya isimli odayı
ekipman olarakTA demo laptop’ını talep etti. Sonuç aşağıdaki gibi. İnceleyelim.
Papatya isimli oda, booking request’i kabul etmiş. Ardından bir dakika sonra demo laptop 1 isimli
resource mailbox’ından dönüş yapılmış.
Ekipmanın kullanımını selda kullanıcısı onaylamalı! O kullanıcının mailbox’ına gönderilen onaylama
mesajı ise aşağıdaki gibidir.
[email protected] isimli kullanıcı demo cihazın kullanımını onayladıktan sonra toplantıyı talep
edene bilgilendirme yapılmaktadır. Aslında onaylama mesajını bir kişi yerine ortak bir mailbox’a
göndertmek reel hayat senaryoları için daha anlamlı olacaktır.( Örneğin, ekipman yönetimi yapan
kişilerin kullandığı ortak bir mailbox)
Not: Resource Mailbox’ın delegasyon işlemi Exchange Admin Center yerine shell’ı kullanmak isterseniz
cmdlet aşağıdaki gibidir.
Resource Mailbox’lara custom resource property de ekleyebilirsiniz. Bu kısım, ihtiyaçlara bağlı
olduğundan aşağıda örnekler içeren adresi paylaşıyorum.
http://technet.microsoft.com/en-us/library/aa998861(v=exchg.150).aspx
Bir kaç custom property ekledim. Cmdlet’ler aşağıdaki gibidir.
Değişiklikler sonucunda zambak ve papatya toplantı odalarında durum aşağıdkai gibi gözlenmektetir.
Böylece, adres defterinden toplantı odalarına bakan bir personel, bir odada audio-video imkanı
olduğunu, diğer odada ise televizyon olduğunu anlayacaktır.
İlaveten toplantı odalarının diğer property’lerini de ( location , phone vb. ) belirlemek isteyebilirsiniz.
Aşağıdaki cmdlet’ler ile yeterli olacaktır.
set-mailbox -Identity ts-zambank -ResourceCapacity 18 -Office "3.Kat"
set-user ts-zambak -Phone 7778899
Resource Mailbox’ların genel olarak özelliklerini incelemek isterseniz ( ne tür property’lerin
yapılandırılabiliceğini gözleme adına ) aşağıdaki cmdlet’ler kullanılabilir.
Get-CalendarProcessing ts-zambak | fl ( room resource )
Get-CalendarProcessing dl-1 | fl ( equipment resource )
get-mailbox ts-zambak | fl
get-mailbox dl-1 | fl
get-user dl-1 | fl
get-user ts-papatya | fl
Resource Booking Attendant hakkında detaylı bir yazı okumak isterseniz aşağıdaki adresten
erişebileceğiniz makale serisi yeterli olacaktır.
http://www.msexchange.org/articles-tutorials/exchange-server-2010/managementadministration/resource-mailboxes-exchange-2010-part3.html
Üstteki ekran görüntülerinden gözlendiği üzere, resource mailbox’lar için custom property’leri ekledim
ve bir kaç pre-defined attribute’u ( location, phone vb. ) ayarladım. Toplantı odalarına dair bu tür
detaylar son kullanıcı açısında oldukça kullanışlıdır ve önemlidir. Bu cmdlet’ler ile resource mailbox
yönetimine bir başlangıç yapabilirbilirsiniz.
Exchange Server 2013, Bulk Recipient Management
Önceki yazılarımda Exchange Recipient’larından ve yönetimlerinden bahsetmiştim. Blog’umdan
inceleyebilirsiniz. Recipient yönetiminde, yönetimsel eforu azaltma adına ya da işte verimliliği arttırma
adına csv(comma separated value) dosyası ile bulk recipient management önemlidir. Bulk recipient
management’ta csv uzantılı dosya, veritabanı tablosu gibi kullanılır. Delimiter olarak “,” kullanılır. Her
veri, satırlara yazılır. Satırlardaki alanlar birbirinden delimiter ( “,” ) ile ayrılır. CSV dosyasının
hazırlanması için notepad text editorü kullanılabileceği gibi daha zengin arayüz sunan excel kullanılabilir.
Excel ile devam edeceğim.
Bir kaç satır oluşturdum. Dosyanın detayları üstteki gibi. Dosyayı *.csv uzantılı halde kaydedebilirsiniz.
Daha sonra notepad ile ve ya excel ile açarak, içeriğini değiştirebilirsiniz.
Exchange management shell’i , windows powershell ile remoting’i yada powershell scripting
environment debugging aracını kullanarak aşağıdaki cmdlet’leri çalıştırın ve dosya içeriğinden edinilen
veriler ile user accout’ları ve mailbox’ları oluşturun.
$parola=ConvertTo-SecureString -AsPlainText Password1 -Force
Import-csv c:\Bulk_Accout_for_CSV.csv | % {new-mailbox -Name $_.Name -Alias $_.Alias UserPrincipalName $_.UserPrincipalName -OrganizationalUnit $_.OrganizationalUnit -Password $parola
-ResetPasswordOnNextLogon $false }
Windows Powershell ISE görüntüsü aşağıdaki gibidir.
CSV dosyasındaki verilere göre user account’ları ve mailbox’ları oluşturuldu. Gerekiyorsa excel tablosuna
“Password” kolonu eklenerek, parola değişkeni döngü içine alınabilir. Bu durumda döngü ve cmdlet’ler
aşağıdaki gibi olacaktır.
Import-CSV C:\Mailboxes.CSV | % {
$parola = ConvertTo-SecureString -AsPlainText $_.Password –Force
New-Mailbox -Name $_.Name -Alias $_.Alias -UserPrincipalName $_.UserPrincipalName -Password
$parola
}
Bu işlemi bir adım daha ileri götürebiliriz. Excel tablosunu aşağıdaki gibi düşünelim.
Bu biçimde hazırlanan csv dosyası ile oluşturulan user account’ların, yönetimsel iş yükü getirebilecek
diğer nitelikleri de yapılandırılmış olacaktır.
Aşağıdaki cmdlet ve döngü ile üstteki csv dosyasından elde edilecek verileri işleyebiliriz.
$parola=ConvertTo-SecureString -AsPlainText Password1 -Force
Import-CSV C:\ Bulk_Accout_for_CSV1.csv | % {New-Mailbox -Name $_.Name -FirstName $_.FirstName
-LastName $_.LastName -Alias $_.Alias -UserPrincipalName $_.UserPrincipalName
-Password $parola -OrganizationalUnit
$_.OrganizationalUnit -Database NW-BG
Set-User -Identity $_.Name -City $_.City -StateOrProvince $_.State -Title $_.Title -Department
$_.Department
Add-DistributionGroupMember -Identity ResearchDevelopment -Member $_.Name
Add-DistributionGroupMember -Identity Marketing -Member $_.Name
}
Bulk recipient management için üstte bahsi geçen döngüler ve cmdlet’ler ihtiyaçlar doğrultusunda
geliştirilebilir. CSV dosyasını oluşturmak için Active Directory veritabanındaki objelerin niteliklerini
“export” ederek bir base şablon hazırlayabilirsiniz.
Exchange Server 2013, Recipient Filter kullanımı
Önceki yazılarda, exchange server 2013 sürümünde recipient management kavramından
bahsetmiştim.Bu yazıda, recipient management için hazırlayacağınız script’lerde ve günlük rutin
yönetimsel faaliyetlerinizde kullanacağınız filter ‘lardan bahsedeceğim. Bu filter’ları global address list
modifikasyonlarında, distribution ve/veya dynamic distribution group modifikasyonlarında, address list
modifikasyonlarında, e-mail address policy modifikasyonlarında kullanabilirsiniz.
Örnek cmdlet’ler ile devam edeceğim.
Üstteki cmdlet ile mailbox’lar arasında office attribute’una göre sorgulama yapılıyor.
Üstteki cmdlet ile Marketing ve UserMailbox niteliklerini kullanan dynamic distribution group
oluşturabilir.
Üstteki cmdlet ile oluşturduğunuz dynamic distribution group’un recipientfilter parametresini
gözleyebilirsiniz ve/veya değiştirebilirsiniz.(değiştirmek için set- komutunu kullanmalısınız)Zira, group’u
shell ile oluşturduğunuz için değişikliği de sadece shell’den yapabilirsiniz.
GUI’den bakarsanız ,group membership modifikasyonu için shell kullanmanız gerektiğini görebilirsiniz.
Eğer group’u GUI’den oluşturursanız, üyelik değişikliklerini GUI’den de yapabilirsiniz.
Bahsettiğim durum üstte görülmektedir.
Filter parametresini kullanabileceğiniz exchange shell komutlarının listesini görmek isterseniz aşağıdaki
cmdlet’ten faydalanabilirsiniz.
Recipientfilter parametresini kullanabileceğiniz exchange shell komutlarının listesini görmek için
aşağıdaki cmdlet’i kullanabilirsiniz.Recipientfilter’ı dynamic distribution group işlemlerinde , e-mail
address policy işlemlerinde ve address list işlemlerinde kullanabilirsiniz!
Filter ile değişken(variable) kullanabilirsiniz fakat syntax biraz farklılaşıyor. Aşağıdaki kullanım örneğinin
yeterli olacağını düşünüyorum.
Üstteki örnekte { } ikilisi yerine “ ” ikilisinin kullanıldığını görmekteyiz!
Bulk işlemlerinizde veya scriptlerinizde filter ve recipientfilter kullanımı, yönetimsel eforunuzu azaltmak
için gereklidir. Syntax ve detaylar konusunda araştırma yapmak isterseniz aşağıdaki adresten
başlayabilirsiniz.
http://technet.microsoft.com/en-us/library/bb124268(v=exchg.150).aspx
Exchange Server 2013, Recipient Moderation
Önceki yazılarda recipient yönetiminden bahsetmiştim. Bu yazıyı okumadan önce onları incelemeniz
faydalı olacaktır. Şimdiki konum, recipient’lar arasında email alış verişinde moderation konusudur. Küçük
ve/vey aorta ölçekteki işletmelerde kullanım alanı olmayabilir. Kurumsal firmalarda özellikler üst
yönetimdeki kişilerin ve üst yönetim gruplarının email alış verişlerinde kontrolü sağlama adına
kullanılması gereken bir özelliktir.
Moderation özelliğini ilk olarak Exchange Server 2010 ile tanıdık ve ihtiyaç duyduğumuz noktalarda
kullanmaya başladık. Bu özellik ile, belirlenmiş bir recipient’a(user mailbox,group vb.) gönderilen
email’lerin hedefe teslim edilmeden önce belirlediğimiz bir moderatör tarafından onaylanmasını
sağlamış oluyoruz.
Exchange management shell örnekler üzerinden devam edeceğim. Öncelikle email group’larımın
moderation status’ünü görelim.
Her iki grupta moderation özelliği henüz devre dışıdır.(varsayılan ayar)
Üstteki cmdlet ile marketin distribution group’unda moderation özelliğini devreye aldım. Kullanmak
istediğiniz cmdlet’in syntax’ını bilmiyorsanız get-help set-* -example cmdlet’ini kullanarak yardım
alabilirsiniz.
Üstteki cmdlet ile moderation özelliğini user mailbox’ında devreye aldım.
Test amaçlı marketing group’ununa email göndermek istersek aşağıdaki bilgilendirme ile karşılaşıyoruz.
Gönderilen email hedefteki gruba gönderilmeden moderatörden onay istenecek! Durum aşağıdaki gibi.
Moderatör onayladıktan sonra email hedefteki alıcılara ( grup üyelerine ) gönderilir. Moderation
özelliğinin kullanılabileceği cmdlet’leri görmek isterseniz aşağıdaki cmdlet’ten faydalanabilirsiniz.
Moderation özelliğini kullanırken, bu özelliğin kapsamı dışından tutmak istediğiniz kişiler(group
members) varsa BypassModerationFromSendersorMembers parametresini kullanabilirsiniz.
Bulk script’lerinizde moderation özelliğini de kullanmak isterseniz örneklendirdiğim cmdlet’ler oldukça
kullanışlıdır.
Exchange Server 2013, Email adresi ekleme/silme operasyonları ve “bulk”
işlemler
Yazıda, recipient tiplerine e-mail adresi ekleme/sime işlemlerinden ve bulk işlemlerinden bahsedeceğim.
Recipient tiplerinin bir çoğu, birden fazla e-mail adresini destekler. Recipient dendiğinde ilk akla gelen
user mailbox’tır. Bunun dışında distribution group’lar,contact’lar,public folder’lar düşünülebilir. Recipient
tiplerine e-mail adresi eklemek ve çıkarmak recipient tipinden bağımsız olarak benzerdir(identical).
Örnekler ile konuyu inceleyeceğim.Kullanılan bir mailbox’a e-mail adresi ekleme ile başlıyorum.
Mailbox’ın e-mail adreslerini aşağıdaki gibi gözleyelim.
[email protected] user mailbox’ına ikinci e-mail adresi eklendi! Mailbox’ın e-mail addresini
silmek isterseniz add yerine remove anahtarını kullanabilirsiniz.
“add” yerine “+” operatörü , “remove” yerine “-” operatörü kullanılabilir. Bu kullanım şekline bir örnek
vermek istiyorum.
Üstteki iki örnekte “+” ve “-“ operatörlerinin kullanımlarını incelemiş oldum.
Bu syntax’ı aşağıdaki cmdlet’ler ile kullanabilirsiniz:
set-casmailbox,set-remotemailbox,set-distributiongroup,set-mailuser,set-dynamicdistributiongroup,setmailpublicfolder,set-mailcontact,set-mailbox
Recipient objerinin e-mail adreslerini düzenlemenin en iyi yolunun e-mail address policy olduğunu
hatırlatmak istiyorum. Ama bazı operasyonel işlerde policy kullanamayabilirsiniz. Bu durumda
add,remove anahtarları ile recipient’ların e-mail adreslerini modifiye etmek için bulk script’ler
hazırlayabilirsiniz. Bir kaç örnek ile devam edeceğim.
Foreach döngüsü ile kısa bir bulk script hazırlayabilirsiniz. Bu tür bulk işlemlerde kullanılacak yöntem (
döngü,cmdlet vb.) işi yapacak olan uzmanın hayal gücüne kalıyor 
Üstteki döngü ve içindeki cmdlet ile R&D organizational unit’i içindeki mailbox’lara @corp.net suffix’ini
e-mail adresi olarak yapılandırdım. Get- ile bakıldığında sonuç görünüyor.
Silme işlemine bir örnek vermeyim. Kullanmadığınız e-mail address policy’leri silseniz de onlarla
eklediğiniz e-mail adresleri kalır. Bunları temizlemek isteyebilirsiniz.
Aktif policy olarak default email policy’yi kullanıyorum ama daha önce oluşturduğum, kullandığım ve
şuan silinmiş email address policy’lerden kaynaklı, email adresi kalabalığı yaşanmakta.Üstte görüldüğü
gibi recipient’ların @aydogmusoglu.com , @merkez.woodgrovebank.com, @corp.net şeklinde email
suffix’leri var. Bu şekilde binlerce recipient olduğunu düşünün! Temizlik yaparak, @aydogmusoglu.com
dışındaki email adreslerini sileceğim. Aşağıdaki döngü ve cmdlet’ler, yapıda binlerce recipient olduğu
düşünülürse faydalı olacaktır!
Cmdlet’lerin ve döngünün net anlaşılması açısında ISE arayüzünü kullanıyorum.
İşlem tamamlandı. Son durumda mailbox’ların email adresleri üstteki gibidir. Bulk işlemlerde ve günlük
operasyonel işlemlerde base teşkil edebilecek bu döngü ile ve cmdlet’ler ile gereksinimlerinize göre
kişiselleştirilmiş ve daha gelişmiş script’ler hazırlayabilirsiniz.
Exchange Server 2013, Distribution Group’larında email gönderimi
yönetimi
Yazıda, exchange recipient’larından biri olan distribution group’lara email gönderimi yönetiminden
bahsedeceğim. Distribution group’lar, diğer exchange recipient’larını üye olarak kabul ettiği için email
dağıtımında kolaylık sağlar. Kurumsal bir şirkette bu kolaylık, kontrol edilmesi gereken bir kolaylıktır!
Distribution group’lara email atma yetkisi kontrol edilerek, group’ların yönetimini sağlamış oluyoruz.
Dağıtım grupları için email gönderimi yönetimini Exchange Admin Center ile ve Exchange Management
Shell ile yapabilirsimiz.
GUI ile yönetim için üstteki kısımlardan faydalanabilirsiniz. Örneklerime Exchange Management Shell ile
devam edeceğim.
Daha önce oluşturduğum iki distribution group mevcut. Marketing isimli gruba email gönderme yetkisini
JIM ve CIZ isimli iki mailbox’a vereceğim.
Set-distributiongroup cmdlet’ini kullanarak üstte görüldüğü gibi işlemi yapabiliriz.
AcceptMessageOnlyFrom anahtarı yerine AcceptMessagesOnlyFromSendersOrMembers anahtarı da
kullanılabilir. Böylece email göndermeye yetkili bir mailbox yerine bir başka grup seçilebilir.
Önceki yazılarımda da bir anahtarın hangi cmdlet’ler ile kullanılabileceğini açıklıyordum. Şimdi de
AcceptMessagesOnlyFrom anahtarının hangi cmdlet’ler ile kullanılabileceğine bakalım.
Üstteki output’tan anlaşılacağı üzere email gönderiminde yetkilendirme distribution group’lar dışında
diğer recipient’lar ile de kullanılabilir.
Dağıtım grubuna email gönderme yetkisi departmana bağlı olarak çok sayıda kullanıcıya verilmek
istenirse set-distributiongroup cmdlet’ini aşağıdaki gibi kullanabilirsiniz.
Dağıtım grubu için yapılandırılan email gönderme kısıtlamasını iptal ederek bütün recipient’lara
(varsayılanda olduğu gibi) izin vermek isterseniz aşağıdaki cmdlet’i kullanabilirsimiz.
Set-Distributiongroup cmdlet’i ile RejectMessagesFromSendersOrMembers anahtarı da kullanılabilir. Bu
cmdlet’leri daha kapsamlı script ’ler hazırlamak için kullanabilirsiniz.
Exchange Server 2013, Ofis dışı ayarların ve otomatik cevapların yönetimi
Yazıda son kullanıcının sıkça kullandığı ofis dışı ayarların ve otomatik cevapların exchange
organizasyonunda nasıl yönetilebileceğinden bahsedeceğim. Son Kullanıcı bu ayarları kendi
perpektifinden, kullanıdığı email uygulaması ile ( outlook vb.) yapılandırabilir. Sunucu tarafında da
yönetim için exchange server 2010 ile tanıştığımız cmdlet’ler kullanılmaktadır. Ofis dışı ayarlarını ve
otomatik cevapları örneklerle inceleyeceğim.
Kullanıcının ofis dışı ayarlarını ( out of office settings ) gözlemek için aşağıdaki cmdlet kullanılır.
Baris kullanıcısı için 1 - 20 Aralık 2013 tarihleri arasında ofis dışı durumu ayarlayalım.
Yapılandırma için üstteki görülen cmdlet kullanılır.
Ofis dışı yapılandırmasında, daha önce bir template hazırlanmışsa (örneğin html formatında) onu da
kullanabilirsiniz. Örnek kullanım aşağıdaki gibidir.
Üstteki kullanımda c:\mesaj.html dosyasının içeriği ExternalMessage parametresine atanmıştır! Son
kullanıcının kendisinin de ofis dışı ayarlarını yapabileceğini belirtmiştim yazımın ilk kısımlarında. Ofis dışı
ayarları devrede olan mailbox’ları bulalım.
Ofis dışı yapılandırmasının devrede olduğu mailbox’lar üstteki gibi listelendi. Son kullanıcıyı ilgilendiren
bir işlem gibi görünsede exchange yöneticilerin olaya dahil olması gereken zamanlar gelmektedir. Bu
durumlarda kullanılabilecek faydalı cmdlet’lerden bahsetmiş oldum.
Exchange Server 2013, Inbox Rule modifikasyonları
Yazıda, kullanımı son kullanıcı için önemli olan inbox rule işlemlerinden ve inbox rule’ların yönetiminden
bahsedeceğim. Sunucu tarafında exchange server 2010 ile tanıştığımız cmdlet’ler exchange server
2013’te de kullanılabilir durumdadır. Bu cmdlet’ler ile inbox rule’larını yönetebilirsiniz ve inbox
rule’larından kaynaklı olabilen mailbox problemlerini çözümleyeilirsiniz.
Exchange Management Shell ile örneklerime başlıyorum.
Üstte gösterildiği gibi kitaro isimli mailbox’a [email protected]’dan email gelirse önem derecesi
high olarak ayarlanacaktır. Sonuç aşağıdaki gibidir.
Öncesinde yapılandırılan bir kuralı modifiye etmek isterseniz set-* cmdlet’ini kullanabilirsiniz. Örneğin
ismi Rule1 olan Inbox Rule’u aşağıdaki cmdlet ile değiştirebilirsiniz.
Set-InboxRule -Identity Rule1 -Mailbox baris -MarkImportance Low
Kuralı devre dışı bırakmak için disable cmdlet’ini kullanabilirsiniz.
Disable-InboxRule -Identity Rule1 -Mailbox baris
Kuralı silmek için remove cmdlet’ini kullanabilirsiniz.
Remove-InboxRule -Identity Rule1 -Mailbox baris -Confirm:$false
Remove cmdlet’inde kullandığım confirm anahtarı true yerine false olarak da yapılandırılabilir.
Örneklerle devam edeceğim.
Başka bir örnek aşağıdaki gibidir.
Üstteki örnekte bir email’in “to” yada “cc” kısmında kitaro ismi geçerse o email’i
[email protected] adresine gönderiyoruz. Durum üstteki gibi!
Son oluşturduğum inbox rule’un description detayını görmek için aşağıdaki cmdlet’ten faydalandım.
Bulk işlemler için de örnek vermek istiyorum.
Üstteki örnekte, HR organizational unit’inde bulunan mailbox’lar için inbox rule oluşturdum. Bu
mailbox’lara gelen email’lerin konu kısmında “parola problemi” ifadesi geçerse, bu email rule’dan dolayı
junk’a gönderilecek.
Test sonucunu üstte görebilirsiniz. Bu cmdlet’tin ve döngünün kullanılmasında dikkat edilmesi gereken
bir hususu paylaşmak istiyorum. İşlemi, domain administrator account’unu kullanarak yapıyor olsanız
bile movetofolder parametresi için işlemi yapan account’un, rule’un oluşturulacağı mailbox’lar üzerinde
full access permission’ı olmalıdır. Sanıyorum bu döngü örneği ile hemen her bulk işlem için daha
karmaşık script’ler hazırlanabilir. Aslında bu konuda çok da karmaşık bir script’e ihtiyaç olduğunu
düşünmüyorum.
Bulk işlemleri ve sunucu tarafında Inbox Rule yönetimini üstte bahsettiğim cmdlet’ler ve döngü ile
yapabilirsiniz.
Exchange Server 2013, Mailbox Folder(Calendar) izinleri
Exchange Server 2010 ile tanıştığımız cmdlet’ler ile mailbox’lar içindeki klasörlerin izinlerini yönetme
imkanı yakalamıştık. Bu cmdlet’ler ve sağladıkları, Exchange Server 2013’te de devam ediyor.
Mailbox folder izinleri dendiğinde genelde ilk akla gelen “calendar”(takvim) oluyor. Hemen her ölçekteki
Exchange Server organizasyonunda, personelinizin takvim izinlerini yapılandırmanız gerekebilir. Özellikle
yöneticileriniz takvimlerini, asistanlarının yada diğer yetkili yöneticilerin görebilmesi gibi rutin haline
gelebilecek yapılandırmalar gerekebilir.
Diğer yandan takvim dışında mailbox’lar içindeki diğer klasörler üzerindeki izinler de “mailbox folder
izinleri” kapsamında incelenebilir.
Lab ortamımda örneklerle konuyu inceleyeceğim.
Örnek olarak ele aldığım iki mailbox’ın takvim klasörleri üzerinde, izinleri inceleyerek başlıyorum
İlgili mailbox’lar içindeki takvim klasörünün erişim izinleri üstteki gibidir. Varsayılan durumda kişiler
diğerlerinin takvimlerine baktıklarında free+busy durumlarını görebilirler. Çünkü Default user’ının
AccessRight’ı AvailabilityOnly şeklindedir.
Availaility Only : “Free,” “Busy,” “Tentative,” yada “Out of Office”
Limited Details: Üstteki bilgiye ek olarak takvimdeki item’ın konu kısmı da görünür
Full Details : Üstteki bilgiye ek olarak takvimdeki item’ın tüm detayı görünür
[email protected] mailbox’ının takvimine baktığımızda üstteki açıklamalara uygun bir görünüm
aşağıdaki gibidir. Selda kullanıcısı, baris kullanıcısının takvimini availabilityonly izni kapsamında
görmektedir.(yani free+busy durumunu görmektedir)
Baris kullanıcısının takvim klasörü üzerinde izin değişikliği yapayım.
[email protected] mailbox’ınındaki takvim klasörü üzerinde, Default’un iznini aşağıda
görüldüğü şekilde LimitedDetails’e değiştirdim.
Selda kullanıcısı, OWA’dan baris kullanıcısının takvimine tekrar baktığından free+busy bilgisi yanında
item’ın konuyu da görebiliyor!
Mailbox’lardaki takvim klasörünün izinlerini yönetmek için aşağıdaki komutları kullanabilirsiniz.
Add-MailboxFolderPermission, Get-MailboxFolderPermission,Remove-MailboxFolderPermission, SetMailboxFolderPermission
Klasörlere erişimde verilebilecek izinleri inceleyeyim.

Genel olarak klasörler üzerinde kişilere verebileceğiniz izinler aşağıdaki gibidir.
ReadItems: Bu hakka sahip kullanıcı, ilgili klasördeki objeyi okur
CreateItems : Bu hakka sahip kullanıcı, ilgili klasörde obje oluşturur
EditOwnedItems : Bu hakka sahip kullanıcı, ilgili klasördeki kendine ait objeyi modifiye eder
DeleteOwnedItems: Bu hakka sahip kullanıcı, ilgili klasördeki kendine ait objeyi siler
EditAllItems: Bu hakka sahip kullanıcı, ilgili klasördeki her obje üzerinde “editing” yapar
DeleteAllItems : Bu hakka sahip kullanıcı, ilgili klasördeki her objeyi siler
CreateSubfolders: Bu hakka sahip kullanıcı, ilgili klasörde alt klasör oluşturur
FolderOwner: Bu hakka sahip kullanıcı, bir klasör oluşturur ve/veya onu başka bir yere move eder
FolderContact: Bu hakka sahip kullanıcı, ilgili klasör için contact’tır
FolderVisible: Bu hakka sahip kullanıcı, ilgili klasördeki item’ları görür ama okuyamaz

İzinler ile uğraşmak yerine bir kaç iznin birleştiği role’leri de kullanabilirsiniz.
None: FolderVisible
Owner: CreateItems, ReadItems, CreateSubfolders, FolderOwner, FolderContact, FolderVisible,
EditOwnedItems, EditAllItems, DeleteOwnedItems, DeleteAllItems
PublishingEditor: CreateItems, ReadItems, CreateSubfolders, FolderVisible, EditOwnedItems,
EditAllItems, DeleteOwnedItems, DeleteAllItems
Editor: CreateItems, ReadItems, FolderVisible, EditOwnedItems, EditAllItems, DeleteOwnedItems,
DeleteAllItems
PublishingAuthor: CreateItems, ReadItems, CreateSubfolders, FolderVisible, EditOwnedItems,
DeleteOwnedItems
Author: CreateItems, ReadItems, FolderVisible, EditOwnedItems, DeleteOwnedItems
NonEditingAuthor: CreateItems, ReadItems, FolderVisible
Reviewer: ReadItems, FolderVisible
Contributor: CreateItems, FolderVisible
Baris kullanıcısının mailbox’daki takvim klasörü üzerinde, selda kullanıcısına izin vermek için aşağıdaki
cmdlet’i kullandım.
Not: Olmayan bir izni set- ile editleyemezsiniz. Önce Add- ile eklemelisiniz!
Selda kullanıcısı reviewer role’u ile baris kullanıcısının mailbox’ındaki item’ı aşağıdaki gibi görebiliyor.
Görebildiği item’ı değiştiremiyor yada yeni item oluşturamıyor! Nedeni reviewer rolü!
Selda’nın baris’in takvim klasörü üzerindeki izinlerini aşağıdaki gibi değiştirdim.
Bu durumda selda kullanıcısı baris’ın takvim klasöründe yeni item’da oluşturabiliyor.(editor rolü de aynı
işi yapacaktır ama daha geniş kapsamlıydı!)
Selda kullanıcısına editor izni veririlirse baris’ın takvim klasöründeki item üzerinde daha kapsamlı izinlere
sahip olacaktır. Editor izninin getirdiği bir kaç yetki aşağıdaki gibidir!
Üstteki izinler için selda’nın, baris’ın takvim klasöründeki yetkileri aşağıdaki gibi yapılandırılmıştı!
Takvim klasörü üzerinde izinler ve izinlerin yönetimi genel olarak bu şekildedir. Sonraki yazımda takvim
dışındaki mailbox folder’lara dair izinleri inceleyeceğim.
Exchange Server 2013, Mailbox Folder izinleri
Exchange Server 2010 ile tanıştığımız cmdlet’ler ile mailbox’lar içindeki klasörlerin izinlerini yönetme
imkanı yakalamıştık. Bu cmdlet’ler ve sağladıkları, Exchange Server 2013’te de devam ediyor.Önceki
yazımda mailbox folder olarak “takvim”(calendar) klasörünü ele almıştım.
Bu yazımda, kullanıcıların mailbox’larında oluşturdukları klasörlerin, ihtiyaç duyulan izinler ile diğer
kullanıcıların kullanımına sunulmasından bahsedeceğim.
Ön bilgi vererek başlamak istiyorum.
Exchange organizasyonunda çeşitli yönetimsel izinleri kontrol eden roller mevcuttur. Rol tabanlı yönetim
sağlayan bu yapı, administrator hesabının bile bir takım yönetimsel işleri yapmasını engeller.
Örnek:
Domain Administrator account’unu ele alalım. Test ortamımdaki domain administrator account’unun
upn’i [email protected] şeklindedir. Exchange Server’larımdan birine bu account ile
oturum açıp bir cmdlet çalıştırmaya çalıştığımda durum aşağıdaki gibidir.
Baris ve Cibil isimli mailbox’lar varolmasına rağmen, administrator üstte gösterilen iki işlemi
gerçekleştiremedi. Sebebi, bu iki işlemin ve bunlara benzer bir çok işlemin management role’ler ve
management role entry’ler ile mailbox owner’ının(self) kendisine verilmesidir.
Üstte resmettiğim implicit scope’ların aldığı değerler “Self” ‘tir. Diğer role’ler ile karşılaştırıldığında
alabileceği değerler ise aşağıdaki gibidir. “Alabileceği değerler..” ifadesinden “bu değerleri
değiştirebiliriz” ‘i kastetmiyorum!
Scope’lar TecNet’te mevcut olduğundan kolayca erişilebilir. Bundan dolayı orjinal hali ile kopyaladım.
Detaylar için http://technet.microsoft.com/en-us/library/dd335146(v=exchg.150).aspx#ImplicitScopes
adresini kullanabilirsiniz.
Ön bilgilendirme ardından baris kullanıcısının mailbox’ındaki üç klasörün izinlerine bakarak başlıyorum.
Klasör izinleri konusunda önceki yazımı http://www.aydogmusoglu.com/exchange-server-2013-mailboxfoldercalendar-izinleri.html adresinden inceleyebilirsiniz.
Klasörlerin izinleri üstteki gibi olduğundan, diğer kullanıcılar baris kullanıcısının mailbox’ındaki bu
klasörleri göremezler.
Cibil kullanıcısına, baris kullanıcısının mailbox’ındaki project klasörünü görmesi için izin vereceğim.
Üstteki ilk cmdlet, cibil kullanıcısına baris:\project klasörü için reviewer izni verir. Fakat Cibil kullanıcısı bu
izinle hiyerarşik olarak daha üstteki baris:\ path’ini göremeyeceği için ikinci cmdlet’i de kullanmak
gerekiyor.İkinci cmdlet baris:\ path’inde bütün klasör’leri(inbox gibi) view-only açmaz!
Reviewer izninden dolayı ilgili klasör sadece görebilir durumda. Bir başka örnek ile devam edeceğim. Yine
cibil kullanıcısına baris:\sharedproject klasörü üzerinde izin vereyim.
SharedProject klasörü için editor izni verdim. Dolayısıyla cibil kullanıcısı bu klasör altında editing
yapabilir. Yani sharedproject içindeki item’lar üzerinde editing yapabilir.
Üstteki örnekte, cibil kullanıcısına baris:\tempproject klasöründe owner izni verdim.
Owner izninden dolayı üstte görüldüğü gibi tempproject altında kendisi bir klasör oluşturabildi.
Önceki yazımda mailbox folder olarak takvim klasörünü ele almıştım. Bu yazımda da takvim dışındaki
Mailbox folder izinleri incelemiş olduk.
Exchange Server 2013, Mailbox boyutlarının raporlanması
Yazıda exchange management shell ile mailbox boyutlarının raporlanmasından bahsedeceğim.
Powershell’in sunduğu cmdlet’ler ile tüm Organizasyon bazında mailbox boyutları için detaylı rapor
almak mümkündür. Bahsi geçecek olan cmdlet’ler daha gelişmiş görsel raporlar almak için temel teşkil
etmektedir.
Örnekler üzerinde devam ediyorum.
cmdlet’in son kısmına Export-CSV c:\mbreport.csv –NoType eklenerek, komutun çıktısı bir dosyaya
kaydedilebilir.
Cmdlet’te anlatılmak istenen şudur.
**Bütün database’lere bak ve “Disconnected State” ‘te olamayan bütün mailbox’ların displayname’lerini
ve totalitemsize’ları listele**
İstenizse custom property tanımlanarak çıktı kısmında mailbox boyutlarını KB(kilobyte) yada
MB(megabyte) cinsinden raporlayabilirsiniz.
KB cinsinden değerler için aşağıdaki custom property kullanılabilir.
MB cinsinden değerler için aşağıdaki custom property kullanılabilir
Dİlerseniz raporunuzu html biçimde alabilirsiniz.
HTML’in görseli konusu size kalmış 
Görsel ekleme konusunda kaynak ararsanız http://technet.microsoft.com/en-us/library/ff730936.aspx
adresinden başlayabilirsiniz.
Exchange Server 2013, “Move Request” ’ler ve “Mailbox Move”
taleplerinin yönetimi
Yazıda, Exchange 2007 versiyonundan buyana exchange management shell’de kullanmakta olduğumuz
“mailbox move” cmdlet’lerinden bahsedeceğim.Exchange server mimarisi, exchange server 2013
sürümünde, eski sürümlere nazaran hayli değişti. Mailbox move işlemleri ve/veya move request işlemleri
için kullanılan cmdlet’ler değişerek ve gelişerek fonksiyonlarını devam ettirmektedir. “Move Request”
işlemleri ile Microsoft Exchange Mailbox Replication servisi ilgilenmektedir.
Move request işlemlerini örneklendirerek devam edeceğim.
Bir mailbox’ı üstte görülen cmdlet ile bir başka mailbox database’e aktarabilirsiniz.
Üstteki pipeline ile birleştirilmiş iki cmdlet, belli bir mailbox database’deki tüm mailbox’ları bir başka
mailbox database’e aktarma işlemini başlatır.
Üstteki cmdlet ile, move request’lerin durumunu gözleyebiliriz.
Üstteki pipeline ile birleştirilmiş iki cmdlet, move request’lerin temizlenmesini sağlar.
Arşiv mailbox’ını bir başka mailbox database’e aktarmak için aşağıdaki cmdlet kullanılabilir.
New-MoveRequest cibil -ArchiveOnly -ArchiveTargetDatabase xdb02
Pipeline kullanılarak batch işlemler yapabilirsiniz.
$mbxs = Get-Mailbox -RecipientTypeDetails UserMailbox -Database OLDDB21 |Get-MailboxStatistics
|?{$_.TotalItemSize -gt 3gb}
$mbxs | %{New-MoveRequest -Identity $_.DisplayName -BatchName 'Large Mailboxes'
-TargetDatabase MDB02}
Üstteki iki satır ile boyutu 3 gb’tan büyük mailbox’ları ( olddb21 içinden), mdb02 isimli mailbox
database’e taşıma işlemini bağlatabilirsiniz.
Mailbox move işlemleri sırasında bozulmuş mail item’ler, move işlemini durduracaktır. Bu durumlarda
bir sayaç belirleyebilirsiniz.
BadItemLimit ve AcceptLargeDataLoss parametrelerini kullanarak bozuk mail item’lerın belli bir sayıya
kadar göz ardı edilmesini sağlayabilirsiniz. Bad item limit için 50’den büyük bir değer kullanıyorsanız,
AcceptLargeDataLoss parametresini de kullanmanız gerekir.
Exchange Server 2013 sürümü ile yeni gelen bir cmdlet’ten Bahsetmek istiyorum. New-migrationbatch
cmdlet’i, taşınan mailbox’larla ilgili raporlar üreterek daha konforlu bir taşıma işlemi oluşturma imkanı
veriyor. Taşınacak mailbox’ların bilgisini csv dosyasından alıyor. CSV dosyası sadece bir kolondan ibaret

Örnek bir csv’nin görünümü aşağıdaki gibidir.
Yeni cmdlet’in kullanımı aşağıdaki gibidir.
New-migrationbatch cmdlet’ini kullanırken; batch işe bir isim veriyorsunuz , csv dosyasının bulunduğu
path’i belirliyorsunuz, mailbox’ların taşınacağı hedef mailbox database’ini beliliyorsunuz, bilgilendirme
raporunun gönderileceği email adresini/adreslerini belirliyorsunuz .
İşlemin seyrini yine üstteki resimde bahsettiğim get- cmdlet’leri ile takip edebilirsiniz. Alternatif olarak
aşağıdaki get- cmdlet’ini de kullanabilirsiniz.
İşlem tamalandıktan sonra notification email’i ilgili adrese gönderilecektir.
Exchange Server 2013 yapısındaki mailbox move,move request,mailbox migration işlemlerinden
bahsettim. Örneklerimde kullandığım cmdlet’leri daha gelişmiş batch scriptler hazırlamak için
kullanabilirsiniz. Aslında bu konuda bahsettiklerimden çok farklı yada detaylı bir işlem olabileceğini
düşünmüyor. Taşınacak mailbox’ların bir değişkene atanması fazında kullanılacak kriterler farklılık
göstereilir yada genişletilebilir.
Herkese neşeli günler dilerim
Kaynak:
http://technet.microsoft.com/en-us/library/jj219166(v=exchg.150).aspx
Exchange Server 2013, Mesajların silinmesi ve “bulk” işlemler
Herhangi bir sebepten dolayı bir mailbox’tan yada bir grup mailbox’tan spesifik bir mail item’ı silmeniz
gerekebilir. Bu konuda exchange server 2010 sp1 ile tanıştığımız ve exchange server 2013 ile gelişen
search-mailbox cmdlet’i kullanılmaktadır.
Yazımda, örneklerle search-mailbox cmdlet’inin kullanımından bahsedeceğim.
Cibil kullanıcısının mailbox’ından bir görünümü aşağıda resmediyorum.
Silecek birşeyler olsun diyerek toplu mail’ler göndermiştim. Cibil’in mailbox’ından about ile başlayan mail
item’ları silelim.
Üstte görüldüğü üzere about kelimesini içeren mail item’lar silindi.
-searchquery parametresi istenilen kriteri belirlerken (Advanced Query Syntax(AQS) kullanılarak)
kullanılır. Genelde en sık kullanılan değerler Subject, Body, Sent, To, From, ve Attachment değerleridir.
Hepimizin bildiği üzere bu tür işlemler kritik işlemlerdir. Sonuçlarını kestiremediğiniz durumlarda önce
raporlama yapmak ve sonrasında işleme geçmek en mantıklı seçenektir!
Üstteki cmdlet ile tüm mailbox’ları göz önüne alarak, mail item’lar arasında subject kısmında about
kelimesi yazan mail item’ların sayısını raporlamış oluyoruz.
Subject ‘inde about kelimesi geçen mail item’ların mailbox’lara göre dağılımı üstteki gibi görünüyor
benim test ortamımda 
Cibil kullanıcısında about kelimesi geçen mail item yok, çünkü daha önce silmiştim  Raporu notepad ile
açmak yerine excel ile açarsanız daha iyi bir görsel yakalarsınız!
Bu konuda bulk işlem örneği aşağıdaki gibidir.
Get-mailbox ve search-mailbox cmdlet’lerini pipe ile birleştirmiş oldum. Bu konuda detaylandırılabilecek
yada farklılaştırılabilecek script’lere ihtiyaç olacağını düşünmüyorum. Ama farklı parametreler ve
anahtarlar için aşağıdaki adreslerin incelenmesi faydalı olacaktır!
http://msdn.microsoft.com/en-us/library/aa965711(v=vs.85).aspx
http://technet.microsoft.com/en-us/library/dd298173(v=exchg.150).aspx
Exchange Server 2013, Mailbox ’ların Import Export edilmesi işlemleri
Exchange Server organizasyonu ile çalışanlar aşinadırlar ki mailbox ’ların import export işlemleri
exchange 5.5 sürümünden bu yana yapılan rutin işlemler arasındadır. Exchange 5.5 sürümündeki temel
araç exmerge aracıydı. Şimdiki exchange sürümünde, eskiye göre bu işlemler için gereken gereksinimleri
ortadan kaldırmış bir yapı mevcut. Örneğin, exmerge ile yapılan işlemleri otomatize etme zorlukları
mevcuttu, exchange server 2007 dönemindeki işlemlerde ms office outlook uygulaması kurulu bir
workstation gereksinimi vardı. Exchange server 2010’un ve exchange server 2013’ün yayınlanması ile
birlikte bu tür işlemler için bahsettiğim gereksinimler ortadan kalkmış oldu. Yeni cmdlet’lerin çalışma
süreci ile exchange mailbox server rolü yüklü sunucularda çalışan Microsoft Exchange Mailbox
Replication servisi ilgilenmektedir.
Yazımda sunucu tarafında yürütülen bu işlemlerden ve süreçlerden, örneklerle açıklayarak
bahsedeceğim.
Baris kullanıcısının mailbox’ını pst dosyasına export etmek için aşağıdaki cmdlet’i kullanabilirsiniz.
Üstte görüldüğü gibi cmdlet hata vermekte!
Get-command *export* cmdlet’ini kullanarak bakarsanız, export cmdlet’lerinin olmadığını göreceksiniz.
Bunun sebebi, locally logged user account’un mailbox import export izninin olmamasıdır! Varsayılanda
bu rol administrator kullanıcısına da verilmiyor! Kullanıcıya bu işlem için izin verilmesi gerekir. İzin için
aşağıdaki cmdlet’i kullanabilirsiniz.
Ardından mailbox export request’ini tekrar çalıştırdım( ems’yi kapatın ve yeni bir ems açın!).
Üstte görüldüğü gibi işlem başarı şekilde başladı ve mailbox export işlemi, işlem kuyruğuna alındı.
Kullanının mailbox’ının bir kısmını ve/veya belli bir tarihten sonraki item’larını pst dosyasına export
etmek isteyebilirsiniz. Bu durumda mailbox export cmdlet’ini biraz detaylandırmak yeterli olacaktır.
Üstteki parametreler ile sent items klasörünü ve/veya belli bir tarihten daha sonra gelen mail item’ları
pst dosyasına export etmeyi seçmiş oldum. Tabii ki her iki satırı birleştirip kullanabilirsiniz!
ContentFilter parametresi ile pst dosyasına export edeceğiniz içeriği detaylı şekilde filtreleyebilirsiniz.
Birkaç örnek vermek istiyorum.
-ContentFilter {All -like "*baris"} : Recipient,Sender veya message body içerisinde baris geçen her
item’ı export eder.
-ContentFilter {Attachment -like "*.jpg"} : Attachment’ın türüne yada isminde geçen bir kelime uyan
bütün item’ları export eder.
-ContentFilter {(BCC -eq '[email protected]') -or (BCC -eq '[email protected]')} :
Gönderilen mail’lerin arasında bcc kısmına baris eklenmiş veya bcc kısmına cibil eklenmiş tüm item’ları
export eder! Yasal yükümlülüklerin yerine getirilmesinde bu tür filtrenin talep edilebileceğini ve/veya
kullanılabileceğini düşünüyorum.
ContentFilter parametresinin kullanılan özellikleri bunlarla sınırlı değil.
http://technet.microsoft.com/en-us/library/ff601762.aspx adresine mutlaka göz atın!
Başlayan işlemi(mailbox export işlemi) görüntülemek için aşağıdaki cmdlet’ten faydalanabilirsiniz.
İstatistiksel bilgileri gözlemek isterseniz aşağıdaki cmdlet de kullanışlıdır.
Bulk olarak gözlem yapmak isterseniz aşağıdaki döngü kullanılabilir.
Output biçiminin görselini değiştirebilirsiniz.
PST dosyalarının içeriğini mailbox’a import etmek isterseniz aşağıdaki cmdlet’i kullanabilirsiniz.
Exchange organizasyonundaki mailbox’ların tümünü pst dosyasına export etmek isterseniz aşağıdaki
code’lar ve cmdlet’ler işinize yarayacaktır.
-
Export_bulk isminde bir ps1 dosyası oluşturdum ve içeriğini script pane’de yazdığım şekilde
kaydettim.
- Batch işin ismini oluşturmak için get-date cmdlet’ini kullandım ama opsiyoneldir.
- Ardından ps1 script dosyasını normal bir script dosyasını çalıştırdığınız gibi çalıştırabilirsiniz.
Tüm mailbox’lar –path ile belirlediğiniz paylaşıma export edilecektir.
Not: $batch_export ile bağlayan satırı kullanmak zorunda değilsiniz. Kullanmazsanız, -batchname
parametresi için açıkça bir isim yazabilirsiniz.Kullanım örneği aşağıdaki gibidir.
.\Export_bulk.ps1 -Path \\00mbx01\pst -BatchName toplu_export_1
Bulk mailbox import işlemleri için aşağıdaki adresi inceleyebilirsiniz.
http://gallery.technet.microsoft.com/office/e46edf5b-3d82-4f11-a3fa665f32df6bd8 Galeriden download edip test edebilirsiniz. Ben test etmedim!
Mailbox export import işlemleri için yeni nesil exchange server sürümleri ile kullanabildiğimiz cmdlet’leri
ve kullanım şekillerini inceledim. İhtiyaçlar doğrultusunda daha gelişmiş ve/veya fonksiyonel script’ler
yazılabilir.
EK
Test Ortamı
Host : Windows 8.1 Enterprise sürümü
Hypervisor : Hyper-v
Host donanımı : 16 GB Memory , Intel Core I7-3630QM işlemi , 2 x Solide State Disk
Sanal sunucular ve sürümleri
Domain Controller : Windows Server 2012 R2
Üye sunucular : Windows Server 2012 R2
Exchange Server : Exchange Server 2013 CU3 (15.0.775.38)

Benzer belgeler

Kurulum ve Konfigürasyonu - TechNet Gallery

Kurulum ve Konfigürasyonu - TechNet Gallery çok vakit harcanan objelerdir . Diğer “recipient” objeleri ise; distribution group’lar , mail-enabled objeler , public folder’lar , contact’lar , room mailbox’lar vb. şeklide sıralanabilir. Genel o...

Detaylı

Microsoft Exchange Server 2013 Kurulum ve

Microsoft Exchange Server 2013 Kurulum ve Exchange “recipient” objelerinin yönetimi,Exchange Server yöneticilerinin günlük rutinleri arasındadır. “Recipient” objesi dendiğinde ilk akla gelen obje genellikle mailbox objesidir. Elbette ki ma...

Detaylı

Exchange 2007 - Faruk Çubukçu

Exchange 2007 - Faruk Çubukçu server'lar, mailbox'lar, recipients ve diğer bileşenler yönetilir. » Exchange Management Shell Exchange Management Shell yeni bir komut satırı aracıdır. Sistem yönetiminin komut satırından; komutla...

Detaylı