Installing Exchange 2007 SP1 onto Windows Server 2008 with a WS2008 Active Directory
This post consists of some notes that I took during the installation of Exchange Server 2007 SP1 (Integrated) into a Windows Server 2008 Active Directory Environment (green field, clean installation of everything). The AD environment was created on RC1 bits of Longhorn with 2008 Forest Functional Level during the DCPromo process. The lab consists of two servers: 1 DC and 1 Exchange Server.
Install PowerShell Feature on both DC and Exchange Servers using the Server Manager - "Add Features" tool.
ForestPrep and DomainPrep are no longer command line options in the Exchange setup process. To build out the domain, run the following procedures on the domain controller:
SETUP /PrepareLegacyExchangePermissions:WS08.domain.com
SETUP /PrepareSchema
SETUP /PrepareAD /OrganizationName:WS08Mail
SETUP /PrepareDomain:WS08.domain.com
On the Exchange Server, add the web server role for IIS and ensure the following features are enabled:
- IIS 6 Management Compatibility
- Dynamic Content Compression
- Basic Authentication, Windows Authentication, and Digest Authentication
- ASP.NET
Note that NNTP and SMTP are not required (and must not be installed). Run a customized Exchange setup, configured for Mailbox, Hub Transport, and CAS roles. Exchange performs a series of readiness checks and should provide ample instructions for installing or configuring any missing compoenents.
Configure the Client Access Service
Set-OWAVirtualDirectory -Identity "[ServerName]\owa (Default Web Site)" -ChangePasswordEnabled:$false -ExternalUrl "{URL}" -DefaultDomain [FQDN] -LogonFormat UserName -FormsAuthentication:$true
iisreset /noforce
Set-ExchangeServer -Identity [ServerName] -ProductKey "[Enter Product Key" -ErrorReportingEnabled:$true
Enable-OutlookAnywhere -Server [HostName] -ExternalAuthenticationMethod Basic -ExternalHostname [FQDN] -SSLOffloading:$false
Get-OabVirtualDirectory | where { $_.Server -eq [ServerName] } | Set-OabVirtualDirectory -ExternalUrl https://[FQDN]/OAB -RequireSSL:$true
Get-WebServicesVirtualDirectory | where { $_.Server -eq [ServerName] | Set-WebServicesVirtualDirectory -ExternalUrl https://[FQDN]/EWS/Exchange.asmx -BasicAuthentication:$true
New-ExchangeCertificate -GenerateRequest:$true -DomainName "[FQDN of Host]", "autodiscover.[FQDN]", "[FQDN]" -FriendlyName "[ServerName] cas cert request" -SubjectName "LegacyName" -Path "C`:`\[ServerName].req" -Keysize 1024
Configure the Hub Transport
Set-ExchangeServer -Identity [ServerName] -ProductKey "[Enter Product Key" -ErrorReportingEnabled:$true
Get-ReceiveConnector -Server [ServerName] | Set-ReceiveConnector -PermissionGroups AnonymousUsers,ExchangeUsers,ExchangeServers
$transportServers = Get-ExchangeServer | where { $_.IsHubTransportServer -eq $true }
Set-SendConnector "General Send Connector" -SourceTransportServers $transportServers
New-ExchangeCertificate -GenerateRequest:$true -DomainName "[FQDN of Host]", "autodiscover.[FQDN]", "[FQDN]" -FriendlyName "[ServerName] cas cert request" -SubjectName "LegacyName" -Path "C`:`\[ServerName].req" -Keysize 1024