Set-SendConnector

 

Applies to: Exchange Server 2007 SP1, Exchange Server 2007 SP2, Exchange Server 2007 SP3

Use the Set-SendConnector cmdlet to modify a Send connector on a computer that has the Hub Transport server role or the Edge Transport server role installed.

Syntax

Set-SendConnector -Identity <SendConnectorIdParameter> [-AddressSpaces <MultiValuedProperty>] [-AuthenticationCredential <PSCredential>] [-Comment <String>] [-Confirm [<SwitchParameter>]] [-ConnectionInactivityTimeOut <EnhancedTimeSpan>] [-DNSRoutingEnabled <$true | $false>] [-DomainController <Fqdn>] [-DomainSecureEnabled <$true | $false>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-ForceHELO <$true | $false>] [-Fqdn <Fqdn>] [-IgnoreSTARTTLS <$true | $false>] [-IsScopedConnector <$true | $false>] [-LinkedReceiveConnector <ReceiveConnectorIdParameter>] [-MaxMessageSize <Unlimited>] [-Name <String>] [-Port <Int32>] [-ProtocolLoggingLevel <None | Verbose>] [-RequireTLS <$true | $false>] [-SmartHostAuthMechanism <None | BasicAuth | BasicAuthRequireTLS | ExchangeServer | ExternalAuthoritative>] [-SmartHosts <MultiValuedProperty>] [-SourceIPAddress <IPAddress>] [-SourceTransportServers <MultiValuedProperty>] [-UseExternalDNSServersEnabled <$true | $false>] [-WhatIf [<SwitchParameter>]]

Set-SendConnector [-AddressSpaces <MultiValuedProperty>] [-AuthenticationCredential <PSCredential>] [-Comment <String>] [-Confirm [<SwitchParameter>]] [-ConnectionInactivityTimeOut <EnhancedTimeSpan>] [-DNSRoutingEnabled <$true | $false>] [-DomainController <Fqdn>] [-DomainSecureEnabled <$true | $false>] [-Enabled <$true | $false>] [-Force <SwitchParameter>] [-ForceHELO <$true | $false>] [-Fqdn <Fqdn>] [-IgnoreSTARTTLS <$true | $false>] [-Instance <SmtpSendConnectorConfig>] [-IsScopedConnector <$true | $false>] [-LinkedReceiveConnector <ReceiveConnectorIdParameter>] [-MaxMessageSize <Unlimited>] [-Name <String>] [-Port <Int32>] [-ProtocolLoggingLevel <None | Verbose>] [-RequireTLS <$true | $false>] [-SmartHostAuthMechanism <None | BasicAuth | BasicAuthRequireTLS | ExchangeServer | ExternalAuthoritative>] [-SmartHosts <MultiValuedProperty>] [-SourceIPAddress <IPAddress>] [-SourceTransportServers <MultiValuedProperty>] [-UseExternalDNSServersEnabled <$true | $false>] [-WhatIf [<SwitchParameter>]]

Detailed Description

The Set-SendConnector cmdlet modifies an existing Send connector. The Name parameter is required when you run the Set-SendConnector cmdlet. The Identity parameter is required only when you modify the Name parameter value.

After this task is completed, the Send connector is modified.

To run the Set-SendConnector cmdlet, the account you use must be delegated the Exchange Server Administrator role and local Administrators group for the target server.

To run the Set-SendConnector cmdlet on a computer that has the Edge Transport server role installed, you must log on by using an account that is a member of the local Administrators group on that computer.

For more information about permissions, delegating roles, and the rights that are required to administer Microsoft Exchange Server 2007, see Permission Considerations.

Parameters

Parameter Required Type Description

Identity

Required

Microsoft.Exchange.Configuration.Tasks.SendConnectorIdParameter

The Identity parameter specifies the GUID or connector name that represents the Send connector that you want to modify

AddressSpaces

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter is required unless this connector is linked to a Receive connector. If a linked Receive connector is specified by using the LinkedReceiveConnector parameter, the value of AddressSpaces must be $null. Otherwise, the AddressSpaces parameter specifies the domain names to which the Send connector sends messages. The complete syntax for entering each address space is as follows: <AddressSpaceType>:<AddressSpace>;<AddressSpaceCost>

  • AddressSpaceType   On an Edge Transport server, the address space type must be SMTP. On a Hub Transport server, the address space type may be SMTP, X400, or any other text string. If you omit the address space type, an SMTP address space type is assumed.

  • AddressSpace   For SMTP address space types, the address space that you enter must be RFC 1035-compliant. For example, *, *.com, and *.contoso.com are permitted, but *contoso.com is not permitted. For X.400 address space types, the address space that you enter must be RFC 1685-compliant, such as o=MySite;p=MyOrg;a=adatum;c=us. For all other values of address type, you can enter any text for the address space.

  • AddressSpaceCost   The valid input range for the cost is 1 to 100. A lower cost indicates a better route. This parameter is optional. If you omit the address space cost, a cost of 1 is assumed. If you enter a non-SMTP address space that contains the semicolon character ( ; ), you must specify the address space cost.

If you specify the address space type or the address space cost, you must enclose the address space in double quotation marks ( " ). For example, the following address space entries are equivalent:

  • "SMTP:contoso.com;1"

  • "contoso.com;1"

  • "SMTP:contoso.com"

  • contoso.com

You may specify multiple address spaces by separating the address spaces with commas, as follows, for example: contoso.com,fabrikam.com. If you specify the address space type or the address space cost, you must enclose the address space in double quotation marks ( " ) as follows, for example: "contoso.com;2","fabrikam.com;3".

If you specify a non-SMTP address space type on a Send connector that is configured on a Hub Transport server, the following settings are required on the Send connector:

  • You must use a smart host to route e-mail by specifying a value for the SmartHosts parameter.

  • You must set the DNSRoutingEnabled parameter to $False.

Note

Although you can configure non-SMTP address spaces on a Send connector on a Hub Transport server, the Send connector uses SMTP as the transport mechanism to send messages to other messaging servers. Foreign connectors on Hub Transport servers are used to send messages to local messaging servers, such as third-party fax gateway servers, which don't use SMTP as their primary transport mechanism. For more information, see Foreign Connectors.

AuthenticationCredential

Optional

System.Management.Automation.PSCredential

This parameter requires the creation and passing of a credential object. This credential object is created by using the Get-Credential cmdlet. For more information about the Get-Credential cmdlet, type Get-Help Get-Credential in the Exchange Management Shell.

Comment

Optional

System.String

You must enclose the Comment parameter in double quotation marks, for example: "this is an admin note".

Confirm

Optional

System.Management.Automation.SwitchParameter

The Confirm parameter causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm parameter.

ConnectionInactivityTimeOut

Optional

Microsoft.Exchange.Data.EnhancedTimeSpan

This parameter specifies the maximum time that an idle connection can remain open. The default value is 10 minutes. To specify a value, enter the value as a time span: dd.hh:mm:ss, where d = days, h = hours, m = minutes, and s = seconds. The valid input range for this parameter is 00:00:01 to 1.00:00:00.

DNSRoutingEnabled

Optional

System.Boolean

This parameter specifies whether Domain Name System (DNS) routing should be used, or if all messages should be sent through the smart host that is configured by using the SmartHosts parameter. The default value is $True. If you want to set the value to $False, you must first set a value on the SmartHosts parameter.

DomainController

Optional

Microsoft.Exchange.Data.Fqdn

To specify the fully qualified domain name (FQDN) of the domain controller that writes this configuration change to the Active Directory directory service, include the DomainController parameter on the command. The DomainController parameter is not supported on computers that run the Edge Transport server role. The Edge Transport server role reads and writes only to the local ADAM instance.

DomainSecureEnabled

Optional

System.Boolean

This parameter is part of the process to enable mutual Transport Layer Security (TLS) authentication for the domains that are serviced by this Send connector. Mutual TLS authentication will function correctly only when the following conditions are met:

  • The value of the DomainSecureEnabled parameter must be $True.

  • The value of the DNSRoutingEnabled parameter must be $True.

  • The value of the IgnoreStartTLS parameter must be $False.

The wildcard character (*) is not supported in domains that are configured for mutual TLS authentication. The same domain must also be defined on the corresponding Receive connector, and in the value of the TLSReceiveDomainSecureList parameter in the Get-TransportConfig cmdlet.

The default value for DomainSecureEnabled is $False for the following types of Send Connectors:

  • All Send connectors that are defined on a Hub Transport Server.

  • User-created Send connectors that are defined on an Edge Transport server.

The default value for DomainSecureEnabled is $True for the following types of Send Connectors:

  • Default Send connectors that are defined on an Edge Transport server.

Enabled

Optional

System.Boolean

Valid input for this parameter is $True or $False. The default value is $True. Use the Enabled parameter to enable or disable the ability for the connector to process e-mail messages.

Force

Optional

System.Management.Automation.SwitchParameter

This parameter suppresses the warning or confirmation messages that appear during specific configuration changes.

ForceHELO

Optional

System.Boolean

Valid input for this parameter is $True or $False. The default value is $False. By default, EHLO is used. If this parameter is set to $True, HELO is sent instead of EHLO.

Fqdn

Optional

Microsoft.Exchange.Data.Fqdn

This parameter specifies the FQDN that is used as the source server for connected messaging servers that use the Send connector to receive outgoing messages. The value of this parameter is displayed to connected messaging servers whenever a source server name is required, as in the following examples:

  • In the EHLO/HELO command when the Send connector communicates with the next hop messaging server

  • In the most recent Received: header field of the message that is added to the message by the next hop messaging server after the message leaves the Hub Transport server or Edge Transport server

  • During TLS authentication

The default value of the Fqdn parameter is $Null. This means the actual default FQDN value is the FQDN of the Hub Transport server or Edge Transport server that contains the Send connector.

Note

If the Send connector is configured on a Hub Transport server that also has the Mailbox server role installed, any value that you specify for the Fqdn parameter is not used. Instead, the FQDN of the server that is displayed by using the Get-ExchangeServer cmdlet is always used.
For servers that have both the Hub Transport server role and the Mailbox server role installed, the only way to remove the server name from the Received: headers of the outgoing message is to use the Remove-ADPermission cmdlet to remove the Ms-Exch-Send-Headers-Routing permission from the security principals that use the connector. This action will remove all the Received: headers from the message as the message leaves the Hub Transport server. We recommend that you don't remove the Received: headers for internal messages, because the Received: headers are used for maximum hop count calculations. For more information about the Remove-ADPermission cmdlet and the Get-ExchangeServer cmdlet, see the following topics:
Remove-ADPermission
Get-ExchangeServer

IgnoreSTARTTLS

Optional

System.Boolean

Valid input for this parameter is $True or $False. This parameter specifies whether to ignore the StartTLS option that is offered by a remote sending server. This parameter is used with remote domains. This parameter must be set to $False if the RequireTLS parameter is set to $True.By default, a Send connector with the value of the DNSRoutingEnabled parameter set to $True also has the value of the IgnoreStartTLS parameter set to $False. This means that the Send connector will always negotiate TLS if TLS is offered by the receiving server. If you set the value of the IgnoreStartTLS parameter to $True, the Send connector never tries to negotiate TLS with the receiving server.

Instance

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.SmtpSendConnectorConfig

This parameter enables you to pass an entire object to the command to be processed. It is mainly used in scripts where an entire object must be passed to the command.

IsScopedConnector

Optional

System.Boolean

This parameter controls the availability of the connector to other Hub Transport servers. When the value of this parameter is $False, the connector can be used by all Hub Transport servers in the Exchange organization. When the value of this parameter is $True, the connector can only be used by Hub Transport servers in the same Active Directory site. The default value is $False.

LinkedReceiveConnector

Optional

Microsoft.Exchange.Configuration.Tasks.ReceiveConnectorIdParameter

This parameter forces all messages that are received by the specified Receive connector out through this Send connector. The value of LinkedReceivedConnector can use any of the following identifiers to specify the Receive connector:

  • GUID

  • Distinguished name (DN)

  • Servername\ConnectorName

When you use the LinkReceiveConnector parameter with the Set-SendConnector cmdlet, you must also use the following parameters with the specified values:

  • AddressSpaces $null

  • DNSRoutingEnabled $False

  • MaxMessageSize unlimited

  • Smarthosts <SmarthostID>

  • SmarthostAuthMechanism <AuthMechanism>

MaxMessageSize

Optional

Microsoft.Exchange.Data.Unlimited

This parameter specifies the maximum size of a message that can pass through a connector. The default value is 10MB. When you enter a value, qualify the value with one of the following units:

  • B (bytes)

  • KB (kilobytes)

  • MB (megabytes)

  • GB (gigabytes)

Unqualified values are treated as bytes. Values that are entered in bytes are rounded up to nearest kilobyte. For example, 1048575B is rounded up to 1MB, and 1048577 is rounded up to 1025KB. The valid input range for this parameter is 0 to 2147483647 bytes. To remove the message size limit on a Send connector, enter a value of unlimited.

Name

Optional

System.String

The Name parameter is the administrator-supplied name of the connector. You must enclose the Name parameter in double quotation marks if the name contains spaces, as follows, for example: "New Send Connector".

Port

Optional

System.Int32

The valid input range for this parameter is an integer between 0 and 65535. The default value is 25. If you specify a value in the SmartHosts parameter, the Port value specifies the port number that is used for smart host forwarding. In most organizations, the port number is set to 25.

ProtocolLoggingLevel

Optional

Microsoft.Exchange.Data.ProtocolLoggingLevel

This parameter enables or disables protocol logging for the specified Send connector. A value of Verbose enables protocol logging for the connector. A value of None disables protocol logging for the connector. The default value is None. The location of the Send connector protocol logs for all Send connectors that are configured on a Hub Transport server or an Edge Transport server files is specified by using the SendProtocolLogPath parameter of the Set-TransportServer command.

RequireTLS

Optional

System.Boolean

This parameter specifies whether all messages that are sent through this connector must be transmitted by using Transport Layer Security (TLS). The default value is $False.

SmartHostAuthMechanism

Optional

Microsoft.Exchange.Data.Directory.SystemConfiguration.SmtpSendConnectorConfig+AuthMechanisms

This parameter is used during authentication with a remote server. This parameter is used only when a smart host is configured and the DNSRoutingEnabled parameter is set to $False. Valid values are None, BasicAuth, BasicAuthRequireTLS, ExchangeServer, or ExternalAuthoritative. All values are mutually exclusive. If you select BasicAuth or BasicAuthRequireTLS, you must use the AuthenticationCredential parameter to specify the authentication credential.

SmartHosts

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter takes one or more FQDNs, such as server.contoso.com, or one or more IP addresses, separated by commas. If you enter an IP address, you must enter the IP address as a literal as follows, for example: 10.10.1.1. The smart host identity can be the FQDN of a smart host server, a mail exchange (MX) record, or an address (A) record. If you configure an FQDN as the smart host identity, the source server for the Send connector must be able to use DNS name resolution to locate the smart host server.

SourceIPAddress

Optional

System.Net.IPAddress

This parameter specifies the local IP address to use as the endpoint for an SMTP connection to a remote messaging server. The default IP address is 0.0.0.0. This value tells the server to use any available local IP address. This parameter is only valid for Send connectors that are configured on Edge Transport servers.

SourceTransportServers

Optional

Microsoft.Exchange.Data.MultiValuedProperty

This parameter specifies the names of the Hub Transport servers that can use this Send connector. You can specify the names of more than one Hub Transport server by separating the names with commas. This parameter is not valid for Send connectors that are configured on Edge Transport servers.

UseExternalDNSServersEnabled

Optional

System.Boolean

This parameter specifies whether this Send connector should use the external DNS list that is specified by using the ExternalDNSServers parameter of the Set-TransportServer cmdlet. The default value is $False. The valid values of this parameter are $True and $False.

WhatIf

Optional

System.Management.Automation.SwitchParameter

The WhatIf parameter instructs the command to simulate the actions that it would take on the object. By using the WhatIf parameter, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf parameter.

Input Types

Return Types

Errors

Error Description

 

 

Example

The first code sample shows a Set-SendConnector command that modifies an existing Send connector. The command sets the MaxMessageSize limit to 10 MB and the ConnectionInactivityTimeOut to 15 minutes.

The second example shows the commands that modify an existing Send connector to use authentication when the Send connector sends an e-mail message to Contoso.com. The Contoso.com e-mail server requires that the local Exchange Server 2007 server authenticate with it to submit e-mail messages. To configure the Send connector to use authentication, you must first run the Get-Credential command and assign the command to a variable. When you run the Get-Credential command, the command asks for the user name and password of the account that will be used during authentication with the Contoso.com e-mail server.

In the example, the Get-Credential command is assigned to the $CredentialObject variable. After the authentication credentials are assigned to the $CredentialObject variable, the Send connector can be modified by using the Set-SendConnector cmdlet. The $CredentialObject variable is passed to the AuthenticationCredential parameter. In addition to setting the credentials that will be used, you must set the SmartHostAuthMechanism parameter to BasicAuth to instruct the Send connector to authenticate with the Contoso.com e-mail server by using the supplied credentials.

Set-SendConnector "Contoso.com Send Connector" -MaxMessageSize 10MB -ConnectionInactivityTimeOut 00:15:00 
$CredentialObject = Get-Credential
Set-SendConnector "E-Mail to Contoso.com" -AuthenticationCredential $CredentialObject -SmartHostAuthMechanism BasicAuth