Exchange server 2016-2019 için gerekli kurulum hazırlıkları ve kuruluma başlamadan önce kurulması gereken roller ve yazılımlar.
- Bu kurulum aşamasında Exchange Server 2016 kurulumu yapıldığı için Windows server 2016 sürümünü kullandım. Sunucu üzerinde Exchange kurulumuna başlamadan önce kurduğum yazılımlar;
- .Net Framework 4.7
- Microsoft Visual C++ 2013 Reditsributable
- Windows Unified Communications Managed 4.0
- Exchange 2016 Cu11 sürümünü indirdim ve Server içinde herhangi bir dizine atılabilir ya da Mount seçeneği kullanabilir.
- Microsoft’un sitesinden Exchange 2016 gereksinimleri kontrol edilebilir.
- Kurulum yapacağımız hesabın active directory üzerindeki yetkileri;
- Enterprise Admins
- Schema Admins
- Domain Admins
2. Windows için gerekli rollerin kurulması gerekmektedir. Bu roller tek tek kurulabilir fakat aşağıdaki powershell komutu ile kurulabilir. Rol kurulumları tamamlandıktan sonra restart edilmesi sağlıklı olacaktır. Bazı komutlar sunculara kurma aşamasında sorun çıkartabiliyor. Bu yüzden 2019 yazan komut satırını microsoft’un sitesinden aldım ve sorunsuz kurulum gerçekleşti. Birçok yerde aynı komut var fakat bence Desktop Experience feature kurma işlemini yapmaya çalıştığı için 2016 ve sonrasında hata veriyor.
* Install-WindowsFeature RSAT-ADDS
* Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation
* 2016 için ****** Install-WindowsFeature AS-HTTP-Activation, Desktop-Experience, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, Web-Mgmt-Console, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation
* 2019 için ****** Install-WindowsFeature Server-Media-Foundation, NET-Framework-45-Features, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Clustering-CmdInterface, RSAT-Clustering-Mgmt, RSAT-Clustering-PowerShell, WAS-Process-Model, Web-Asp-Net45, Web-Basic-Auth, Web-Client-Auth, Web-Digest-Auth, Web-Dir-Browsing, Web-Dyn-Compression, Web-Http-Errors, Web-Http-Logging, Web-Http-Redirect, Web-Http-Tracing, Web-ISAPI-Ext, Web-ISAPI-Filter, Web-Lgcy-Mgmt-Console, Web-Metabase, Web-Mgmt-Console, Web-Mgmt-Service, Web-Net-Ext45, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI, Windows-Identity-Foundation, RSAT-ADDS
3. AD Prepare komutları ile forest, active directory ve domain functional level kontrolleri sağlanabilir. Bu işlemler powershell ile yapılmak zorunda değildir. Gerekirse domain içinde de kontrol edilebilir.
- Forest Functional Level : Active Directory Adminsitrative Center – Domain Adı – Raise the Forest Functional Level alanından hem forest hem de domain level kontrol edilebilir. Domain level bir sonraki aşamada farklı bir alandan da nasıl kontrol edileceği gösterilmiştir.
- Powershell ile Forest Functional Level kontrol:
[System.DirectoryServices.ActiveDirectory.Forest]::GetCurrentForest()
- Domain Functional Level kontrolü:
- Powershell ile Domain Functional Level Kontrolü:
[System.DirectoryServices.ActiveDirectory.Domain]::GetCurrentDomain() |Select *Mode*
4. Active Directory Schema sunucunun nerede olduğunu sorgulamak için;
(Get-ADForest).SchemaMaster ya da netdom query fsmo ile rüm rolleri sorgulayarak ilgili rol hangi sunucuda kontrol edilir.
NOT: Exchange kurulum sırasında farklı site alanlarımız var ise Exchange kuracağımız zaman ilgili Schema rolünü, kurulum yapacağımız site’a almamız gerekmektedir!.
5. Kuruluma başlamadan önce active directory üzerinden daha önce exchange kurulumu yapılmış mı, yapılmış ise kaldırma işlemleri temiz bir şekilde yapılmış mı kontroller sağlanır. Eğer exchange sunucu kurulumu yapılmamış ya da temiz bir şekilde kaldırma işlemi yapılmışsa komutun çıktısı boş olarak dönecektir. Ama mecvut yapıda bir kurulum var ise versiyon bilgisi dönecektir.
“Exchange Schema Version = ” + ([ADSI](“LDAP://CN=ms-Exch-Schema-Version-Pt,” + ([ADSI]”LDAP://RootDSE”).schemaNamingContext)).rangeUpper
Yukarıdaki gibi bir schema versiyon dönerse daha detaylı bir bilgi almak için komut:
Get-ADObject "CN=ms-Exch-Schema-Version-Pt,$((Get-ADRootDSE).schemaNamingContext)" -Property Rangeupper
6. Bu komutlarıon hatasız olarak sonuçlanması gerekmektedir. Uyarılar dikkate alınarak aşağıdaki komutlar verilebilir.
Active Directory üzerinde exchange’e ait grupların vs oluşmasını sağlamak için gerekli komut; organizationName alanına istediğimizi yazabiliriz. Kuruluşumuz için olan isim alanıdır.(Organizasyon ismi kurulum aşamasında da verilebiliyor.)
Setup.exe /PrepareAD /OrganizationName:"Kurts" /IAcceptExchangeServerLicenseTerms
7. Active Directory üzerindeki schema genişletme işlemleri için gerekli komut;
Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms
8. Domainizi hazırlaması için gerekli komut: Bu alanda istersek domain adımızı belirtebiliriz ya da AllDomain komutu da kullanılabilir.
Setup.exe /PrepareDomain:kurt.local /IAcceptExchangeServerLicenseTerms ya da Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms
9. indirdiğimiz ve ilgili yere dosyalarını kopyaladığımız Exchange sürümünün içinde bulunan Setup dosyasını yönetici olarak çalıştırıyorum.
10. Son sürümü indirdiğim için Don’t Check for Updates rights now seçeneğini kullanıyorum.
11. Kurulum aşamasında önerilen ayarlarını kullanmayı seçmiyorum. Gerekli ayarlamaları yapacağım için Don’t use recommended settings ayarlarını seçiyorum.
12. Sadece Mailbox Role kurulumunu seçiyorum. Daha önce birçok ayarlama işlemlerini ve gerekli role vs kurulumlarını yaptığım için Automatically install Windows Server Roles and features … seçeneğini işaretlemiyorum.
13. Malware Protection Settings sayfasında Exchange Server 2016’nın (Server 2013 den sonra) kendisinin ve maillerin güvenliğinin sağlaması için aktif edebilirsiniz. Ben bu kurulumda “No” diyerek kuruluma devam ediyoruz. Varsayılan haliyle bırakıyorum. İsterseniz daha sonra kurulum yapılabilir.
14. Bu aşamadan sonra kurulum için gerekli ön kontroller sağlanıyor ve bu alanda herhangi bir hata alırsanız bu hataları gidermemiz gerekiyor. Aksi halde bu adımı atlayamıyoruz.
15. Bu aşamadan sonra herhangi bir hata yok ise Install seçeneği ile ilerliyorum ve kurulumun bitmesini bekliyorum. Biraz uzun sürebiliyor. Kurulum sorunsuz bir şekilde bittiğinde ECP paneline girmek için Launch seçeneğini işaretliyorum ve kontrollerimi sağlıyorum.
16. Kurulum aşamasından sonra Exchange için gerekli servislerin çalışıp çalışmadığını kontrol ediyorum. Eğer çalışmayan var ise çalıştırabiliriz. Kurulum aşamasından sonra yapının tam oturması için biraz beklemek ve sunucuyu bir kere restart etmek gerekebilir.
17. Exchange management Shell üzerinden kurulum sonrası versiyon vs bilgisi almak için gerekli komut;
Get-ExchangeServer | Select Name, AdminDisplayVersion
18. Panel girişi sorunsuz, Exchange servisleri normal bir şekilde çalışıyor ise artık gerekli temel ayarları yapmak için devam edebiliriz.