MsExchange Blog Spot Telnet25

August 10, 2017

Exchange 2016 OU Picker is not Showing Organizational Units.

Filed under: General — telnet25 @ 1:02 am

Issue: Exchange 2016 CU5 , OU Picker is not showing Users within EAC ( Exchange Admin Center)

Cause: Web.config file needs to be modified “GetListDefaultResultSize” needs to be added with > number of existing OU ( Organizational Units) within the environment.

Notes: Web.config file is located on default exchange install directory under ECp folder “Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp”

It needs to be added with notepad ( opened with administrator privileges)

Each CU install will wipe these settings, therefore web.config file needs to be saved each time prior installing CU on Exchange 2016 Servers.

I have added few simple scripts to help you to develop baselines to implement in your environment

Web.config file is not server dependent, single file can be modified/saved and moved around Exchange 2016 servers, if desired.

  • Log onto Exchange 2016 Server, via RDP (Remote Desktop Protocol)
  • Provide your credentials at the logon.
  • Click windows tile and select PS (PowerShell)
  • Select to open PowerShell with administrator privileges
  • Type following press enter (note the installed directory)


  • Type notepad on the PowerShell (Open notepad with administrator privileges)
  • Click file and select Open on the administrative notepad
  • Drill down to ECP directory under Installed directory ;
  • Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp
  • Locate web.config ( make sure on the bottom change to all files to locate the web.config)
  • Open web.config file

Press CTRL + F to bring up find menu and type “</appSettings>”

  • Locate the section
  • Add this line ( it does not exist in Exchange 2016 )

# below line must be edited above “</appSettings>” Section within the Web.Config File

<add key=”GetListDefaultResultSize” value="1500" />

  • Comments Added ( same line with comments)

<!– Each CU Install will Wipe This File. –>

<!– Save a backup copy of web.config file –>

<!– After CU install you can copy and paste backup web.config file –>

<add key="GetListDefaultResultSize" value="1500" />

  • Open another PS window and copy and paste one line to get the number of OU’s in your environment and note the settings.

# You can easily get your current OU count with simple one liner

# Getting OU count


  • Close web config
  • From PowerShell Type

Restart-WebAppPool MSExchangeECPAppPool

  • Perform same task on Each Exchange 2016 Server listed below


  • Open web browser and type following URL press enter, replace the server name with proper server name that is applicable for your environment


  • Provide your credentials
  • Click Recipients
  • Click New, User Mailbox
  • Select new user
  • Click Browse
  • Make sure Under “Select an Organizational Unit” Section populates the OU Structure




  • You will be able to see the OU’s
  • PS scripts to

# Connect Remote Exchange 2016 Server, Specify Server to connect.

# Change the server FQDN with server name you have.

Function Connect_E16 {


[Parameter( Mandatory=$false)]

[string]$srv =""


$session = New-PSSession -ConfigurationName Microsoft.Exchange `

-ConnectionUri http://$srv/PowerShell/ `

-Authentication Kerberos

Import-PSSession $session -AllowClobber



write-host $null

Write-host "_Connecting Exchange 2016 Servers"


# Re-start MSExcangeECPAppPool Service on each Exchange Server

# (1)_.Exchange 2016 Array

foreach ($Server in $Servers)


$Servers = (Get-MailboxServer | ? {$_.AdminDisplayVersion -Match "^Version 15" }).name

Write-host "_Processing $Server"

Invoke-Command -ComputerName $server{

Write-host "()_Re-Starting MSExchangeECPAppPool Service "

Restart-WebAppPool MSExchangeECPAppPool

Write-host "_()Done" -f yellow

Write-host $Null


# Check Server Health




# Script : Health_Check_Required_Services.ps1

# Created : ISE 3.0

# Author(s) : casey.dedeal

# Date : 08/09/2017 09:23:23

# Org : ETC Solutions

# File Name :

# Comments :

# Assumptions :





Acknowledgements :

Limitations :

Known issues :


.\Health_Check_Required_Services.ps1 .ps1



Runs the script to perform health check on Exchange 2016 Servers



write-host $null

#(a)_.Re-start MSExchangeECPAppPool Service On all Exchange Servers

$Servers = (Get-MailboxServer | ? {$_.AdminDisplayVersion -Match "^Version 15" }).name


$Foreloop = foreach ($Server in $Servers)


Write-host "_Checking $Server Health" -f yellow

Test-ServiceHealth | select Role,RequiredServicesRunning,ServicesRunning,ServicesNotRunning


#Out-Grid Results

$Foreloop | Out-GridView

Make backup for Web.Config File




# Script : Copy_Web_Config_V1.ps1

# Created : ISE 3.0

# Author(s) : casey.dedeal

# Date : 08/09/2017 09:31:30

# Org : ETC Solutions

# File Name :

# Comments :

# Assumptions :





Acknowledgements :

Limitations :

Known issues :





Runs the script to make copy of Web Config file

Specify Exchange 2016 Server Name

After each RU install you need to put the file back



$user = $env:UserName

$dom = $env:UserDomain

$comp = $env:ComputerName

$date = get-date -Format yyyy-mm-dd

#(b)_.Source & Dest

$Source = "\\EXC01\d$\Program Files\Microsoft\Exchange Server\V15\ClientAccess\ecp\web.config"

$Dest = "C:\users\$user\Desktop\"

$file = "Web_Config_backup"

$Folder = $dest + $file + "_" + $date

$collec = $Source

write-host $null

write-host "——–$dom———-"

write-host "$user"

write-host "$comp"

Write-host "Copying Exchange 2016 Short-cuts" -f yellow

write-host "————————-"

#(c)_. Running foreach

foreach ($item in $collec)


If (Test-Path $source){

Write-host -fore yellow "Located $file "

New-Item -ItemType directory -Path $Folder

Copy-Item -Recurse $item -destination $Folder -Force


write-host -fore red "Source File cannot be located"

write-host -fore yellow " Script Will Stop in 5 seconds"

Start-Sleep -Seconds 5



Oz Casey, Dedeal
Systems Engineer (Blog) (Blog) (Twitter)


May 4, 2017

The setup wizard has determined that Certificate Revocation List(CRL) checking is enabled on this computer.

Filed under: General — telnet25 @ 12:13 am

On the Server ( windows 2012 R2)  you are having the issue, make a right click on Windows tile, and select run , type | control | and press enter. From control panel click view and change it to small icons, locate “Internet Options” double click on it to go to properties.Go to advance and drill down to “Security” section uncheck | Check for publisher’s certificate revocation”” click apply and close the window. Installing RU 16 on Exchange 2010 SP3.


Run the setup after the changes. When finished you can revert the changes back.


Oz Casey, Dedeal
Security+, Project +, Server + (Blog) (Blog) (Twitter)

March 2, 2017

Setting Throttling Policies For Cisco Unity

Filed under: General — telnet25 @ 7:27 pm

Recently I ran into issues with Cisco/Unity  within the Exchange 2010 environment. I wrote simple script to create Exchange Server Throttling policy based on CISCO’s white paper with their recommended values on the policy. Script can be found on TechNet Scripting Library


Few reminders with Cisco Unity: It is configured to work with EWS.Voice message put into user mailboxes via API , so you wont see Exchange server information within the message headers.  if you are seeing random users not getting their VM, check throttling policy to make sure the recommended values set accordingly.

EWSPercentTimeInCAS             : 300
EWSPercentTimeInMailboxRPC  : 200
EWSFindCountLimit 10000         : 10000
EWSPercentTimeinAD 100         : 100

Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

April 26, 2016

Create installation media for IFM

Filed under: General — telnet25 @ 3:29 am

There are times, when installing domain controller, you may want to choose install from media option to start with, remote sites Domain Controllers installation. Perhaps bandwidth is the concern. In similar situations we will prepare IFM to use. Log into your domain controller as an administrator. Open Command prompt with your administrator credentials. Click start on the run menu type cmd.exe and press enter and accept any UAC prompt. At the Administrator command prompt Type:

  1. Ntdsutil
  2. activate instance ntds
  3. IFM
  4. create sysvol full <Drive>:\<InstallationMediaFolder>



You can use Robocopy to move IFM media to destination server to prepare install from media on windows 2012 R2 environment.


You can download Robocopy script from TechNet Library

Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

April 7, 2016

Create Virtual Host via PowerShell

Filed under: General — telnet25 @ 3:43 am

This simple PowerShell script will assist you to configure virtual machines on your HyperV Server. Script will create virtual host , create virtual hard disks and mount the ISO file. All you have to do is , start the VM and follow install wizard to complete the settings.







# Script: Create_VM_App_Server_NR.ps1 
# Created With:ISE 3.0 
# Author: Casey Dedeal 
# Date: 04/06/2016 22:58:41 
# Organization:  ETC SOLUTIONS
# File Name: Create_VM_App_Server_NR.ps1 
# Comments:  First Version
Change these variables
$path = "A:\HyperV_" ( Change the Path )
$ISOPath = "A:\ISO\en_windows_server_2012_r2_x64_dvd_2707946.ISO"


Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

February 15, 2016

Configure ISE Profile For More Efficient Scripting

Filed under: General — telnet25 @ 3:57 am

Do you want your ISE to be more efficient, when writing scripts and getting your daily work done? If your answer is “yes” here is simple profile script to assist you. Download from TechNet Scripting Center.
You can simply add more, make sure you replace the server names to make it fit to your environment. Download above profile script and add below adds-on.

# Connect Exchange 2010 Remote PowerShell
  "Connect to Exchange 2010",
        $s = New-PSSession -ConfigurationName Microsoft.Exchange `
        -ConnectionUri `
        -Authentication Kerberos
        Import-PSSession $s

# Connect Lync Remote PowerShell
  "Connect to Lync Remote PowerShell",
     $lync_S = New-PSSession -ConnectionUri `
               -SessionOption $lyncOptions `
               -Authentication NegotiateWithImplicitCredential `
               -Authentication Kerberos
     Import-PSSession $lync_S


Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

February 11, 2016

Windows 2012 R2 Deploy Certificate Authority Step by Step Part-1

Filed under: General — telnet25 @ 4:00 am
  • Log on to <Your_Windows_2012_R2_Server> as a domain administrator.
  • Click Start, | PowerShell| Type "ServerManager" , press enter 
  • Click Add roles | next | leave default


  • Click | Next


  • Select | Active Directory Certificate Services


  • Add required Futures | Press twice Next


  • Click Next again | Select Certificate Authority | CA Web Enrolment


  • Next | Install


  • Go back to Server Manager | Post Deployment Configuration


  • Next


  • Select | Certificate Authority | CA Web Enrolment


  • Select | Enterprise CA | Next


  • Select | Root CA | Next


  • Select | Create a new Private Key | Next


  • Select | RSA # Microsoft Software Key Storage Provider | Key Length 4096 | SHA256


  • Click Next | Accept default


  • Accept Default | Click Next


  • Accept Defaults | Click Next


  • Click | Configure


  • Results page | Click Close


Part 1 is completed.

MS link

Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter

January 29, 2016

VMware workstation This virtual machine appears to be in use.

Filed under: General — telnet25 @ 9:27 pm

If you are running your own LAB with VMWare workstation and getting the erros “ This  virtual machine apperas to be in use” here is qucik solution.


If you try to take the ownership of the virtual host, you will receive “Could not open virtual machine …” warnings and it will ask you if you want to remove it from library. Which for obvious reasons you would not want to do that


Open the virtual machine folder and locate the folders ends wih .L


You will need to delete them……


If you try to take the ownership of the virtual host, you will receive “Could not open virtual machine …” warnings and it will ask you if you want to remove it from library. Which for obvious reasons you would not want to do that

After deletion you will noticed the Virtual host will start with no issues. What are these folders and files in them for ? The running VM machnine will lock the files to prevent conflics and consistency problems on the virtual disks, if not they could get corrupted.The lock files gets created on the same directory as VMDK files. If you like to read more here is the article.

Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

January 25, 2016

Moving and Seizing FSMO Roles Via PowerShell

Filed under: General — telnet25 @ 4:24 am

In Active directory forest, there are five FSMO roles that are assigned to one or more domain controllers. Two of these FSMO roles are forest wide and it can only be seen at Forest level. Three of the FSMO roles are domain wide.

Schema Master FSMO Role

Responsible for performing updates to the directory schema. Schema Master Role can process updates to the directory schema. Once the Schema update is complete, it is replicated from the schema master to all other DCs in the directory. There is only one schema master per directory.

Domain Naming Master FSMO Role

The domain naming master FSMO role holder is the DC responsible for making changes to the forest-wide domain name space of the directory. Domain Name Master DC is can add or remove a domain from the directory. It can also add or remove cross references to domains in external directories.

RID Master FSMO Role

The RID master FSMO role holder is the single DC responsible for processing RID Pool requests from all DCs within a given domain. It is also responsible for removing an object from its domain and putting it in another domain during an object move.

When a DC creates a security principal object such as a user or group, it attaches a unique Security ID (SID) to the object. This SID consists of a domain SID (the same for all SIDs created in a domain), and a relative ID (RID) that is unique for each security principal SID created in a domain.

Each Windows DC in a domain is allocated a pool of RIDs that it is allowed to assign to the security principals it creates. When a DC’s allocated RID pool falls below a threshold, that DC issues a request for additional RIDs to the domain’s RID master. The domain RID master responds to the request by retrieving RIDs from the domain’s unallocated RID pool and assigns them to the pool of the requesting DC. There is one RID master per domain in a directory.

PDC Emulator FSMO Role

The PDC emulator is necessary to synchronize time in an enterprise. Windows includes the W32Time (Windows Time) time service that is required by the Kerberos authentication protocol. All Windows-based computers within an enterprise use a common time. The purpose of the time service is to ensure that the Windows Time service uses a hierarchical relationship that controls authority and does not permit loops to ensure appropriate common time usage.

The PDC emulator of a domain is authoritative for the domain. The PDC emulator at the root of the forest becomes authoritative for the enterprise, and should be configured to gather the time from an external source. All PDC FSMO role holders follow the hierarchy of domains in the selection of their in-bound time partner.

In a Windows domain, the PDC emulator role holder retains the following functions:

Password changes performed by other DCs in the domain are replicated preferentially to the PDC emulator.

Authentication failures that occur at a given DC in a domain because of an incorrect password are forwarded to the PDC emulator before a bad password failure message is reported to the user.

Account lockout is processed on the PDC emulator. Any lockout notification is sent to PDC immediately

Windows clients (workstations and member servers) and down-level clients that have installed the distributed services client package do not perform directory writes (such as password changes) preferentially at the DC that has advertised itself as the PDC; they use any DC for the domain.

Password changes performed by other DCs in the domain are replicated preferentially to the PDC emulator.

If a logon authentication fails at a given DC in a domain due to a bad password, the DC will forward the authentication request to the PDC emulator to validate the request against the most current password. If the PDC reports an invalid password to the DC, the DC will send back a bad password failure message to the user.

All domain controllers which receives an incorrect authentication request will poll the PDC Emulator as a “second opinion” before rejecting the user. (PDC always knows the most recently modified passwords)

Account lockout is processed on the PDC emulator. Any account lockout is immediately sent as a notification to the PDC Emulator.

Infrastructure FSMO Role

When an object in one domain is referenced by another object in another domain, it represents the reference by the GUID, the SID (for references to security principals), and the DN of the object being referenced. The infrastructure FSMO role holder is the DC responsible for updating an object’s SID and distinguished name in a cross-domain object reference.

NOTE: The Infrastructure Master (IM) role should be held by a domain controller that is not a Global Catalog server(GC). If the Infrastructure Master runs on a Global Catalog server it will stop updating object information because it does not contain any references to objects that it does not hold. This is because a Global Catalog server holds a partial replica of every object in the forest. As a result, cross-domain object references in that domain will not be updated and a warning to that effect will be logged on that DC’s event log.

If all the domain controllers in a domain also host the global catalog, all the domain controllers have the current data, and it is not important which domain controller holds the infrastructure master role.


Moving and Seizing FSMO roles:

Before exploring with PowerShell make sure you understand the difference in between moving the FSMO roles compared to Seizing them. Moving, both DC’s involved are alive and willingly to give up and accept the new role. Changes to. DIT database replicated among the domain controllers. Seizing involves the current FSMO role owner is no longer available and its role forcibly moved to another available DC. When you move forcibly FSMO roles (-Force) you cannot bring the DC back online as it would create issues.


PS C:\> Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole SchemaMaster

PS C:\> Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole DomainNamingMaster

PS C:\> Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole PDCEmulator

PS C:\> Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole RIDMaster

PS C:\> Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole InfrastructureMaster

Moving All FSMO Roles , is much easier

PDC Emulator – 0

RID Master – 1

Infrastructure Master – 2

Schema Master – 3

Domain Naming Master – 4

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRoles 0,1,2,3,4


Seizing FSMO Roles:

Once last time, be very cautious when using –Force (Seizing) option

Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole PDCEmulator -Force

Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole RIDMaster -Force

Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole InfrastructureMaster -Force

Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole SchemaMaster -Force

Move-ADDirectoryServerOperationMasterRole -Identity DC2 -OperationMasterRole DomainNamingMaster -Force

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 0

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 1

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 2

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 3

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 4

Move-ADDirectoryServerOperationMasterRole -Identity DC2 –OperationMasterRole 5

Oz Casey, Dedeal (MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

January 24, 2016

Active DIRECTORY Interview Questions PART 1

Filed under: General — telnet25 @ 8:12 pm



New year  and new challange, perhaps your current contract is not doing well and you have decided to move on. If you are going to head up interview you might want to take your time and look at the questions and answers I have posted online. Purpose of these questions to improve your change getting a new job, perhaps push you to face with reality. As I do interviews with my peers most of the time I wanted to share few tips to help and assist with interview process. If these questions will challange you, you must invest time on your Active Directory knowladge and make sure you are upto current.

Getting to Know Your Basics

This basic guidelines, questions and answers will provide you information which should assist with your interview.
You should study and get much better, deeper knowledge when it comes to Active Directory.

Dress up decent on your interview, look clean this always helps , promotes positive energy.
Don’t go to interview tired, you need to be fresh.
Make multiple copy of your resume and take it with you, when you sit down in the interview room, hand over your resume to people who don’t have them.
Your answers need to be brief and professional if you are calming to be Senior Engineer. When you are asked to provide more comprehensive information, provide technical details.
It is perfectly okay to say “I do not know” I will look it up and get back to you. Do not “BS” Most likely the person who is asking you the question do know the correct answer.
If you are asked to rate your skill set, scale from 1 to 10, 1 being weak, and 10 is strong” rate yourself always in humble way. Most experience and smart administrators and Engineers will rate themselves solid 7, instead of 10.
At the end of the interview, when you are asked, “Do you have any questions to us” you must show some interest and ask questions if you want the job

Good Luck with your interview and here is the download link for Interview Questions


As professinal courtacy , please leave your comments and once again good luck with your interview.


Oz Casey, Dedeal  ( MVP North America)
Security+, Project +, Server + (Blog) (Blog) (Twitter)

Next Page »

Create a free website or blog at