Category Archives: Exchange

Exchange 2007 Migration to new server

I needed to migrate a failing Exchange server, running on Server 2003 to a new server, running Server 2008 R2.  I would also be decommissioning public folders.  This is an outline of the steps I took:

Backup the SSL Certificate on the old server – details here (new window)

Backup the Exchange database, test it, and put it aside.
Backup the system state of the old server, test it, and put aside.
Backup the system state of a domain controller, test it and put aside.
Export CAS settings – details here (new window)

Backup all the web.config files from the old server.
Export mailbox settings:

## Powershell
Get-ExchangeAdministrator | FL > C:OriginalServerName.txt
Get-MailboxServer | FL >> C:OriginalServerName.txt
Get-ExchangeServer | FL >> C:OriginalServerName.txt
Get-StorageGroup -Server | FL >> C:OriginalServerName.txt
Get-MailboxDatabase | FL >> C:OriginalServerName.txt
Get-PublicFolderDatabase | FL >> C:OriginalServerName.txt
Get-ClientAccessServer | FL >> C:OriginalServerName.txt
Get-UMServer | FL >> C:OriginalServerName.txt
Get-RecieveConnector | FL >> C:OriginalServerName.txt
Get-SendConnector | FL >> C:OriginalServerName.txt

Install the new server OS
Install Exchange
Add the new server to monitoring and alerting system if required
We will migrate the Roles in this order: CAS, HUB, Mailbox, (Edge and UM if installed)
Install SSL Certificate
Test internal OWA
Recreate Send connectors
Recreate Receive connectors
Test receive and send connectors
Check that tranport rules are correct
Create and test mailboxes
Configure backup on new server
Test restore new server
Set/Check mailbox retention
Move mailboxes
Setup DNS Alias in DNS for the new server if required
Export Public folders to PST – put aside

Change OAB to web based – details here (new window)
Delete all the public folders
Delete the public folder database – details here (new window)
Remove old exchange server from monitoring and alerting system if used
Remove old server from backup system
Uninstall Exchange from old server
Reset local admin password on old server
Remove old server from domain
Delete any backups taken as appropriate

Exchange 2010 Tracking logs and Powershell

When using the EMC to search tracking logs, you cannot search with wildcards.  You can use the Exchange Shell to do this.
Get-MessageTrackingLog returns an object with the following properties and methods:

 

Name
MemberType
 Definition
—-
———-
 ———-
Equals
Method
 bool Equals(System.Object obj)
GetHashCode
Method
 int GetHashCode()
GetType
Method
 type GetType()
ToString
Method
 string ToString()
ClientHostname
Property
 System.String ClientHostname {get;}
ClientIp
Property
 System.String ClientIp {get;}
ConnectorId
Property
 System.String ConnectorId {get;}
EventData
Property
 System.Collections.Generic.KeyValuePair`2[[System.String, mscorlib, Version=2.0…
EventId
Property
 System.String EventId {get;}
InternalMessageId
Property
 System.String InternalMessageId {get;}
MessageId
Property
 System.String MessageId {get;}
MessageInfo
Property
 System.String MessageInfo {get;}
MessageLatency
Property
 System.Nullable`1[[Microsoft.Exchange.Data.EnhancedTimeSpan, Microsoft.Exchange…
MessageLatencyType
Property
 Microsoft.Exchange.Management.TransportLogSearchTasks.MessageLatencyType Messag…
MessageSubject
Property
 System.String MessageSubject {get;}
RecipientCount
Property
 System.Nullable`1[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, Pu…
Recipients
Property
 System.String[] Recipients {get;}
RecipientStatus
Property
 System.String[] RecipientStatus {get;}
Reference
Property
 System.String[] Reference {get;}
ReturnPath
Property
 System.String ReturnPath {get;}
Sender
Property
 System.String Sender {get;}
ServerHostname
Property
 System.String ServerHostname {get;}
ServerIp
Property
 System.String ServerIp {get;}
Source
Property
 System.String Source {get;}
SourceContext
Property
 System.String SourceContext {get;}
Timestamp
Property
 System.DateTime Timestamp {get;}
TotalBytes
Property
 System.Nullable`1[[System.Int32, mscorlib, Version=2.0.0.0, Culture=neutral, Pu…
 
Given this information, we can use these properties to search tracking logs for required details.  EG:
To get a list of all emails from any address @gmail.com between the dates 10-07-14 and 15-07-14, use the following command (must use MM/DD/YYYY date format, even though regional settings are for Australia!) (one line):
Get-MessageTrackingLog –ResultSize Unlimited –Start “07-10-2014” –End “07-15-2014” | where {$_.sender –like “*@gmail.com”}
Combining this with a select-object we can get specific details about the object returned.  To show the TimeStamp, Source, Event ID, Sender, Recipients, Message Subject and Size, use the following (one line):
Get-MessageTrackingLog –ResultSize Unlimited –Start “07-10-2014” –End “07-15-2014” | where {$_.sender –like “*@gmail.com”} | Select-Object Timestamp, Source, EventID,Sender, {$_.Recipients}, MessageSubject,TotalBytes
You can also use Export-CSV to get the data into a CSV (one line):
Get-MessageTrackingLog –ResultSize Unlimited –Start “07-10-2014” –End “07-15-2014” | where {$_.sender –like “*@gmail.com”} | Select-Object Timestamp, Source, EventID,Sender, {$_.Recipients}, MessageSubject,TotalBytes | –Export-CSV –path export.csv
Search with a wildcard subject (not case sensitive) (one line):
Get-MessageTrackingLog –ResultSize Unlimited | where {$_.MessageSubject –like “*Dell*”} | Select-Object Timestamp, Source, EventID,Sender, {$_.Recipients}, MessageSubject,TotalBytes

Exchange Version Numbers

Edit 26-11-13: Added 2010 SP3 UR3 and 2013 CU3
Edit 28-02-14: Added 2010 SP3 UR4, 5, 2007 SP3 UR10, 11, 12, 13 and 2013 UR3 and SP1

I often have trouble trying to determine which updates have been applied to an Exchange server.  There are a number of different methods for each server, and there are a number of different resources to find this information.  I have aggregated these into this post.

Exchange 5.5 – Exchange Administrator Method
Exchange 5.5 – File Version Method
Exchange 2000 – System Manager Method
Exchange 2000 – File Version Method
Exchange 2003 – System Manager Method
Exchange 2003 – File Version Method
Exchange 2007 – Exchange Management Console Method
Exchange 2007 – Exchange Management Shell Method
Exchange 2007 – File Version Method
Exchange 2010 – Outlook Web App Method
Exchange 2010 – Exchange Management Console Method
Exchange 2010 – Exchange Management Shell Method
Exchange 2010 – File Version Method
Exchange 2013 – Exchange Control Panel Method
Exchange 2013 – Exchange Management Shell Method
Exchange 2013 – File Version Method







Exchange 5.5
RTM 5.5.1460
Exchange 5.5 SP1 5.5.1960
Exchange 5.5 SP2 5.5.2448
Exchange 5.5 SP3 5.5.2650
Exchange 5.5 SP4 5.5.2653


Exchange 2000
RTM 6.0.4417
Exchange 2000 SP1 6.0.4712
Exchange 2000 SP2 6.0.5762
Exchange 2000 SP3 6.0.6249
Exchange 2000 Post-SP3 August 2008 6.0.6620.9


Exchange 2003
RTM 6.5.6944
Exchange 2003 SP1 6.5.7226
Exchange 2003 SP2 6.5.7638


Exchange 2007
SP3 Update Rollup 13 08.03.0348.2


Exchange 2007
SP3 Update Rollup 12 08.03.0342.004


Exchange 2007
SP3 Update Rollup 11 08.03.0327.001


Exchange 2007
SP3 Update Rollup 10 08.03.0298.001


Exchange 2007
SP3 Update Rollup 9 08.03.0297.002
Exchange 2007 SP3 Update Rollup 8-v3 08.03.0279.006
Exchange 2007 SP3 Update Rollup 8-v2 08.03.0279.005
Exchange 2007 SP3 Update Rollup 8 08.03.0279.003
Exchange 2007 SP3 Update Rollup 7 08.03.0264.000
Exchange 2007 SP3 Update Rollup 6 8.03.0245.002
Exchange 2007 SP3 Update Rollup 5 8.03.0213.001
Exchange 2007 SP3 Update Rollup 4 8.03.0192.001
Exchange 2007 SP3 Update Rollup 3-v2 8.03.0159.002
Exchange 2007 SP3 Update Rollup 2 8.03.0137.003
Exchange 2007 SP3 Update Rollup 1 8.03.0106.002
Exchange 2007 SP3 8.03.0083.006
Exchange 2007 SP2 Update Rollup 5 8.2.305.3
Exchange 2007 SP2 Update Rollup 4 8.2.254.0
Exchange 2007 SP2 Update Rollup 3 8.2.247.2
Exchange 2007 SP2 Update Rollup 2 8.2.234.1
Exchange 2007 SP2 Update Rollup 1 8.2.217.3
Exchange 2007 SP2 8.02.0176.002
Exchange 2007 SP1 Update Rollup 10 8.1.436.0
Exchange 2007 SP1 Update Rollup 9 8.1.393.1
Exchange 2007 SP1 Update Rollup 8 8.1.375.2
Exchange 2007 SP1 Update Rollup 7 8.1.359.2
Exchange 2007 SP1 Update Rollup 6 8.1.340.1
Exchange 2007 SP1 Update Rollup 5 8.1.336.1
Exchange 2007 SP1 Update Rollup 4 8.1.311.3
Exchange 2007 SP1 Update Rollup 3 8.1.291.2
Exchange 2007 SP1 Update Rollup 2 8.1.278.2
Exchange 2007 SP1 Update Rollup 1 8.1.263.1
Exchange 2007 SP1 8.01.0240.006
Exchange 2007 RTM Update Rollup 7 8.0.813.0
Exchange 2007 RTM Update Rollup 6 8.0.783.2
Exchange 2007 RTM Update Rollup 5 8.0.754.0
Exchange 2007 RTM Update Rollup 4 8.0.744.0
Exchange 2007 RTM Update Rollup 3 8.0.730.1
Exchange 2007 RTM Update Rollup 2 8.0.711.2
Exchange 2007 RTM Update Rollup 1 8.0.708.3
Exchange 2007 RTM 8.0.685.25


Exchange 2010
RTM 14.0.639.21
Exchange 2010 RTM Update Rollup 1 14.0.682.1
Exchange 2010 RTM Update Rollup 2 14.0.689.0
Exchange 2010 RTM Update Rollup 3 14.0.694.0
Exchange 2010 RTM Update Rollup 4 14.0.702.1
Exchange 2010 RTM Update Rollup 5 14.0.726.0
Exchange 2010 SP1 Update Rollup 14.1.218.15
Exchange 2010 SP1 Update Rollup 1 14.1.255.2
Exchange 2010 SP1 Update Rollup 2 14.1.270.1
Exchange 2010 SP1 Update Rollup 3 14.1.289.3
Exchange 2010 SP1 Update Rollup 3-v3 14.1.289.7
Exchange 2010 SP1 Update Rollup 4 14.1.323.1
Exchange 2010 SP1 Update Rollup 4-v2 14.1.323.6
Exchange 2010 SP1 Update Rollup 5 14.1.339.1
Exchange 2010 SP1 Update Rollup 6 14.1.355.2
Exchange 2010 SP1 Update Rollup 7 14.1.421.0
Exchange 2010 SP1 Update Rollup 7-v2 14.1.421.2
Exchange 2010 SP1 Update Rollup 7-v3 14.1.421.3
Exchange 2010 SP1 Update Rollup 8 14.1.438.0
Exchange 2010 SP2 14.2.247.5
Exchange 2010 SP2 Update Rollup 1 14.2.283.3
Exchange 2010 SP2 Update Rollup 2 14.2.298.4
Exchange 2010 SP2 Update Rollup 3 14.2.309.2
Exchange 2010 SP2 Update Rollup 4 14.2.318.2
Exchange 2010 SP2 Update Rollup 4-v2 14.2.318.4
Exchange 2010 SP2 Update Rollup 5 14.2.328.5
Exchange 2010 SP2 Update Rollup 5-v2 14.2.328.10
Exchange 2010 SP2 Update Rollup 6 14.2.342.3
Exchange 2010 SP2 Update Rollup 7 14.2.375.0
Exchange 2010 SP3 14.3.123.4
Exchange 2010 SP3 Update Rollup 1 14.3.146.0
Exchange 2010 SP3 Update Rollup 2 14.3.158.1
Exchange 2010 SP3 Update Rollup 3 14.3.169.1
Exchange 2010 SP3 Update Rollup 4 14.03.174.001
Exchange 2010 SP3 Update Rollup 5 14.03.0181.006


Exchange 2013
Preview 15.0.466.13
Exchange 2013 RTM 15.0.516.32
Exchange 2013 CU1 15.0.620.29
Exchange 2013 CU2 15.0.712.22
Exchange 2013 CU2-V2 15.0.712.24
Exchange 2013 CU3 15.0.775.38
Exchange 2013 SP1 15.0.0847.032









EXCHANGE 5.5









Exchange 5.5 – Exchange Administrator Method

Open Microsoft Exchange Administrator

Expand the Domain, and select Servers
The version number is listed for each server.











Exchange 5.5 – File Version Method

Navigate to the exchsrvrbin directory. Right click store.exe and select Properties

Select the Version tab










EXCHANGE 2000









Exchange 2000 – System Manager Method

Open Microsoft Exchange –> System Manager

Expand the Organization group, and select Servers
The version number is listed for each server.

This method will only show upto SP3.  Use the File Version method to verify later updates









Exchange 2000 – File Version Method

Navigate to the exchsrvrbin directory.  Right click store.exe and select Properties

Select the Version tab

Update ‘Post-SP3 August 2008’ will show 6.0.6620.9 in the version section, however in the comments it displays ‘Service Pack 4’










EXCHANGE 2003









Exchange 2003 – System Manager Method

Open Microsoft Exchange –> System Manager

Expand the Organization group, and select Servers
The version number is listed for each server.










Exchange 2003 – File Version Method

Navigate to the program filesexchsrvrbin directory. Right click store.exe and select Properties

Select the Version tab










EXCHANGE 2007









Exchange 2007 – Exchange Management Console Method

Open Microsoft Exchange Server 2007 –> Exchange Management Console

Select Help –> About Exchange Server 2007



You can also check the server version listed for each role by expanding the roles under Server Configuration.









Exchange 2007 – Exchange Management Shell Method

Open Microsoft Exchange Server 2007 –> Exchange Management Shell

Type the command:
Get- ExchangeServer | fl name,edition,admindisplayversion










Exchange 2007 – File Version Method

Navigate to the program filesmicrosoftexchangebin directory. Right click store.exe and select Properties

Select the Details tab.










EXCHANGE 2010









Exchange 2010 – Outlook Web App Method

Open Outlook Web App

Click the dropdown arrow next the question mark, and select about.

The version number is listed








 
Open Microsoft Exchange Server 2010 –> Exchange Management Console
Select Help –> About Exchange Server 2010
 You can also check the server version listed for each role by expanding the roles under Server Configuration.








 
Open Microsoft Exchange Server 2010 –> Exchange Management Shell
Type the command:
Get-ExchangeServer | fl name,edition,admindisplayversion







Navigate to the program filesmicrosoftexchange serverv14bin directory. Right click store.exe and select Properties
 
Select the Details tab.
 
 

 







Exchange 2013









Exchange 2013 – Exchange Control Panel Method

Open the Exchange Control Panel

Select Servers










Exchange 2013 – Exchange Management Shell Method

Open Exchange Management Shell
 
Type the command:

Get-ExchangeServer | fl name,edition,admindisplayversion










Exchange 2013 – File Version Method

Navigate to program filesmicrosoftexchange serverv15bin folder.  Right click ExSetup.exe and select Properties

Select the Details tab









Reference: http://support.microsoft.com/kb/158530
http://technet.microsoft.com/en-us/library/hh135098(v=exchg.141).aspx
http://social.technet.microsoft.com/wiki/contents/articles/240.exchange-server-and-update- rollups-build-numbers.aspx
http://social.technet.microsoft.com/wiki/contents/articles/15776.exchange-server-2013-and- cumulative-updates-cus-build-numbers.aspx
http://technet.microsoft.com/library/hh135098.aspx

Ediscovery

Performing Discovery on a mailbox in Exchange 2010 is performed in 4 steps:

1)  Set permissions to perform the search

2)  Set permissions to view the search results

3)  Perform the search

4)  View the results


1)  Set permissions to perform the search

Login to the Exchange Control Panel as an Exchange Administrator

Select Roles and Auditing

Select Discovery Management and click Details

In the Members: section, click Add…

Select the member you wish to give permissions to create the search, and click OK

Click Save


2) Set permissions to view the search results

Open the Exchange Management Console.  Right click the Discovery Search Mailbox and select Manage Full Access Permission…

Click Add…

Select the user you want to be able to view the results of the search, and click OK

Click Manage

Click Finish


3) Perform the search

Log into Outlook Web Access as a user with permission to perform the search

Select Options, and select See all Options…

Select Options Manage Myself and select My Organization

Select Mail Control and select Discovery

Click New

Type in the search query.  In this example we are looking for instances of the word ‘passcode’.

Tick Include items that can’t be searched

click Select message types…

Tick Search all

Expand Mailboxes to Search and select the mailboxes required, or select Search all mailboxes

Expand Search Name, Type and Storage Location.  Enter a Search Name and either select Estimate the search results (used to indicate size requirements) or Copy the search results to the destination mailbox.  Untick Enable deduplication.

Click Browse

Choose the mailbox to copy the results to, and click OK

Click Save to start the search

Wait for the search to finish – Refresh if necessary


4) View the results

Once the search is finished, logon to a workstation as a person with permission to view the Discovery Search Mailbox and open Outlook.

Open the Discovery Search Mailbox.

In this example we can see ‘Corey’ send ‘Omar’ an email with the word ‘passcode’