Skip to main content

Enable or Disable Exchange features (OWA, ActiveSync, MAPI, POP3, IMAP) for specified mailbox in the case you need to "pause" it

In certain cases you need to pause access to the user's mailbox without disabling user's account or Exchange mailbox. Therefore mailbox features should be disabled. I created a simple script that disables or enables all mailbox features on specified mailbox. You can download the script here Pause_Mailbox_Features_For_Mailbox.ps1

# -----------------------------------------------------------------------------------
#
# Enter mailbox name you want to "pause". Use Get-Mailbox command to get correct name

# Be careful when using this script since it disables or enables Exchange features
# for a specified user mailbox.
#
# If this is not your intention, don't use it.
# This script is provided "AS IS" with no warranties, and confers no rights.
#
# Check www.exchangelog.info for more useful information
#
#------------------------------------------------------------------------------------

# BEGIN script


$User = read-host "Please enter the users mailbox name";

$caption = "Disable / Enable";
$message = "What do you want to do with mailbox features, Enable or Disable them?";
$Enabled = new-Object System.Management.Automation.Host.ChoiceDescription "&Enable";
$Disabled = new-Object System.Management.Automation.Host.ChoiceDescription "&Disable";
$choices = [System.Management.Automation.Host.ChoiceDescription[]]($Disabled,$Enabled);
$answer = $host.ui.PromptForChoice($Caption,$message,$choices,0);

#Disable Exchange features for specified mailbox


#Disable OWA

Set-CASMailbox -id $User -OWAEnabled $answer

if($answer -eq '0') {

    Write-Host "OWA disabled" 
} else { 
    Write-Host "OWA is enabled" 
}

#Disable ActiveSync

Set-CASMailbox -id $User -ActiveSyncEnabled $answer

if($answer -eq '0') {

    Write-Host "ActiveSync disabled" 
} else { 
    Write-Host "ActiveSync is enabled" 
}

#Disable MAPI

Set-CASMailbox -id $User -MAPIEnabled $answer

if($answer -eq '0') { 

    Write-Host "MAPI disabled" 
} else { 
    Write-Host "MAPI is enabled" 
}

#Disable POP3


Set-CASMailbox -id $User -PopEnabled $answer


if($answer -eq '0') { 

    Write-Host "POP3 disabled" 
} else { 
    Write-Host "POP3 is enabled" 
}

#Disable IMAP

Set-CASMailbox -id $User -IMAPEnabled $answer

if($answer -eq '0') {

    Write-Host "IMAP disabled" 
} else { 
    Write-Host "IMAP is enabled" 
}

# END script

Comments

Popular posts from this blog

Netscaler vs Exchange 2019 "time out during ssl handshake stage

If you are using Citrix Netscaler as load balancer in front of Exchange 2019 server you must know this: Microsoft Exchange 2019 is secured by default and allows only TLS 1.2. Therefore default schannel settings are as follows (using IISCrypto tool from Nartac Software): While Citrix Netscaler offers following Cipher Suites: TLS_RSA_WITH_AES_256_CBC_SHA TLS_RSA_WITH_AES_128_CBC_SHA TLS_DHE_RSA_WITH_AES_256_CBC_SHA TLS_DHE_RSA_WITH_AES_128_CBC_SHA TLS_DHE_DSS_WITH_AES_256_CBC_SHA TLS_DHE_DSS_WITH_AES_128_CBC_SHA TLS_RSA_WITH_DES_CBC_SHA TLS_RSA_EXPORT_WITH_DES40_CBC_SHA TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 TLS_DHE_DSS_WITH_DES_CBC_SHA TLS_DHE_DSS_EXPORT1024_WITH_DES_CBC_SHA TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA TLS_DHE_RSA_WITH_DES_CBC_SHA TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA TLS_RSA_EXPORT1024_WITH_RC2_CBC_56_MD5 TLS_DH_anon_WITH_DES_CBC_SHA TLS_DH_anon_WITH_AES_128_CBC_SHA TLS_DH_anon_WITH_AES_256_CBC_SHA TLS_DH_anon_EXPORT_WITH_DES40_CBC_SHA Now, you will fi

Reason: [{LED=250 2.1.5 RESOLVER.GRP.Expanded; distribution list expanded};{MSG=};{FQDN=};{IP=};{LRT=}]

 If you got this error checking the mail flow for a distribution group, it means the distribution group is closed and only internal senders can send e-mail to this group. When outside user sends e-mail to this group you get  Reason: [{LED=250 2.1.5 RESOLVER.GRP.Expanded; distribution list expanded};{MSG=};{FQDN=};{IP=};{LRT=}] Set Delivery for this group to internal and external users and your problem will be solved. 

Ports that need to be open on Firewall for Edge Transport servers

Ports that need to be open on firewall for Edge Server subscription with Hub Server to function properly: For Inbound traffic: SMTP - TCP port 25 (from Internet) SMTP - TCP port 25 (from Edge server to Hub server on internal network) For Outbound traffic: SMTP - TCP/UDP port 25 (from Edge to Internet) SMTP - TCP/UDP port 25 (from Hub to Edge server) LDAP for EdgeSync - TCP port 50389 (from Hub to Edge server) Secure LDAP for EdgeSync - TCP port 50636 (from Hub to Edge server) Since Edge server needs to communicate with Hub server it is important that it can resolve Hub transport servers by FQDN and Hub transport servers must be able to resolve Edge servers by its FQDNs. To accomplish this you need to either open 53 (DNS) port and configure internal network adapter to use internal DNS but as a security precaution I would suggest to enter DNS records for Edge servers on local DNS manually and to fill hosts file on Edge servers with FQDNs for Hub transport servers.