Right from Exchange 2013 Exchange Administrative Center is integrated with Exchange Control Panel (ECP) and is available practically from every location in network (LAN, Internet) Unless and until we disable them.
Right after the new Exchange deployment in any environment it is very important to disable the external ECP access on the servers .
Below are the options available to disable the EAC :
1) We can install one more server for internal ECP access only and do not add them in the LB, Which will consume another server just for this functionality alone.
2) Install a second website with ECP and OWA virtual directories on the internet-faced CAS. We need to assign a second IP address to our server on the second network adapter installed in a CAS server.This is painful to maintain after the every CU updates.
3) Use IIS IP and domain restrictions in Windows server 2012 to limit access only to /ecp on internal IP’s.By doing this we can allow Only hosts in the required subnet range to access the ecp.
But in Exchange 2013 restricting ECP will stop the users to access the ecp features in owa ( OWA options) like they have manage out of office, delivery reports, manage mobile devices etc.., . All these end users OWA ecp features will be blocked.
If access is turned off in Exchange 2013,we will receive this below message
404 – website not found error
But from Exchange 2016 Disabling the EAC on the Exchange server 2016 will not disable the ECP end user level functionality completely. All the end user mailbox level OWA ECP functionality still remains available.
so which means the end user ECP design functionality has been changed from Exchange 2016 which is good for us :).
Having all the options above to restrict EAC from external network my colleague came up with one good option which was nice and thought of sharing it in this post.
Lets take an example scenario where i have 3 Mailbox Exchange 2016 servers load balanced to accept all the external client connections.
Below is the diagram on which we can configure the probes for ECP access only on 2 servers to accept the ecp connections and the remaining one we keep them disabled.
Benefits of doing this :
1) External end user owa ecp requests will reach mailbox 2 and mailbox3 and will serve the owa ecp options along with all other client requests for the users.
We need to run this command on Mailbox 2 and Mailbox 3 so that the Admin EAC is disabled on them.
Set-ECPVirtualDirectory -Identity “mailbox2\ecp (default web site)” -AdminEnabled $false
Set-ECPVirtualDirectory -Identity “mailbox3\ecp (default web site)” -AdminEnabled $false
After running this command the load balancer will send only the owa ecp ( OWA options) requests to the mailbox2 and mailbox3. Mailbox1 will not participate in serving the owa ecp ( OWA options) requests for the clients while it will serve all other requests like activesync,mapi, autodiscover,oab etc..,
2) We are actually utilizing all the resources of the Exchange 2016 Mailbox 1 servers to accept all client connections except for ecp requests.
So on Mailbox 1 What we are doing is having the EAC admin access always enabled. But we are not including the ECP component participation in the load balancer in serving the clients.
So we are disabling the ecp healthcheck alone on the mailbox1 server in my example
This component we are disabling because the load balancer should send all the other requests to this server to serve the clients while it will not send any ecp requests to this server.
Thanks & Regards
MVP – Office Servers & Services
Very nice idea.
Thanks Mat 🙂