• Home
  • About
  • Blog
  • Training
  • Books
  • Contact
    • Email
    • Facebook
    • Twitter
    • RSS

Practical 365

  • Office 365
  • Exchange 2019
  • Exchange 2016
  • Exchange 2013
  • Hybrid
  • Certificates
  • PowerShell
  • Migration
You are here: Home / Exchange Server / Installing Exchange Server 2013 Pre-Requisites on Windows Server 2008 R2

Installing Exchange Server 2013 Pre-Requisites on Windows Server 2008 R2

July 22, 2012 by Paul Cunningham 26 Comments

This article is based on the Exchange 2013 Preview release and is subject to change when Exchange 2013 reaches RTM. Do not attempt to install Exchange 2013 Preview in a production environment.

Exchange Server 2013 can be installed on Windows Server 2008 R2 SP1, on either the Standard or Enterprise editions. Exchange 2013 can also be installed on Datacenter (RTM) edition.

Windows Server 2008 R2 Standard edition will support any of the Exchange 2013 server roles, however if you intend to deploy Exchange 2013 Mailbox servers in a Database Availability Group you will need to run the Enterprise edition (for the required Failover Clustering components).

In addition, the Windows Server 2008 R2 installation must be a Full installation. Server Core installation is not supported.

As there are only two server roles for Exchange Server 2013 there are only two combinations of pre-requisites required:

  • Mailbox servers, or combination Mailbox and Client Access servers
  • Client Access servers

Both scenarios are covered in this article.

Installing Pre-Requisites for an Exchange Server 2013 Mailbox, or Mailbox and Client Access Server

For an Exchange 2013 server that will host either the Mailbox server role, or both the Mailbox and Client Access server roles, the following PowerShell commands are used to install the required roles and features.

Note: the Add-WindowsFeature command is quite lengthy and you will need to scroll across to be able to copy/paste all of it.

1
2
3
4
5
6
7
PS C:\> Import-Module ServerManager
 
PS C:\> Add-WindowsFeature Desktop-Experience, NET-Framework, NET-HTTP-Activation, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Web-Server, WAS-Process-Model, Web-Asp-Net, 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-Ext, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI
 
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True    Yes            Succes... {Ink Support, .NET Framework 3.5.1, Config...

A restart is required after the roles and features have finished installing.

Next, install the following software in this precise order.

  1. Microsoft .NET Framework 4.5 RC (I recommend downloading the standalone redistributable installer)
  2. Windows Management Framework 3.0 (requires restart)
  3. Microsoft Unified Communications Managed API 4.0, Core Runtime 64-bit
  4. Microsoft Office 2010 Filter Pack 64 bit
  5. Microsoft Office 2010 Filter Pack SP1 64 bit
  6. Microsoft Knowledge Base article KB974405 (Windows Identity Foundation)
  7. Knowledge Base article KB2619234 (Enable the Association Cookie/GUID that is used by RPC over HTTP to also be used at the RPC layer in Windows 7 and in Windows Server 2008 R2) (restart required)
  8. Knowledge Base article KB2533623 (Insecure library loading could allow remote code execution) (restart required)

These updates add up to around 350mb of files. One of the hotfixes even requires you to submit your email address to be emailed the download link. I recommend you download all the updates once and keep them stored on your network for use in subsequent Exchange 2013 Preview installs.

For the Mailbox server role the Task Scheduler service must also be enabled and running.

Continue to the end of this article for the final steps required.

Installing Pre-Requisites for an Exchange Server 2013 Client Access Server

For an Exchange 2013 server that will host only the Client Access server role, the following PowerShell commands are used to install the required roles and features.

Note: the Add-WindowsFeature command is quite lengthy and you will need to scroll across to be able to copy/paste all of it.

1
2
3
4
5
6
7
PS C:\> Import-Module ServerManager
 
PS C:\> Add-WindowsFeature Desktop-Experience, NET-Framework, NET-HTTP-Activation, RPC-over-HTTP-proxy, RSAT-Clustering, RSAT-Web-Server, WAS-Process-Model, Web-Asp-Net, 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-Ext, Web-Request-Monitor, Web-Server, Web-Stat-Compression, Web-Static-Content, Web-Windows-Auth, Web-WMI
 
Success Restart Needed Exit Code Feature Result
------- -------------- --------- --------------
True    Yes            Succes... {Ink Support, .NET Framework 3.5.1, Config...

A restart is required after the roles and features have finished installing.

Next, install the following software in this precise order (you may notice these are the same as the Mailbox server role, except for the Office Filter Pack not being required).

  1. Microsoft .NET Framework 4.5 RC (I recommend downloading the standalone redistributable installer)
  2. Windows Management Framework 3.0 (requires restart)
  3. Microsoft Unified Communications Managed API 4.0, Core Runtime 64-bit
  4. Microsoft Knowledge Base article KB974405 (Windows Identity Foundation)
  5. Knowledge Base article KB2619234 (Enable the Association Cookie/GUID that is used by RPC over HTTP to also be used at the RPC layer in Windows 7 and in Windows Server 2008 R2) (restart required)
  6. Knowledge Base article KB2533623 (Insecure library loading could allow remote code execution) (restart required)

These updates add up to around 350mb of files. One of the hotfixes even requires you to submit your email address to be emailed the download link. I recommend you download all the updates once and keep them stored on your network for use in subsequent Exchange 2013 Preview installs.

Additional Required Steps for Any Exchange Server 2013 Server Roles

After installing the above software components, but before installing Exchange 2013, remove the Microsoft Visual C++ Beta Redistributable via the Control Panel.

This must be uninstalled before attempting to install Exchange Server 2013 Preview.

Open a command prompt and run the following commands (note that IISreset will reset any active connections to the server).

1
2
3
C:\> %SystemDrive%WindowsMicrosoft.NETFramework64v4.0.30319aspnet_regiis.exe -ir -enable
 
C:\> IISReset

The server is now ready for the installation of Exchange Server 2013.

Paul Cunningham

Paul is a Microsoft MVP for Office Apps and Services and a Pluralsight author. He works as a consultant, writer, and trainer specializing in Office 365 and Exchange Server.

0 Shares

Exchange Server Deployment, Exchange 2013, Setup, Windows Server 2008

Comments

  1. RobH says

    August 1, 2012 at 12:50 am

    Hi Paul

    Great article. however i/m stuck at trying to install exchange 2013. my original install failed, managed to uninstall it and now when try to double click on setup.exe the only thing to shows is a little window that says
    Welcome to Microsoft Exchange
    File c:program filesmicrosftexchange serverv15binexsetupui.exe does not exist!

    what gives?

    Reply
    • Paul Cunningham says

      August 13, 2012 at 8:19 pm

      Tried an uninstall and reinstall?

      Welcome to pre-release software 🙂 My own installs took a few tries on one of my servers, for no apparent reason.

      Reply
      • RobH says

        August 14, 2012 at 5:27 am

        cool thanks

        i will try until i get it working

        Reply
  2. Sunil says

    August 9, 2012 at 6:02 pm

    Hi Paul,

    Your article are very good for understanding the exchange server. As per your guideline, I have try to install exchange server 2013 on VM’s. Client access server role is installed successfully, but the mailbox role getting error while installing.

    The following error was generated when “$error.Clear();
    if ($RoleProductPlatform -eq “amd64”)
    {
    $useAttachMode = $false;
    $fastInstallConfigPath = Join-Path -Path $RoleBinPath -ChildPath “SearchCeresInstaller”;
    $command = Join-Path -Path $fastInstallConfigPath -ChildPath “InstallConfig.ps1”;
    $fastDefaultDataFolderPath = Join-Path -Path $RoleBinPath -ChildPath “SearchCeresHostControllerData”;
    $dataFolderPath = $fastDefaultDataFolderPath;

    if ([System.IO.Directory]::Exists($fastDefaultDataFolderPath))
    {
    $useAttachMode = $true;
    }
    else
    {
    if ($RoleIsDatacenter -eq $true)
    {
    $preferredDataFolderPathRoot = “D:”;
    if ([System.IO.Directory]::Exists($preferredDataFolderPathRoot))

    Reply
    • Paul Cunningham says

      August 13, 2012 at 8:21 pm

      Trying to install to C: or D: drive? I’m curious about that $preferredDataFolderPathRoot = “D:”; in your output.

      If you’re truly stuck try the TechNet forum for the Exchange 2013 preview. At this early stage I haven’t encountered all the install bugs cropping up for people.

      http://social.technet.microsoft.com/Forums/en-us/exchangeserverpreview/threads

      Reply
      • Sunil says

        August 14, 2012 at 6:49 pm

        Hi, Paul

        My Lab setup is as follows.
        Total 3 Servers
        1. DC
        2. Client Access Role
        3. Mailbox Server Role

        Client access role is installed successfully, but when i try to install mailbox server role it is getting above mention error. Installation path is C Drive.

        2nd Lab setup.
        1. DC
        2. Client Access Role and Mailbox Role

        Both roles are installed successfully in this lab setup and mail send/received working fine.

        Reply
  3. Mostafa sharaf says

    February 27, 2013 at 5:21 pm

    before run exchange setup we need to run exchangeserver.exe because if not run when the exchange check the prerequest it is not continue and have error message you are not on admin groups ,… and other groups

    Reply
  4. cuocdoi says

    March 1, 2013 at 11:10 am

    Hi Paul,

    I’ve 2 PCs with role as:
    PC1: Active directory
    PC2: Exchange 2013

    1. Could I install Exchange 2013 in this topology ? And assume that could you tell me that whether I can install Exchange 2013+Active directory in same PC, please ?

    2. If I can install Exchange 2013 in this topology, so In PC, which things will I need to install before deploy Exchange 2013 into PC2?

    Thanks,
    cuocdoi

    Reply
  5. cuocdoi says

    March 1, 2013 at 6:32 pm

    Hi Paul,

    I cannot excite the commandline:

    =======
    %SystemDrive%WindowsMicrosoft.NETFramework64v4.0.30319aspnet_regiis.exe -ir -enable
    =======

    Window Power Shell displays error.

    Could you help me , please?

    Reply
  6. Leo says

    May 30, 2013 at 1:36 pm

    Hi Paul,

    Why do you need to uinstall C++ Beta Redistributable via the Control Panel.?

    What happen if you don’t?

    Cheers Leo

    Reply
    • Paul Cunningham says

      June 4, 2013 at 10:35 pm

      It was a requirement during the Preview build but isn’t a requirement any more. I just haven’t updated this article yet.

      Reply
  7. Fareedullah says

    September 19, 2013 at 1:44 pm

    Hello Paul,

    Do you have Exchange 2013 server videos uploaded somewhere?

    Cheers,

    Reply
    • Paul Cunningham says

      September 19, 2013 at 8:18 pm

      No, nothing available yet.

      Reply
  8. Dan Lee says

    November 14, 2013 at 4:21 am

    Paul! Love your work! Many, many admins owe you a big thank you for all you’ve done for us over the years! I just wanted to update the post here, “Add-WindowsFeature” has been replaced! Instead, use Install-WindowsFeature.

    http://technet.microsoft.com/en-us/library/ee662309.aspx

    Thanks again!

    Reply
  9. Dianna Le Grand says

    May 3, 2015 at 6:39 pm

    Actually when someone doesn’t be aware of afterward its up to other users that they will assist, so here it happens.

    Reply
  10. Hassan.. says

    May 24, 2015 at 11:37 pm

    Hi Paul,

    I am little bit confused while installing there are certain Question
    1- did i required public IP address for sending mail external?
    2- if i used outlook whether i need hosting?
    3- I try first time with internal IP address but the mail is not delivered on external

    Reply
  11. Robert Jonathan says

    June 7, 2016 at 1:16 am

    Hello Paul
    I have a problem installing a second Exchange Server 2013 multirole, have two domain controllers one Windows Server 2008 R2 and one in 2012 R2 Exchange are on Windows 2012 R2 the first Exchange installed smoothly and upgrade to CU10, in time install the second Exchange Server gives me the following error, any help please.

    Error:
    The following error was generated when “$error.Clear();
    if ($RoleIsDatacenter -ne $true)
    {
    if (Test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
    {
    $sysMbx = $null;
    $name = “SystemMailbox{bb558c35-97f1-4cb9-8ff7-d53741dc928c}”;
    $dispName = “Microsoft Exchange”;
    Write-ExchangeSetupLog -Info (“Retrieving mailboxes with Name=$name.”);
    $mbxs = @(Get-Mailbox -Arbitration -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1 );
    if ($mbxs.Length -eq 0)
    {
    Write-ExchangeSetupLog -Info (“Retrieving mailbox databases on Server=$RoleFqdnOrName.”);
    $dbs = @(Get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
    if ($dbs.Length -ne 0)
    {
    Write-ExchangeSetupLog -Info (“Retrieving users with Name=$name.”);
    $arbUsers = @(Get-User -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
    if ($arbUsers.Length -ne 0)
    {
    Write-ExchangeSetupLog -Info (“Enabling mailbox $name.”);
    $sysMbx = Enable-Mailbox -Arbitration -Identity $arbUsers[0] -DisplayName $dispName -database $dbs[0].Identity;
    }
    }
    }
    else
    {
    if ($mbxs[0].DisplayName -ne $dispName )
    {
    Write-ExchangeSetupLog -Info (“Setting DisplayName=$dispName.”);
    Set-Mailbox -Arbitration -Identity $mbxs[0] -DisplayName $dispName -Force;
    }
    $sysMbx = $mbxs[0];
    }

    #

    Set the Organization Capabilities needed for this mailbox
    if ($sysMbx -ne $null)
    {
    # We need 1 GB for uploading large OAB files to the organization mailbox
    Write-ExchangeSetupLog -Info (“Setting mailbox properties.”);
    set-mailbox -Arbitration -identity $sysMbx -UMGrammar:$true -OABGen:$true -GMGen:$true -ClientExtensions:$true -MailRouting:$true -MaxSendSize 1GB -Force;
    }
    else
    {
    Write-ExchangeSetupLog -Info (“Cannot find arbitration mailbox with name=$name.”);
    }
    }
    else
    {
    Write-ExchangeSetupLog -Info “Skipping creating E15 System Mailbox because of insufficient permission.”
    }
    }
    ” was run: “Database is mandatory on UserMailbox. Property Name: Database”.

    Reply
    • Paul Cunningham says

      June 7, 2016 at 8:06 am

      “the first Exchange installed smoothly and upgrade to CU10”

      What are you using to install? You should be using the latest CU to install with, which is CU12. CU10 is already out of support.

      FYI, there’s no need to install any earlier build of Exchange 2013 and then upgrade to the latest CU. You can always install directly with the latest CU.

      Reply
  12. Aliasgar says

    July 27, 2016 at 5:21 am

    Hello,

    I am trying to install exchange 2013 on Windows server 2008 R2 Enterprise SP1. I’ve installed all the required bundles as mentioned in this page. But, while installing exchange server 2013 i get the following error.

    “the path to the language pack bundle was not found or reachable ”

    Please help!

    Reply

Leave a Reply Cancel reply

You have to agree to the comment policy.

Recent Articles

  • New Microsoft 365 role and certification: Enterprise Architect
  • Access Reviews for Azure AD/Office 365 Admin Roles
  • New Azure Certifications announced at Ignite 2018
  • Steve & Sigi on Exchange 2019 announcements at Ignite
  • My Ignite 2018 Recap
Practical 365

Popular Articles

Deploying the Microsoft Teams Desktop ClientDeploying the Microsoft Teams Desktop Client
Microsoft Is Changing How They Publish Office 365 IP Addresses and Urls for Firewall and Proxy AccessMicrosoft Is Changing How They Publish Office 365 IP Addresses and Urls for Firewall and Proxy Access
Automated Software License Expiration Notifications Using Microsoft FlowAutomated Software License Expiration Notifications Using Microsoft Flow
New Azure Active Directory Conditional Access Device Conditions for Device StateNew Azure Active Directory Conditional Access Device Conditions for Device State
Managing Change in Office 365Managing Change in Office 365

Training Courses

  • Configuring and Managing Office 365 Security
  • Office 365 Admin Playbook
  • Exchange 2016 Exam 70-345
  • Managing Exchange Mailboxes and Distribution Groups in PowerShell
  • More Training Courses...

Recommended Resources

  • Office 365 Security Resources
  • Office 365 Books
  • Exchange Server Books
  • Exchange Server Migrations
  • Exchange Analyzer
  • Digicert SSL Certificates

About This Site

Practical 365 is a leading site for Office 365 and Exchange Server news, tips and tutorials. Read more...
  • Email
  • Facebook
  • Twitter
  • RSS

Copyright © 2018 Quadrotech Solutions AG · Disclosure · Privacy Policy
Alpenstrasse 15, 6304 Zug, Switzerland

We are an Authorized DigiCert™ SSL Partner.