40 C
Dubai
Friday, May 2, 2025
Home Blog Page 43

Installing Exchange 2010 Sp3 on Windows Server 2008 R2 Sp1

Let us learn installing Exchange 2010 Sp3 on Windows Server 2008 R2 Sp1 in a Windows Server 2012 R2 Domain Environment

Step 1.

Windows Server 2008 R2 is Updated with Latest Patches use the Windows Setups Includes Service Pack 1 . Easier to Patch

Step 2.

Download and Install Latest “Microsoft Filter Pack” (64bit Version)

https://www.microsoft.com/en-in/download/details.aspx?id=17062

Install hotfix Microsoft Knowledge Base article 2550886 from http://support.microsoft.com/kb/2550886 to improve Windows Failover Cluster transient communication instability when deploying stretched Database Availability Groups across datacenters.

Step 3.

On the Start menu, navigate to All Programs > Accessories > Windows PowerShell. Open an elevated Windows PowerShell console (Right Click – Run as administrator), and run the following command.

Import-Module ServerManager

And Running this command for typical installation where all the roles will be installed HUB , CAS and Mailbox Servers

Add-WindowsFeature NET-Framework,RSAT-ADDS,Web-Server,Web-Basic-Auth,Web-Windows-Auth,Web-Metabase,Web-Net-Ext,Web-Lgcy-Mgmt-Console,WAS-Process-Model,RSAT-Web-Server,Web-ISAPI-Ext,Web-Digest-Auth,Web-Dyn-Compression,NET-HTTP-Activation,Web-Asp-Net,Web-Client-Auth,Web-Dir-Browsing,Web-Http-Errors,Web-Http-Logging,Web-Http-Redirect,Web-Http-Tracing,Web-ISAPI-Filter,Web-Request-Monitor,Web-Static-Content,Web-WMI,RPC-Over-HTTP-Proxy -Restart

 

Step 4.

Reboot the Server

Now Prerequisites Installed successfully

Step 5.

Now open Command Prompt “Browse the Command prompt into the setup location”

Below command will be Executed only if Exchange 2003 Exist in the Environment.

setup /PrepareLegacyExchangePermissions

or

setup /pl

We run this as we prepare the legacy (Exchange 2003) Server permissions,

Running this command won’t harm your environment .

Befor Running this command make sure your Domain Function Level and Forest Functional level in Windows Server 2003 is in native mode and your Exchange 2003 is in native mode,

Otherwise , It won’t allow you to install Exchange 2010

 

Step 6.

Preparing the Schema

Setup.com /PrepareSchema

 

Step 7.

Preparing Active Directory

Setup.com /preparead /OrganizationName:"First Organization"

This Switch can be removed if you have an Exchange Server already in your Organization

/OrganizationName:"First Organization"

Or if you want to change the organization name . you can use this switch

Step 8.

Now prepare the domain

Setup.com /Preparedomain

If you have multiple domains run

Setup.com /preparealldomains

Step 9.

Now Start the Setup

Step 10.

Choose Typical to Install HUB,CAS and Mailbox (Recommended by Microsoft – Block based All roles in One Server)

Give a Check mark for Automatically install Windows Server roles

Step 12.

If this is the internet facing server , Give the external domain name

Step 13.

If Exchange 2003 Exists in your Environment , you will get this option to configure mail flow between these Servers

Step 14.

Now Setup will Run for some time

Step 15.

Reboot your Server

image

Now Apply the latest Rollup Available . As of today Rollup 23 is available for Exchange 2010 SP3

clip_image001[7]

Download Microsoft Visual C++ 2013 Redistributable (x64) and Install

clip_image001[9]

clip_image001

Uncheck in IE Security Settings ( Temporarily only)

  • “Check for publisher’s certificate revocation”
  • “Check for server certificate revocation”

clip_image001[11]

Re run the setup and install

image

Message submission rate for this client has exceeded

421 4.4.2 Message submission rate for this client has exceeded the configured limit.

In my case Application was using Port 25 and using the app custom connector on load balanced Exchange 2016 servers and message rate limit was set to unlimited.

Get-ReceiveConnector SERVERNAME\* | FT Name,bindings,MessageRateLimit

image

Also verified in load balancer rate limit is set to unlimited. Lets see how to check the same in F5

Application services _ Applications _ smtp

image

Connection limit is set to Unlimited.

image

Solution –

Late realized its the Client proxy connector causing the bottleneck. Increased from 5 which is the default value . Changed to 30.

NOTE  : Below Commands sets the rate limit for all Exchange servers in the environment. Use Servername\ for specific server.

Get-ReceiveConnector "*\Client Proxy*" | FT Name,*RateLimit*
Get-ReceiveConnector "*\Client Proxy*" | Set-ReceiveConnector -MessageRateLimit 30

image

if you have issue on Port 587 IMAP mail submission- you should increase Rate Limit on below connector

  • Client Frontend Receive connector

Enable Opportunistic TLS with IronPort

Enabling Opportunistic TLS on your Anti spam Devices

A method which can described as “best effort”. When we configure our anti spam appliance to use the option of opportunistic TLS, each time that the anti spam appliance will try to send E-mail message to the internet , our mail system/anti spam will try to verify if the other side supports TLS (START TLS) .

If the destination messaging system supports TLS, our anti spam appliance will send the mail over a secure communication channel using the TLS protocol. if the desitination messaging system doesn’t support TLS it will fall back to un-encrypted communication channel.

Same steps taken while connecting for incoming emails as well . In this environment Iron Port anti spam appliances deliver and receive email.so lets see how to set TLS as Preferred / Opportunistic so that it works smoothly without affecting production emails.

In my Scenario my domain MX is below

A Records and MX Records
mx1.azure365pro.com 195.10.10.11
mx2.azure365pro.com 195.10.10.12
mx3.azure365pro.com 195.10.10.13
mx4.azure365pro.com 195.10.10.14

PTR Records as below _

195.10.10.11 mx1.azure365pro.com
195.10.10.12 mx2.azure365pro.com
195.10.10.13 mx3.azure365pro.com
195.10.10.14 mx4.azure365pro.com

Wild Card Certificate from Digicert

*.azure365pro.com

Choose Network _ Certificates

image

Lets Add Certificate .  Choose Import Certificate

image

Choose the file and enter the passphrase . Click Next

 

image

Click on Submit

image

Assign the certificate on the listeners used

image

Choose the Certificate imported and click on Submit and Commit

image

Lets see how to import on the Inbound Emails First.

image

Choose the certificate click submit and commit.

image

Now click on the default connector.

image

Set TLS Support to Preferred .

image

Submit and commit.

Easiest way to validate send a email to gmail . It will show you the message was transferred using TLS or unencrypted.

Before

image

After

image

Now lets see how to enable for incoming email.

Click on Mail Policies – Mail flow policies – Accepted

image

Now set TLS to Preferred . Submit and Commit.

image

you can validate on this site.

image

image

Now we have enabled Opportunistic TLS on outbound and inbound emails.

It will be used wherever possible.

Change Hostname of IronPort Appliance in a Cluster

ssh to the appliance

sethostname newhostname.domain.com

commit

image

Choose Network –> IP Interfaces

Choose the dataport

image

Enter new hostname

image

Submit and Commit.

  • Change the appropriate DNS in your MX record of your SMTP Domain (Godadddy for example)
  • Contact your IP Provider to change the proper PTR Record (AT&T for Example)

If IronPort is on a cluster _ Run Clustercheck to make sure there is no inconsistencies after renaming

image

VssWriterCallback interface 0x80070005 – Access is denied

While we run backup on Windows 2012 R2 Machines . We keep getting below events VssWriterCallback interface.  hr = 0x80070005, Access is denied. Even though it doesn’t cause any problem while taking backups. while troubleshooting VSS . it becomes tedious as it generates these events as soon as the vss been called by any application.

Log Name:      Application
Source:        VSS
Date:          7/21/2018 12:06:56 PM
Event ID:      8194
Level:         Error
Keywords:      Classic
Computer:      Exch.azure365pro.com
Description:
Volume Shadow Copy Service error: Unexpected error querying for the IVssWriterCallback interface.  hr = 0x80070005, Access is denied.
. This is often caused by incorrect security settings in either the writer or requestor process.

Operation:
Gathering Writer Data

Resolution –

Start  – Run dcomcnfg

image

Right Click My Computer – Properties

image

Click on Edit Default

image

Add Network Services with Read Access.

image

Restart Volume Shadow Copy Service

Troubleshooting Authentication prompts in Outlook

Authentication prompts in Outlook is one of the worst to troubleshoot in a Messaging Environment. But if your clear about your Architecture and the connectivity flow it could be much easier for you to isolate the issue. I have listed the most common scenarios . Lets see one by one.

  • Microsoft Office Patches
  • Understanding Outlook Behaviour and Credential Manager`with HTTP MAPI
  • Proxy Exclusions
  • Hardware Load Balancers
  • Custom Outlook Add-ins
  • Conflicting Outlook Anywhere Settings in Co-existence Environment.
  • Public Folders Co-existence not configured Properly.
  • Additional Mailboxes
  • SSL misconfiguration
  • Customized Virtual directory authentication settings
  • Autodiscover Request failure
  • Offline Address Books
  • Outlook Integration like Instant Messaging
  • Active Directory Replication
  • Primary Email Address and User Principal Name Mismatch in Office 365 Hybrid

Microsoft Office Patches –

I know Microsoft patches are crazy sometimes . But i strongly recommend to upgrade the Microsoft Office to the latest version to stay secured also so that you don’t work on a issue which is already fixed. There are many feature optimizations and Protocol enhancements made over these months . So before even start troubleshooting make sure you have the latest version of Office running . So that it helps you to isolate the issue faster and quicker.

Understanding Outlook Behaviour and Credential Manager`with HTTP MAPI –

when we are using RPC HTTP it wasn’t mandatory to store credentials on the local machine. But here comes the HTTP MAPI where it makes it mandatory for users to store the password in the credential manager when the users leave the domain network.

As of today when a domain joined machine leaves the domain / corporate / internal network and goes external. Outlook Prompts for credential to enter it once to store in the credential manager. So that it won’t ask you again. Until the password expires on it. This wasn’t the case or behaviour with RPC HTTP.

Seeing Connection Status in Outlook shows you. The Outlook is using RPC HTTP or HTTP MAPI.

Note : Office 365 / Exchange Server 2016 uses HTTP MAPI as default

image

when the user stores the credential . You can see them as

MicrosoftOffice16_DataSSPI:user@domain.com in the Windows Credential Manager

If user checks : Remember Password It shows as Enterprise. It means its going to ask again until the password expires from the External Network

If user doesn’t check Remember Password it will show as Logon Session . It means when user logs of and logs in . Credential are stored only for the logon session and it will prompt the user when the user is on the external network

image

Seeing in the Control Panel Credential Manager – Remembering Credentials

image

Seeing in the Control Panel _  Credential Manager without remembering the credentials

MicrosoftOffice16_DataSSPI:user@domain.com

Logon Session

image

this behavior is by design when user is on the External Network for Exchange Server 2016 .

Proxy Exclusions –

Proxy Exclusions play a major role when it comes to credential prompts .  Lets see the most seen issue is using a PAC file

if your using a pac file , Outlook may fail with Authn “Error” in connection status

image

Sample Proxy Settings on Pac File – http://pac.zscloud.net/azure365pro.pac

image

If your using On Premises you make it to bypass the traffic and go direct. So that when they are in Domain it goes to the Exchange Server Directly.

Sample –

image

if you using Exchange Online – Its preferred to go via proxy and you will not set direct settings on pac file. Make sure all Office 365 Urls are excluded from the proxy. For Example zscaler gives One Click Configuration for Office 365

image

Hardware Load Balancers –

ByPassing Hardware load balancers is more important as Outlook loses session persistence , Load balancer may give out the request to a different exchange server every time it connects. So most of the time it could be a configuration issue.  As we cannot go into details of those issues . As its wide scope. Just to make sure its not a load balancer issue. Make a host file pointing to the Exchange Server see if you are experiencing the same issue which can answer you many things

I have documented the steps on F5 if you use one https://www.azure365pro.com/configure-f5-ltm-exchange-server-2016/

Custom Outlook Add-ins –

There are many Add-ins for Outlook . Which may cause credential prompts. Outlook Safe mode can answer you those. Safe mode removes all the Addins on start up temporarily for you to test the behaviour of Outlook to isolate the same issue.

image

Conflicting Outlook Anywhere Settings in Co-existence Environment –

Credential prompts may be a reason when they are not able to proxy into the destination server. Where Outlook anywhere wasn’t mandatory in environments . When it comes to Exchange Server 2016 . Outlook anywhere has to be enabled on all Exchange 2010 servers for example . when you want to start with an co-existence. Outlook anywhere settings has to match between the legacy servers and the new exchange servers when you setup a coexistence . In order to have smooth client connectivity.

In my case . In my recent migrations  – Exchange Server 2010 was set to use NTLM . so made the same configuration on Exchange 2016 then the co-existence connectivity was successful.

image

Once the Co-existence period is over . we have put back recommended settings on Exchange Server 2016 having them to use negotiate

image

image

Basic authentication: If you select this authentication type, Outlook will prompt for username and password while attempting a connection with Exchange.

NTLM authentication: If you select this authentication type, exchange does not prompt users for a user name and password. The current Windows user information on the client computer is supplied by the browser through a cryptographic exchange involving hashing with the Web server. If the authentication exchange initially fails to identify the user, the browser will prompt the user for a Windows user account user name and password. So, when Outlook is trying to connect to Exchange and if the machine is domain joined, there isn’t a need to provide password.

Negotiate authentication: Enabled by default in Exchange 2013. This is a combination of Windows integrated authentication and Kerberos authentication. If we employ negotiate authentication, exchange will authenticate the client using NTLM authentication type and if unable to verify authenticity, will challenge the client to authenticate using a username and password.

As explained these Outlook anywhere settings are not matching between the legacy servers and the new prompts . There are more chances of getting Intermittent Outlook prompts

Public Folders Co-existence not configured Properly –

If you have Exchange 2016 and Exchange 2010 in your environment. Outlook may prompt or slow it down to connect when its not able to reach the public folders of Exchange 2010 via Exchange 2016.

In our case we have decided to remove Default Public Folder Database as we are not planning to migrate it to the new system.

image

Cleared using msExchHomePublicMDB attribute on Exchange 2010 Database

Start – run – adsiedit.msc – Configuration partition

CN=Services -> CN=Microsoft Exchange -> CN=(your organization name) -> CN=Administrative Groups -> CN=Exchange Administrative Group (FYDIBOHF23SPDLT) -> CN=Databases.

  • msExchHomePublicMDB

image

Now make sure Outlook is not trying to reach Exchange 2010 or legacy server public folders , You can always see the Outlook Connection status to check the same.

or you can try to setup co-existence https://technet.microsoft.com/en-us/library/dn690134(v=exchg.150).aspx

Additional Mailboxes –

Make sure Outlook is not configured with additional mailboxes . As sometime the primary mailbox may be on the new version and the additional mailbox is still on the legacy servers or vice versa which may cause prompts. You can always remove them and check it ,

image

SSL misconfiguration –

SSL misconfigurations like

  • Wrong Entries on Get-OutlookProvider
  • Unsupported wild card certs.

image

Customized Virtual directory authentication settings –

There could be change in Authentication settings.  Listed Exchange 2016 default authentication settings on virtual directories from a healthy environment.

MAPI  –

image

EWS –

image

OAB –

image

RPC –

image

Backend Site bindings –

image

MAPI _ Backend

image

EWS _ Backend

image

OAB _ Backend

image

Autodiscover Request failure –

Hold Ctrl key and right click on outlook icon on the task bar. test email configuration run autodiscover. verify its returning right urls in a timely manner.

image

Offline Address Books –

Make sure Offline Address Book assigned properly on Databases.

image

Make sure Outlook can download Offline Address books properly from the client side.

image

Instant Messaging Integration –

This prompt is one of the finest example where Cisco Jabber trying to get request data from Outlook before Outlook Connects to Exchange server. you can isolate the issue by simply removing such products from startup

image

Primary Email Address and User Principal Name Mismatch in Office 365 Hybrid

When your email and User Principal Name is not matching in Active Directory. You can see repeated Outlook authentication Prompts

Happy Authentication Prompts .

× How can I help you?