Applies to: Exchange Server 2010 SP3, Exchange Server 2010 SP2
Topic Last Modified: 2012-07-23
You can use the EMC or the Shell to configure Send connectors and Receive connectors to enable cross-forest communication. To establish direct mail flow between servers that are running Microsoft Exchange in different Active Directory forests, you must configure Send connectors and Receive connectors.
This topic explains how to configure cross-forest connectors for the following scenarios:
- Exchange Server 2010 to Exchange Server 2010
- Exchange 2010 to Exchange Server 2003
Configure cross-forest connectors between Exchange 2010 forests
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
In this scenario, you create the cross-forest connectors between the Hub Transport servers in two Exchange 2010 organizations that are located in separate Active Directory forests. Basic authentication or external authentication mechanisms provide authentication and authorization between the servers in different forests. If you use Basic authentication, you can select from the following two methods to also use Transport Layer Security (TLS):
- Set the smart host authentication method to Basic
authentication over TLS. This method provides both confidentiality
and authentication of the receiving server. If you select this
smart host authentication method, the sending server will validate
the certificate of the receiving server as a requirement for mail
flow.
- Set the RequireTLS parameter to
$true
. This method provides confidentiality, but doesn't authenticate the receiving server.
To configure a cross-forest connector between the Hub Transport servers in two Exchange 2010 organizations, you must meet the following prerequisites:
- Each forest must have an Exchange organization with Exchange
2010 servers.
- If you use Basic authentication, a domain account must exist in
each forest to use for Basic authentication. For example, provide a
user account that has the user principal name (UPN)
FourthCoffee@Contoso.com as the credentials that must be used for
authentication by the Exchange servers in the Fourth Coffee domain
when mail is sent to the Exchange servers in the Contoso
domain.
- If you use Basic authentication over TLS, the target server
must be configured to use an X.509 certificate that contains a
fully qualified domain name (FQDN) that's the same as the FQDN of
the Receive connector.
- If you use external authentication, a trusted network
connection must exist between the Hub Transport servers. This
connection may be an IPsec association or VPN. Alternatively, the
servers may reside in a trusted physically controlled network.
To establish mail flow between the forests, follow these steps:
- Create a user account in each forest to use for authentication
to the receiving server in the second forest.
- Create a Send connector.
- Set permissions on the Send connector.
- For externally secured connectors, create a new Receive
connector.
Note: If you're using Basic authentication over TLS, you must provide the FQDN of the remote Hub Transport server in the smart host settings. You can't use an IP address.
The following procedures establish cross-forest mail flow between the Exchange 2010 Hub Transport servers in the Contoso.com and FourthCoffee.com forests by using either Basic authentication or external authentication. You must perform the reciprocal procedure in each forest.
Configure cross-forest connectors between Exchange 2010 servers by using Basic authentication
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
Step 1: Create a user account in each forest
- Create the user account in each forest and then add the account
to the Exchange Servers universal security group. This account is
used by the Send connector to authenticate to the receiving server
in the second forest.
Important: This account is granted the permissions that are associated with Exchange servers. Be sure to safeguard the account credentials to prevent misuse of the account. You can configure the account to allow logon to specific computers only.
Step 2: Create a Send connector in the Contoso forest
Use the EMC to create a Send connector
- In the console tree, navigate to Organization
Configuration > Hub Transport, and then in the action
pane, click New Send connector.
- On the New SMTP Send connector wizard Introduction page,
in the Name field, type a unique name for the connector.
- From the Select the intended use for this Send connector
drop-down list, select Internal, and then click
Next.
- On the Address Space page, click Add. In the
SMTP Address Space dialog box, type the name of the remote
SMTP domain, and then click Next.
- On the Network settings page, only the Route mail
through the following smart hosts setting can be selected.
Click Add.
- In the Add Smart Host dialog box, in the IP
address or Fully qualified domain name (FQDN) field,
type the FQDN of a Hub Transport server in the remote forest, and
then click OK. To specify more than one Hub Transport server
as a smart host, click Add and enter additional FQDNs, and
then click Next.
- On the Configure smart host authentication settings
page, select Basic Authentication or Basic Authentication
over TLS, type the user name and password that will be used to
authenticate the connection, and then click Next.
- On the Source Server page, click Add. In the
Select Hub Transport or Subscribed Edge Transport Server
dialog box, select one or more Hub Transport servers in your
organization, click OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Send connector
This example creates the Send connector from Contoso.com to FourthCoffee.com and uses Basic authentication over TLS to provide both confidentiality and authentication to the receiving server.
- This command stores the credentials for use in
authentication.
Copy Code $mycred = Get-Credential
- In the dialog box that appears, enter the credentials for the
user account in the Fourth Coffee domain. Use the
domain\user format or UPN format to enter the user name and
provide the user's password.
- Click OK.
- This command creates the Send connector.
Copy Code New-SendConnector -Name "Cross-Forest" -Usage Internal -AddressSpaces FourthCoffee.com -SmartHosts Hub1.FourthCoffee.com, Hub2.FourthCoffee.com -SmartHostAuthMechanism BasicAuthRequireTLS -AuthenticationCredential $mycred -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -DNSRoutingEnabled $false
This example creates the Send connector from Contoso.com to FourthCoffee.com and uses Basic authentication over TLS to provide only confidentiality.
- This command stores the credentials for use in
authentication.
Copy Code $mycred = Get-Credential
- In the dialog box that appears, enter the credentials for the
user account in the Fourth Coffee domain. Use the
domain\user format or UPN format to enter the user name and
provide the user's password.
- Click OK.
- This command creates the Send connector.
Copy Code New-SendConnector -Name "Cross-Forest" -Usage Internal -AddressSpaces FourthCoffee.com -SmartHosts Hub1.FourthCoffee.com, Hub2.FourthCoffee.com -SmartHostAuthMechanism BasicAuth -AuthenticationCredential $mycred -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -RequireTLS $true -DNSRoutingEnabled $false
For detailed syntax and parameter information, see New-SendConnector.
Step 3: Use the Shell to set permissions on the Send connector
Note: |
---|
You can't use the EMC to set permissions on the Send connector. |
This example uses the Enable-CrossForestConnector.ps1 script in the Shell to set permissions on the Send connector.
Copy Code | |
---|---|
.\Enable-CrossForestConnector.ps1 -Connector "Cross-Forest" -user "ANONYMOUS LOGON" |
Configure cross-forest connectors between Exchange 2010 servers by using external authentication
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
Step 1: Create a Send connector
Use the EMC to create a Send connector
- In the console tree, navigate to Organization
Configuration > Hub Transport, and then in the action
pane, click New Send connector.
- On the New SMTP Send connector wizard Introduction page,
in the Name field, type a unique name for the connector.
From the Select the intended use for this Send connector
drop-down list, select Internal, and then click
Next.
- On the Address space page, click Add. In the
SMTP Address Space dialog box, type the name of the remote
SMTP domain, and then click Next.
- On the Network settings page, only the Route mail
through the following smart hosts setting can be selected.
Click Add.
- In the Add Smart Host dialog box, in the IP
address or Fully qualified domain name (FQDN) field,
type the IP address or FQDN of a Hub Transport server in the remote
forest, and then click OK. To specify more than one Hub
Transport server as a smart host, click Add and enter
additional IP addresses or FQDNs, and then click Next.
- On the Configure smart host authentication settings
page, select Externally Secured (for example, with IPsec),
and then click Next.
- On the Source Server page, click Add. In the
Select Hub Transport or Subscribed Edge Transport Server
dialog box, select one or more Hub Transport servers in your
organization, click OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Send connector
This example creates the Send connector from Contoso.com to FourthCoffee.com.
Copy Code | |
---|---|
New-SendConnector -Name "Cross-Forest" -Usage Internal -AddressSpaces FourthCoffee.com -SmartHosts Hub1.FourthCoffee.com, Hub2.FourthCoffee.com -SmartHostAuthMechanism ExternalAuthoritative -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -DNSRoutingEnabled $false |
For detailed syntax and parameter information, see New-SendConnector.
Step 2: Create a Receive connector
Use the EMC to create a Receive connector
- In the console tree, navigate to Server Configuration
> Hub Transport, and then in the action pane, click
New Receive Connector.
- On the New SMTP Receive Connector wizard Introduction
page, in the Name field, type a unique name for the
connector.
- From the Select the intended use for this Receive
connector drop-down list, select Internal, and then
click Next.
- On the Remote Network settings page, remove the all
network ranges entry, and then click Add.
- In the Add IP Address(es) of Remote Servers dialog box,
type the IP address of the remote Hub Transport server, click
OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Receive connector
This example creates the Receive connector for Contoso.com to receive mail from FourthCoffee.com.
Copy Code | |
---|---|
New-ReceiveConnector -Name "Cross-Forest" -Server HubA -PermissionGroups ExchangeServers -RemoteIPRanges <IP address of Fourth Coffee Hub Transport server> -AuthMechanism ExternalAuthoritative -Bindings 0.0.0.0:25 |
For detailed syntax and parameter information, see New-ReceiveConnector.
Step 3: Modify the authentication method used for this connector
Note: |
---|
This step isn't necessary if you used the Shell to create the Receive connector in step 2. It's required if you used the EMC in step 2. |
- In the console tree, navigate to Server Configuration
> Hub Transport.
- In the result pane, select the Receive connector that you want
to modify, and then in the action pane, click
Properties.
- Click the Authentication tab.
- Clear the check boxes for Transport Layer Security (TLS)
and Exchange Server authentication, and then select
Externally Secured (for example with IPsec).
- Click OK.
Configure cross-forest connectors between Exchange 2010 and Exchange 2003
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
In this scenario, you create the cross-forest connectors between an Active Directory forest with an Exchange organization that's running Exchange 2010 and a second Active Directory forest with an Exchange organization that's running Exchange 2003. You can create the Send connectors and Receive connectors between the Exchange 2010 Edge Transport server and the Exchange 2003 bridgehead server or between the Exchange 2010 Hub Transport server and the Exchange 2003 bridgehead server.
To establish mail flow between the forests, follow these steps:
- Create user accounts in each forest for authenticating the
sending server. This step isn't required if you use external
authentication.
- Create a Send connector and select Internal as the usage
for this connector on either the Exchange 2010 Edge Transport
server or Hub Transport server.
- Modify the authentication for the new Send connector.
- Create an SMTP connector on Exchange 2003.
- If you're using external authentication, modify the registry on
the Exchange 2003 server to allow the Exchange 2003 server to send
and receive XEXCH50 properties anonymously.
The following procedures establish cross-forest mail flow between the Exchange 2010 transport servers in the Contoso.com forest and the Exchange 2003 bridgehead servers in the FourthCoffee.com forest by using either Basic authentication or external authentication. After you perform one of the following procedures, we recommend that you test mail flow by sending a message between the two organizations. You should also examine the protocol logs to verify that XEXCH50 data is propagated to Exchange 2003.
Configure cross-forest connectors between Exchange 2010 and Exchange 2003 servers in separate forests and use Basic authentication
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
Step 1: Create a user account in each forest
In the Exchange 2003 forest, create a user account. Add the user account to the Exchange Domain Servers security group in the domain where the Exchange 2003 server that will act as smart host for this connector resides.
Important: |
---|
This account is granted the permissions that are associated with Exchange servers. Be sure to safeguard the account credentials to prevent misuse of the account. You can configure the account to allow logon to specific computers only. |
In the Exchange 2010 forest, create a user account. Add the user account to the ExchangeLegacyInterop security group in the domain where the Exchange 2010 server that will act as the smart host for receiving messages from Exchange 2003 resides.
Step 2: Create a Send connector from Exchange 2010 to Exchange 2003
Use the EMC to create a Send connector
- In the console tree, navigate to Organization
Configuration > Hub Transport, and then in the action
pane, click New Send connector.
- On the New SMTP Send connector wizard Introduction page,
in the Name field, type a unique name for the connector.
From the Select the intended use for this Send connector
drop-down list, select Internal, and then click
Next.
- On the Address Space page, click Add. In the
SMTP Address Space dialog box, type the name of the remote
SMTP domain, and then click Next.
- On the Network settings page, only the Route mail
through the following smart hosts setting can be selected.
Click Add.
- In the Add Smart Host dialog box, in the IP
address or Fully qualified domain name (FQDN) field,
type the IP address or FQDN of the Exchange 2003 bridgehead server
in the remote forest, and then click OK. To specify more
than one bridgehead server as a smart host, click Add and
enter additional IP addresses or FQDNs, and then click
Next.
- On the Configure smart host authentication settings
page, in either Basic Authentication or Basic
Authentication over TLS, type the user name and password that
will be used to authenticate the connection, and then click
Next.
- On the Source Server page, click Add. In the
Select Hub Transport or Subscribed Edge Transport Server
dialog box, select one or more Hub Transport servers in your
organization, click OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Send connector
If the Exchange 2010 Send connector is configured to
use Basic authentication over TLS or to use Basic authentication
with the RequiredTLS parameter set to $true
,
the Exchange 2003 server must advertise the correct certificate
before authentication can occur. You can verify that a certificate
has been imported to the Exchange 2003 SMTP virtual server by
viewing the properties of the virtual server. To view or import a
server certificate, select the Access tab and click
Certificate.
- This command stores the credentials for use in authentication.
In the Exchange 2010 forest, open the Shell on the Edge Transport
server or the Hub Transport server, and run the following
command.
Copy Code $mycred = Get-Credential
- In the Shell, use one of the following commands to create the
Send connector.
- This example creates a Send connector to use Basic
authentication over TLS to provide both confidentiality and
authentication to the receiving server.
Copy Code New-SendConnector -Name "Legacy Forest" -SmartHostAuthMechanism BasicAuthRequireTLS -AuthenticationCredential $mycred -AddressSpaces FourthCoffee.com -SmartHosts Bridgehead1.FourthCoffee.com, Bridgehead2.FourthCoffee.com -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -DNSRoutingEnabled $false
- This example creates a Send connector to use Basic
authentication with TLS to provide only confidentiality.
Copy Code New-SendConnector -Name "Legacy Forest" -SmartHostAuthMechanism BasicAuth -AuthenticationCredential $mycred -AddressSpaces FourthCoffee.com -SmartHosts Bridgehead1.FourthCoffee.com, Bridgehead2.FourthCoffee.com -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -RequireTLS $true -DNSRoutingEnabled $false
- This example creates a Send connector to use Basic
authentication over TLS to provide both confidentiality and
authentication to the receiving server.
For detailed syntax and parameter information, see New-SendConnector.
Step 3: Use the Shell to set permissions on the Send connector
Note: |
---|
You can't use the EMC to set permissions on the Send connector. |
This example uses the Enable-CrossForestConnector.ps1 script in the Shell to set permissions on the Send connector.
Copy Code | |
---|---|
.\Enable-CrossForestConnector.ps1 -Connector "Legacy Forest" -user "ANONYMOUS LOGON" -genericMTA |
Step 4: Use Exchange System Manager to create an SMTP connector on an Exchange 2003 bridgehead server in the remote forest
- In the Exchange 2010 forest, create a user account. Add the
user account to the ExchangeLegacyInterop security group.
Important: This account is granted the permissions that are associated with Exchange servers. Be sure to safeguard the account credentials to prevent misuse of the account. You can configure the account to allow logon to specific computers only. - In the Exchange 2003 forest, open Exchange System Manager.
Right-click the Connectors container that's located in the
routing group where the server that will host this connector
resides, select New, and then select SMTP
Connector.
- Select the General tab. In the Name field, type a
unique name for the connector.
- Select Forward all mail through this connector to the
following smart hosts, and then type the IP address or FQDN of
the Exchange 2010 Edge Transport server or Hub Transport server. If
you enter an IP address, it must be enclosed in brackets, for
example, [192.168.1.1].
- Click Add to add a local bridgehead server. In the
Add Bridgehead dialog box, select one or more Exchange 2003
servers.
- Select the Address Space tab, and then click Add
to create an address space. In the Add Address Space dialog
box, select SMTP, and then click OK.
- On the Internet Address Space Properties page, enter the
SMTP domain name of the Exchange 2010 forest, and then click
OK.
- Select the Advanced tab, and then click Outbound
Security. In the Outbound Security dialog box, select
Basic Authentication, and then click Modify.
- In the Outbound Connection Credentials dialog
box, enter the user name for the account that you created in the
Exchange 2010 forest, enter the password for the account, and then
click OK.
- Click OK to close the Outbound Security dialog
box. Click OK.
Configure cross-forest connectors between Exchange 2010 and Exchange 2003 servers without a trust relationship by using external authentication
You need to be assigned permissions before you can perform this procedure. To see what permissions you need, see the "Send connectors" and "Receive connectors" entries in the Transport Permissions topic.
Step 1: Create a Send connector
Use the EMC to create a Send connector
- In the console tree navigate to Organization
Configuration > Hub Transport.
- In the action pane, click New Send connector.
- On the New SMTP Send connector wizard Introduction page,
in the Name field, type a unique name for the connector.
From the Select the intended use for this Send connector
drop-down list, select Internal, and then click
Next.
- On the Address Space page, click Add. In the
SMTP Address Space dialog box, type the name of the remote
SMTP domain, and then click Next.
- On the Network settings page, only the Route mail
through the following smart hosts setting can be selected.
Click Add.
- In the Add Smart Host dialog box, in the IP
address or Fully qualified domain name (FQDN) field,
type the IP address or FQDN of the bridgehead server in the
Exchange 2003 forest, and then click OK. To specify more
than one bridgehead server as a smart host, click Add and
enter additional IP addresses or FQDNs, and then click
Next.
- On the Configure smart host authentication
settings page, select Externally Secured (for example with
IPsec), and then click Next.
- On the Source Server page, click Add. In the
Select Hub Transport or Subscribed Edge Transport Server
dialog box, select one or more Hub Transport servers in your
organization, click OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Send connector
This example creates the Send connector from Contoso.com to FourthCoffee.com.
Copy Code | |
---|---|
New-SendConnector -Name "Legacy Forest" -Usage Internal -AddressSpaces FourthCoffee.com -SmartHosts Hub1.FourthCoffee.com, Hub2.FourthCoffee.com -SmartHostAuthMechanism ExternalAuthoritative -SourceTransportServers HubA.Contoso.com, HubB.Contoso.com -DNSRoutingEnabled $false |
For detailed syntax and parameter information, see New-SendConnector.
Step 2: Create a Receive connector
Use the EMC to create a Receive connector
- In the console tree, navigate to Server Configuration
> Hub Transport, and then in the action pane, click
New Receive Connector.
- On the New SMTP Receive Connector wizard Introduction
page, in the Name field, type a unique name for the
connector.
- From the Select the intended use for this Receiver
connector drop-down list, select Internal, and then
click Next.
- On the Remote Network settings page, remove the all
network ranges entry, and then click Add.
- In the Add IP address(es) of Remote Servers dialog box,
type the IP address of the bridgehead server in the Exchange 2003
organization, click OK, and then click Next.
- On the New Connector page, click New.
- On the Completion page, review the following, and then
click Finish to close the wizard:
- A status of Completed indicates that the wizard
completed the task successfully.
- A status of Failed indicates that the task wasn't
completed. If the task fails, review the summary for an
explanation, and then click Back to make any configuration
changes.
- A status of Completed indicates that the wizard
completed the task successfully.
Use the Shell to create a Receive connector
This example creates the Receive connector for Contoso.com to receive mail from FourthCoffee.com.
Copy Code | |
---|---|
New-ReceiveConnector -Name "Legacy Forest" -Usage Internal -Server HubA -PermissionGroups ExchangeServers -RemoteIPRanges <IP address of Fourth Coffee Hub Transport server> -AuthMechanism ExternalAuthoritative -Bindings 0.0.0.0:25 |
For detailed syntax and parameter information, see New-ReceiveConnector.
Step 3: Modify the authentication method used for this connector
Note: |
---|
This step isn't necessary if you used the Shell to create the Receive connector in step 2. It's required if you used the EMC in step 2. |
- In the console tree, navigate to Server Configuration
> Hub Transport.
- In the result pane, select the Receive connector that you want
to modify, and then in the action pane, click
Properties.
- Click the Authentication tab.
- Clear the check boxes for Transport Layer Security (TLS)
and Exchange Server authentication, select Externally
Secured (for example with IPsec), and then click OK.
Step 4: Modify the registry settings on the Exchange 2003 bridgehead server to allow the Exchange 2003 server to send and receive XEXCH50 properties anonymously
Caution: |
---|
Incorrectly editing the registry can cause serious problems that may require you to reinstall your operating system. Problems resulting from editing the registry incorrectly may not be able to be resolved. Before editing the registry, back up any valuable data. |
- Open Registry Editor.
- Locate
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMTPSVC\XEXCH50
- Right-click XEXCH50 and select New | DWORD Value.
Type SuppressExternal for the value name. By default, the
value data is 0, which indicates that the XEXCH50 properties
are transmitted to the remote server anonymously.
- Right-click XEXCH50 and select New | Key.
Type the number of the SMTP virtual server instance as the key
value. For example, the default virtual server instance is
1, and the second SMTP virtual server created on a server is
2.
- Right-click the key that you just created, point to New,
and then click DWORD Value.
- In the details pane, type Exch50AuthCheckEnabled for the
value name. By default, the value data is 0, which indicates
that the XEXCH50 properties are transmitted when e-mail is sent
anonymously.