Exchange Server でデフォルトの受信コネクタを再作成する

Exchange Server 2013/2016/2019 には、デフォルトの Exchange Server 受信コネクタが 5 つあります。これらの受信コネクタは、Exchange Server のインストール時に自動的に作成されます。場合によっては、何かを調整してメール フローが機能しなくなったために、デフォルトの受信コネクタを再作成する必要があることがあります。この記事では、Exchange Server でデフォルトの受信コネクタを再作成する方法について説明します。

Exchange サーバーは受信コネクタを使用して、以下からの受信 SMTP 接続を制御します。

  1. Exchange 組織の外部にあるメッセージング サーバー。
  2. ローカル Exchange サーバーまたはリモート Exchange サーバー上のトランスポート パイプラインのサービス。
  3. 認証された SMTP を使用してメッセージを送信する必要がある電子メール クライアント。

Exchange Server 受信コネクタの詳細を参照してください。

  • Exchange Server 受信コネクタのログ記録
  • Exchange Server で匿名 SMTP リレーを構成する
  • 受信コネクタを別の Exchange サーバーにコピーする
  • リモート IP アドレスを Exchange 受信コネクタにインポートする
  • Exchange 受信コネクタからリモート IP アドレスをエクスポートする

Exchange Server の受信コネクタを見てみましょう。 Exchange 管理センターにサインインし、次の場所に移動します。メール フロー > 受信コネクタ.

Exchange Server 上の 5 つのデフォルトの Exchange Server 受信コネクタは次のとおりです。

  1. クライアントフロントエンド
  2. クライアントプロキシ
  3. デフォルト
  4. デフォルトのフロントエンド
  5. アウトバウンドプロキシフロントエンド

デフォルトの受信コネクタを再作成する

Exchange 管理センターで既定の受信コネクタを再作成するには、以下の画面に進み、各受信コネクタに同じ構成を構成していることを確認します。

クライアント フロントエンド受信コネクタ

クライアント フロントエンド受信コネクタを再作成するには、以下の構成を実行します。

一般的な

安全

スコーピング

クライアントプロキシ受信コネクタ

クライアント プロキシ受信コネクタを再作成するには、以下の構成を実行します。

一般的な

安全

スコーピング

デフォルトの受信コネクタ

デフォルトの受信コネクタを再作成するには、以下の構成を実行します。

一般的な

安全

スコーピング

デフォルトのフロントエンド受信コネクタ

デフォルトのフロントエンド受信コネクタを再作成するには、以下の構成を実行します。

一般的な

安全

スコーピング

アウトバウンド プロキシ フロントエンド受信コネクタ

送信プロキシ フロントエンド受信コネクタを再作成するには、以下の構成を実行します。

一般的な

安全

スコーピング

次のステップでは、PowerShell スクリプトを使用してデフォルトの受信コネクタを再作成する方法を示します。

デフォルトの受信コネクタ PowerShell スクリプトを再作成する

PowerShell スクリプトを使用して Exchange Server でデフォルトの受信コネクタを再作成するには、次の手順に従います。

ステップ 1. Set-ReceiveConnectors PowerShell スクリプトをダウンロードする

Set-ReceiveConnectors.ps1 PowerShell スクリプトをダウンロードして Exchange Server に配置します。C:スクリプトフォルダ。 scripts フォルダーがない場合は、作成します。

スクリプト実行時のエラーを防ぐために、ファイルのブロックが解除されていることを確認してください。詳細については、PowerShell スクリプトの実行時の「デジタル署名がありません」エラーの記事をご覧ください。

別のオプションは、以下のコードをコピーしてメモ帳に貼り付けることです。名前を付けてくださいSet-ReceiveConnectors.ps1そしてそれをC:スクリプトフォルダ。

<#
    .SYNOPSIS
    Set-ReceiveConnectors.ps1

    .DESCRIPTION
    Recreate the default Receive Connectors on the Exchange Server.

    .LINK
    www.alitajran.com/recreate-default-receive-connectors-exchange-server

    .NOTES
    Written by: ALI TAJRAN
    Website:    www.alitajran.com
    LinkedIn:   linkedin.com/in/alitajran

    .CHANGELOG
    V1.00, 09/25/2023 - Initial version
    V1.10, 10/15/2024 - Added parameter for server name
#>

param (
    [Parameter(Mandatory = $true)]
    [string]$ServerName
)

# Define IP Range
$range = "0.0.0.0-255.255.255.255", "::-ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"

# Check if the server with the specified name exists
$targetServer = Get-ExchangeServer -Identity $ServerName -ErrorAction SilentlyContinue

if ($targetServer) {
    # Define connector parameters for splatting
    $clientProxyParams = @{
        Name              = "Client Proxy $ServerName"
        Bindings          = "0.0.0.0:465", "[::]:465"
        AuthMechanism     = "Tls", "Integrated", "BasicAuth", "BasicAuthRequireTLS", "ExchangeServer"
        RemoteIPRanges    = $range
        TransportRole     = "HubTransport"
        PermissionGroups  = "ExchangeUsers", "ExchangeServers"
        MaxMessageSize    = "35MB"
        MessageRateLimit  = 5
        MessageRateSource = "User"
        EnableAuthGSSAPI  = $true
        Server            = $ServerName
    }

    $defaultFrontendParams = @{
        Name                 = "Default Frontend $ServerName"
        Bindings             = "0.0.0.0:25", "[::]:25"
        AuthMechanism        = "Tls", "Integrated", "BasicAuth", "BasicAuthRequireTLS", "ExchangeServer"
        RemoteIPRanges       = $range
        TransportRole        = "FrontendTransport"
        PermissionGroups     = "AnonymousUsers", "ExchangeServers", "ExchangeLegacyServers"
        MaxMessageSize       = "36MB"
        DomainSecureEnabled  = $true
        ProtocolLoggingLevel = "Verbose"
        Server               = $ServerName
    }

    $outboundProxyFrontendParams = @{
        Name                 = "Outbound Proxy Frontend $ServerName"
        Bindings             = "0.0.0.0:717", "[::]:717"
        AuthMechanism        = "Tls", "Integrated", "BasicAuth", "BasicAuthRequireTLS", "ExchangeServer"
        RemoteIPRanges       = $range
        TransportRole        = "FrontendTransport"
        PermissionGroups     = "ExchangeServers"
        MaxMessageSize       = "36MB"
        DomainSecureEnabled  = $true
        ProtocolLoggingLevel = "Verbose"
        Server               = $ServerName
    }

    $clientFrontendParams = @{
        Name              = "Client Frontend $ServerName"
        Bindings          = "0.0.0.0:587", "[::]:587"
        AuthMechanism     = "Tls", "Integrated", "BasicAuth", "BasicAuthRequireTLS"
        RemoteIPRanges    = $range
        TransportRole     = "FrontendTransport"
        PermissionGroups  = "ExchangeUsers"
        MaxMessageSize    = "35MB"
        MessageRateLimit  = 5
        MessageRateSource = "User"
        EnableAuthGSSAPI  = $true
        Server            = $ServerName
    }

    $defaultParams = @{
        Name                                    = "Default $ServerName"
        Bindings                                = "[::]:2525", "0.0.0.0:2525"
        AuthMechanism                           = "Tls", "Integrated", "BasicAuth", "BasicAuthRequireTLS", "ExchangeServer"
        RemoteIPRanges                          = $range
        TransportRole                           = "HubTransport"
        PermissionGroups                        = "ExchangeUsers", "ExchangeServers", "ExchangeLegacyServers"
        MaxMessageSize                          = "35MB"
        MaxInboundConnectionPerSource           = "Unlimited"
        MaxInboundConnectionPercentagePerSource = 100
        MaxRecipientsPerMessage                 = 5000
        SizeEnabled                             = "EnabledWithoutValue"
        Server                                  = $ServerName
    }

    # Check and create connectors if they don't exist
    $connectors = @{
        "Client Proxy"            = $clientProxyParams
        "Default Frontend"        = $defaultFrontendParams
        "Outbound Proxy Frontend" = $outboundProxyFrontendParams
        "Client Frontend"         = $clientFrontendParams
        "Default"                 = $defaultParams
    }

    foreach ($connectorName in $connectors.Keys) {
        $connectorParams = $connectors[$connectorName]
        if (!(Get-ReceiveConnector | Where-Object { $_.Name -eq $connectorParams.Name -and $_.Server -eq $ServerName })) {
            $null = New-ReceiveConnector @connectorParams
            Write-Host "$connectorName Connector created successfully." -ForegroundColor Green
        }
        else {
            Write-Host "$connectorName Connector already exists." -ForegroundColor Yellow
        }
    }
}
else {
    Write-Host "Server '$ServerName' not found. Please provide a valid Exchange Server name." -ForegroundColor Red
}

ステップ 2. デフォルトの受信コネクタを削除する

再作成するデフォルトの受信コネクタを削除することが重要です。そのうちの 1 つだけを再作成し、その特定のデフォルトの受信コネクタのみを削除するとします。

この例では、デフォルトの受信コネクタをすべて再作成するため、すべて削除します。

ステップ 3. Set-ReceiveConnector PowerShell スクリプトを実行する

Exchange 管理シェルを管理者として起動し、Set-ReceiveConnectors.ps1 PowerShell スクリプトを実行して、既定の受信コネクタを再作成します。

C:scripts.Set-ReceiveConnectors.ps1 -ServerName "EX01-2019"

スクリプトは次の場合に表示されます。

  1. デフォルトの受信コネクタがすでに存在する場合は、次のデフォルトの受信コネクタに進みます。
  2. デフォルトの受信コネクタが存在しない場合は、正しい設定で新しいデフォルトの受信コネクタが作成されます。
  3. 間違った Exchange Server 名が設定されている場合、スクリプトは有効な Exchange Server 名を入力する必要があることを示します。
Client Proxy Connector created successfully.
Default Frontend Connector created successfully.
Outbound Proxy Frontend Connector created successfully.
Client Frontend Connector created successfully.
Default Connector created successfully.

ステップ 4. デフォルトの受信コネクタを確認する

デフォルトの受信コネクタが Exchange Server に正常に作成されたことを確認します。

推奨読書:Exchange 受信コネクタからリモート IP アドレスを削除する

それでおしまい!

結論

Exchange Server でデフォルトの受信コネクタを再作成する方法を学習しました。受信メール フローに問題がある場合、またはデフォルトの Exchange Server 受信コネクタを変更して元の構成に戻したい場合は、コネクタを再作成します。 Exchange 管理センターまたは PowerShell スクリプトを使用して受信コネクタを再作成します。

この記事は気に入りましたか? Exchange SMTP リレーを使用して IP アドレスを検索することもおすすめです。ぜひフォローしてこの記事をシェアしてください。

Related Posts