Archiving Emails from Microsoft Exchange 2007
Please note: This tutorial only covers the specifics of archiving a Microsoft Exchange 2007 server. It is assumed that you already have a MailStore Server installation or test installation and are familiar with the fundamentals of MailStore Server. Please refer to the Manual or Quick Start Guide for more information.
MailStore Server offers several ways to archive emails from a Microsoft Exchange 2007 server, which are described below. If you are not sure which archiving method best suits your company, please refer to chapter Choosing the Right Archiving Strategy.
Archiving Individual Mailboxes
Archiving Multiple Exchange Mailboxes Centrally
With MailStore, some or all mailboxes of an Exchange server can be archived in a single step. All necessary preparations, such as creating MailStore users, can be made automatically. The archiving process can be executed manually or automatically according to a schedule.
Step 1: Setting up a central user for accessing mailboxes
Before the archiving process can be set up in MailStore, a user with access to all mailboxes to be archived has to be created. The corresponding method is called impersonation in Microsoft Exchange.
The following preconditions have to be met to be able to configure Exchange Impersonation:
- Administrative access to the Microsoft Exchange 2007 system on which the Client Access Role is installed
- Domain Administrator privileges
The following commands are executed in the Microsoft Exchange Management Shell:
Add access privileges
Get-ClientAccessServer | Add-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-Impersonation
Get-MailboxDatabase | Add-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-May-Impersonate
serviceAccount is the user account in UPN notation which you will use to access the mailboxes from MailStore. Please make sure that this user is not a member of any Exchange or Windows administrative group.
Check access privileges
Get-ClientAccessServer | Get-Adpermission -User serviceAccount | ' Format-List *
Get-MailboxDatabase | Get-Adpermission -User serviceAccount | ' Format-List *
Remove access privileges
Get-ClientAccessServer | Remove-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-Impersonation
Get-MailboxDatabase | Remove-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-May-Impersonate
Step 2: Configuration of MailStore Server
Archiving Incoming and Outgoing Emails Directly
With the support of the Exchange Server Journaling functionality, MailStore can archive the incoming and outgoing emails of all users automatically. This is the only way to ensure that all emails are archived in their entirety
Microsoft Exchange Server provides the option to take down all incoming, outgoing and internal email traffic. At the time of sending and receiving, a copy of the respective email is created and stored in a mailbox called Journal Mailbox. Additionally, the email is provided with a Journal report containing information about the actual senders and recipients.
MailStore can be configured to archive this Journal mailbox at regular intervals. During this process, the emails from the Journal mailbox will be assigned to their respective MailStore users (i.e. their user archives) automatically. This means that each user is able to view only their own emails.
Before the archiving process can be set up in MailStore, Journaling has to be set up for the Exchange server. Please proceed as follows:
Step 1: Creating a Mailbox for Journaling
Set up a new Exchange user with a meaningful name, e.g. journal:
- Start the Exchange Management Console and click on Recipient Configuration.
- Click on New Mailbox.
- Select User Mailbox and click on Next.
- Select New User and click on Next.
- Enter journal as user name (see screen shot below) and click on Next.
- Click on Browse to select a mailbox database and click on Next.
- Confirm the summary by clicking on New. The user journal is created.
Step 2: Configuring a New Mailbox as Journal Mailbox
Open the Exchange Management Console. In the tree structure, open Organization Configuration and then Hub Transport.
- Click on the Journaling tab and in the area on the right on New Journal Rule.
The dialog window New Journal Rule opens:
- Enter a name for the Journal rule, e.g. journal.
- Click on Browse and select the user journal created above.
- Under Scope, choose Global to capture all messages, Internal to capture internally sent messages only, or External to capture only those message with an external sender or recipient.
- Make sure that the checkbox Enable Rule is activated.
- Click on New to activate the rule. Please keep in mind that in complex Microsoft Exchange environments it may take several minutes until the new rule becomes effective.
Important notice: Before MailStore can access the new Journal mailbox, it may be necessary to log in to this mailbox using Outlook Web Access (OWA), for example.
Once the new configuration has come into effect, a copy of all incoming and outgoing emails is stored in the Journal mailbox (along with a report). MailStore can now be configured to archive the Journal mailbox in regular intervals as described below.
Step 3: Configuration of MailStore Server
Configure MailStore Server to archive the Journal mailbox in regular intervals (e.g. daily at 11pm) using an archiving task of type Incoming and Outgoing Emails Directly.
After archiving, emails can and should be deleted from the Journal mailbox automatically by MailStore Server. The MailStore archiving task can be configured accordingly.
MailStore Server can archive emails from the public folders of the Microsoft Exchange Server and make them available to some or all MailStore users. The archiving process can be executed manually or regularly according to a schedule using an archiving task of type Public Folders.
If you want to use Exchange Impersonation for a Service Account to archive public folders hosted on an Exchange 2007 Server, please execute the following command in the Microsoft Exchange Management Shell:
Get-PublicFolderDatabase | Add-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-May-Impersonate
Get-PublicFolderDatabase | Get-Adpermission -User serviceAccount | ' Format-List *
Get-PublicfolderDatabase | Remove-AdPermission -User serviceAccount ' -ExtendedRights ms-Exch-EPI-May-Impersonate