Solved

I need to bulk create email forwarding on Exchange 2003

Posted on 2013-06-27
9
900 Views
Last Modified: 2013-07-23
I am migrating from an Exchange 2003 server to a new domain and need to enable about 4000 users to forward their emails to a new email address. I am able create the contacts \I just need to create the forwards from a csv file. Any help would do.
0
Comment
Question by:charles_cuerrier
  • 3
  • 3
  • 3
9 Comments
 
LVL 12

Expert Comment

by:SreRaj
Comment Utility
Hi,

You could try using ADModify to establish this. Please refer the following article which shows how to modify Exchange attributes using ADModify.

http://www.msexchange.org/articles-tutorials/exchange-server-2003/tools/ADModify-Change-Exchange-Specific-AD-User-Attributes.html
0
 
LVL 14

Expert Comment

by:Radweld
Comment Utility
What you should do is configure Exchange 2010 and 2003 for co-existence and then use native Exchange 2010 tools to help you with the migration.

The general process I would follow would be to

1: Export the GAL from legacy domain using CSVDE
2: Cleanup the export and change the UPN's, Email address etc.
3: Import the CSV into the Exchange 2010 organisation as contacts. These contacts have a primary SMTP email address of the mailbox in the source domain.
4: Run the PrepareMoveRequest.ps1 exchange script to stamp the source account GUID to the target account (don't use ADMT)
5: Migrate mailbox, the process will convert the source account into a contact and convert the target account into a mailbox.

It's all here http://blogs.technet.com/b/meamcs/archive/2011/06/10/exchange-2010-cross-forest-migration-step-by-step-guide-part-i.aspx
0
 
LVL 14

Expert Comment

by:Radweld
Comment Utility
Some additional notes from the last time I did this.

1.

Either use ADMT or Bulk create new User accounts, you can use the CSV to do this in the instructions below.

2.

In SOURCE a create an CSV export file of all the users
csvde -l displayName, samAccountName, mailNickname, mail - -r "objectclass=user" -f c:\2003_Mailboxes.csv

Open in new window

3.

Edit the CSV file created above; delete all built in accounts and domain accounts with mailboxes that are not to be migrated, rename the headers in the CSV file to match the input values used by the Import-CSV Exchange Management Shell cmdlet.

Change DisplayName to Name
Change samAccountName to Identity
Change mailNickname to Alias
Change mail to EmailAddress

Now is a good opportunity to edit the CSV file and remove invalid characters from the Alias field and bulk set all the accounts to use @TargetNameSpace to enable cross forest routing.

4.

In Target, import the CSV to mail enable the previously migrated user accounts
Import-CSV C:\2003_Mailboxes.csv | ForEach-Object -process {Enable-MailUser -ExternalEmailAddress $_.EmailAddress -Alias $_.Alias -Identity $_.Identity}

Open in new window

5.

Prepare Target users for mailbox move using the Prepare-Moverequest.ps1 script provided by Microsoft

$LocalCredentials = Get-Credential (Admin account in the Target Domain)
$RemoteCredentials = Get-Credential (Admin Account in the Source Domain)

Import-CSV C:\2003_Mailboxes.csv | ForEach-Object –process {Prepare-MoveRequest.ps1 -Identity $_.Identity -RemoteForestDomainController source-dc.source.local -RemoteForestCredential $RemoteCredentials -LocalForestDomainController DC.SOURCE.LOCAL -LocalForestCredential $LocalCredentials -UseLocalObject}

Open in new window

6.

Move Mailboxes
$RemoteCredentials = Get-Credential

New-MoveRequest -Identity 'username' -RemoteLegacy -TargetDatabase "Mailbox Database 1" -RemoteGlobalCatalog DC.SOURCE.LOCAL -RemoteCredential $RemoteCredentials -TargetDeliveryDomain target.local'

Open in new window


7.

To verify the progress of a submitted move request, use the following
Get-MoveRequestStatistics 
Get-MoveRequestStatistics -MoveRequestQueue "mailbox database name"

Open in new window

8.

To move multiple mailboxes in a single request, and using the CSV file created previously.
[$RemoteCredentials = Get-Credential
Import-CSV C:\2003_Mailboxes.csv | ForEach-Object –process {New-MoveRequest -Identity $_.Identity -RemoteLegacy -TargetDatabase " Mailbox Database 1 " -RemoteGlobalCatalog 'source-dc.source.local' -RemoteCredential $RemoteCredentials -TargetDeliveryDomain 'target.local'

Open in new window

9.

Once the mailbox has been moved, the users Outlook profile will require modification in order to re-connect them to the target exchange organisation.
0
 

Author Comment

by:charles_cuerrier
Comment Utility
Since we need to keep the old Exchange 2003 running after the migration ADModify seems to be the best bet. My question for this would be how to put a wildcard setting to take the forwarding address from a CSV or have it set up as firstinitial + lastname @domain.com
0
Better Security Awareness With Threat Intelligence

See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

 
LVL 12

Expert Comment

by:SreRaj
Comment Utility
You need to enable the option 'Set Alternate Recipient To' and type in the Distinguished Name of the contact object. You can use variable %'givenName'% for first name and %'sn'% for lastname. So if contact is having a display name 'SecondName, FirstName [TestDomain]', you can refer it as %'sn'%, %'givenName'% [TestDomain]

Please refer following screenshot for example.

ADModify
0
 

Accepted Solution

by:
charles_cuerrier earned 0 total points
Comment Utility
SreRaj,
Your solution seems to be the best and I can do it for an individual by manually entering givenName sn but when I use the %'sn'%, %'givenName'% it says that the DN entered is not valid. There is no such object on the server.
My DN is first name last name, John Doe. What would you suggest?
0
 
LVL 12

Expert Comment

by:SreRaj
Comment Utility
For FirstName LastName format, the syntax would be %'givenName'% %'sn'%

The Distinguished name refered is of the contact object, so you have to give the correct OU path where the contact object is created. Suppose there is a contact object with extenal domain mail address for user John Doe in AllContacts OU in NewDomain.com root, then the DN would be

CN=%'givenName'% %'sn'%,OU=AllContacts,DC=NewDomain,DC=com

If we are selecting all 4000 users, corresponding all 4000 contact objects should be there is the same OU and they should all have object name in the same format %'givenName'% %'sn'%
0
 
LVL 14

Expert Comment

by:Radweld
Comment Utility
This method shouldn't be nessesary. When performing a cross forest mailbox move in exchange 2010 the move request will actually convert the mailbox back to a contact and set the correct smtp as part of the process.
0
 

Author Closing Comment

by:charles_cuerrier
Comment Utility
That didn't answer the question but it did show that there is no answer.
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

Easy CSR creation in Exchange 2007,2010 and 2013
Not sure what the best email signature size is? Are you worried about email signature image size? Follow this best practice guide.
In this video we show how to create a User Mailbox in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Recipients >> Mailb…
In this Micro Video tutorial you will learn the basics about Database Availability Groups and How to configure one using a live Exchange Server Environment. The video tutorial explains the basics of the Exchange server Database Availability grou…

743 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now