こんにちは、Habr!
新しいドメインまたは使用頻度の低いドメインからの電子メールが最初に「スパム」または「スパム」というラベルを受信し、適切なフォルダーに分類されると問題が発生することがよくあります。 そして、これは郵送に関するものではなく、ビジネスに関するものであり、手紙ではなく、人々によって送られるものです。 私はそのような問題に遭遇しました。
検索の結果、構成にはDKIM署名の使用が含まれておらず、その必要性は必須レベルに上昇し始めていることがわかりました。 しかし、キャッチは、MS Exchange EdgeがDKIMとの連携方法を知らないForefront Protectionと一緒にMTAとして使用され、postfixなどの別のMTAの前にインストールすると、Forefront DNS-BLの拒否、SSL / TLSの再構成、および構成がさらに複雑になります。 そして、私を許します、しかし、Windows管理者として、私は本当にこれらすべてをしたくありませんでした。
他のソリューションの検索が始まりました。 マイクロソフトは、SPFレコードの十分性を固く信じています。2013年版のExchangeでも、DKIMはサポートされておらず、将来の追加計画はありません。 最初は有料のDkimXとEmailArchitectのみが見つかりましたが、その後Stefan“ Pro” Profanterから無料のExchange DKIM Signerモジュールに遭遇しました。その使用について説明します。
DKIM
DKIMの原則とその設定に関する多くの説明があります。これに不慣れな場合は、次の記事を読んでください。すべてが明確にアクセスできます:
DKIMはシンプル で、SpamフォルダーにはSMTPサーバーのセットアップはありません 。
Exchange DKIM署名者
トランスポートエージェント、内部メッセージハンドラーです。 Exchangeにはそれらの多くがあります。たとえば、これは14になり、それぞれが独自の作業、スパムのチェック、添付ファイルのフィルタリング、ヘッダーの変更に従事し、手紙は順番にそれらを通過します。 したがって、DKIM署名エージェントは、レターが変更されなくなった最後に配置する必要があります。
Exchange 2007sp3-2010sp3を使用している場合は、
ここから最新バージョンをダウンロードできます。Exchange2013の場合、インストール用のGUIを備えたバージョン2.0のエージェントが使用されます。質問はありません。オンライン/オフラインインストーラーへのリンクは
ここにあります 。
Exchange 2010 SP3の例でのインストール
操作は、外部トランスポートの役割を持つすべてのサーバーで実行する必要があります。
それが必要になります(これはすべて、上記のDKIMセクションのリンクに関する記事で説明されています)。
-鍵のペア(公開鍵と秘密鍵)。サードパーティのオンラインサービスではなく、opensslを使用することをお勧めします。
-DNSに必要なエントリを作成します
これで、エージェント自体が任意のフォルダーに配置され、インストールはExchange管理シェルを介して実行されます。
1.エージェントがあるフォルダーに移動します(cd c:\ dkimにします)。
2.コマンド「
Set-ExecutionPolicy Unrestricted 」を入力します。これにより、外部スクリプトの実行が許可されます。
3.インストールスクリプト「
。\ Install.ps1 」を実行します(注意、Exchange Transportサービスはプロセスで停止されます)。
4.次に、構成をすぐに変更するように求められます。デフォルトでは、構成は「C:\ Program Files \ Exchange DkimSigner」にあり、テキストエディターで開いてこの場所を修正します。
/>
/>
/>
ここでは、例として3つのルールを説明します。Domain=はキーの署名元のドメイン、Selector =は公開キーのあるセレクター、PrivateKeyFile =プライベートキーへのパス(相対または絶対)、RecipientRule =およびSenderRule =はフィルターです正規表現による送信者または受信者は、このキーで署名する必要がある文字を決定します。
1行だけ残してデータを入力するだけで十分です。その後、すべての発信レターが署名されます。5. Enterキーを押して、インストールの終了に関するメッセージを表示します。トランスポートサービスが開始されます。 イベントログでエラーの可能性をチェックします。[アプリケーション]セクションで、エージェントは[Exchange DKIM]の代わりにエントリを残します。
6.
Get-TransportAgentコマンドを使用してトランスポートエージェントのリストも確認します
。ExchangeDkimSignerは最後に配置する必要があります。そうでない場合は、
Set-TransportAgent -Identity Exchange DkimSigner-Priority Nコマンドで優先度を変更します。 -リスト内の最後のエージェントの番号。
7.「
Set-ExecutionPolicy Restricted 」コマンドは、外部スクリプトのデフォルトの実行ポリシーを返します。
これで、メールプロバイダーのいずれかのアドレスに手紙を送信して、サービス情報に大切な「
dkim = pass 」が表示されることを確認できます。これが発生しなかった場合は、エージェント
コンフィグが正しく入力されていること、およびDNSエントリを確認します。
エージェントの無効化と削除
次のコマンドを使用して、エージェントを一時的に無効化または削除できます。
1.トランスポートサービス「Net Stop MSExchangeTransport」を停止します。
2.エージェントの無効化Disable-TransportAgent -Identity "Exchange DkimSigner"、
3.必要に応じて、バインディング「Uninstall-TransportAgent -Identity」Exchange DkimSigner「」を削除します。
4.トランスポート「Net Start MSExchangeTransport」を開始します。
5.ファイルを削除する
また、インストールに添付されているスクリプト「
。\ Uninstall.ps1 」を使用して
アンインストールすることもできます。その使用方法は
インストールに似ています。
おわりに
これは、MS ExchangeにDKIM署名を追加する無料で簡単な方法です。英語の詳細情報と説明は、インストールキットのドキュメントに記載されています。 この記事がこの問題に困惑している人々に役立つことを願っています。