MTA-STSとは?
MTA-STSは、送受信メールサーバー間に暗号化/セキュリティのレイヤーを追加するために設計されたインバウンドメールプロトコルである。SMTPセッションの一部(”250 STARTTLS “応答など)を削除できる攻撃者を介して、通信が暗号化されないことを可能にするSTARTTLSプロトコルの既存のホールにパッチを当てるために設計された。これは、接続を検証するサードパーティとしてDNSを持ち込むことで達成される。
MTA-STS は SMTP MTA-STS の略で、Simple Mail Transfer Protocol (SMTP) Mail Transfer Agent (MTA) Strict Transport Security (STS) の略です。MTA-STSの目的は、TLS(Transport Layer Security)を介してSMTPサーバー間の通信を暗号化し保護することであり、中間者攻撃者による送信中の電子メールの閲覧や操作を防止することである。
MTA-STSプロトコルは、定義されたサブドメインからHTTPS経由でポリシーファイルを取得するようメールサーバーに指示するDNSレコードを持つことで機能する。このファイルには、認証されメッセージの受信が承認された受信者のメールサーバーのリストと、受信メッセージに適用するポリシーが含まれている。
MTA-STSの条件は何ですか?
MTA-STSを展開する前に、以下を確認してください。
- お使いのMXがSMTP over TLSバージョン1.2以降をサポートしている。
- サーバーがSSL(HTTPS)をサポートしている
- お客様のMXは、有効期限が切れておらず、ドメイン名と一致するルート認証局から発行されたTLS証明書を使用しています。
DNSエントリを必要とするMTA-STSを実装する場合、TLSレポートも有効にする必要があります。TLSレポートを実装することで、ドメインのパフォーマンスとMTA-STSポリシーの成功/失敗率を確認できるようになります。これにより、メールフローを中断させないために、どのメール送信者に働きかける必要があるかについての重要な洞察が得られます。
MTA-STSポリシーファイルとは?
MTA-STSポリシーファイル・ファイルは、以下のキーと値のペアを含むプレーンテキストファイルです。
バージョン:ファイルのプロトコル・バージョン。この記事を書いている時点では、STSv1でなければならない。
mode: モード:ポリシーのモード。利用可能な値は、testing、enforce、またはnoneです。
- テスト:送信者は、ポリシー適用の失敗を示すレポート(TLSRPT)を送信します。これは、TLSRPTも動作するように実装されている必要があります。TLS 接続の失敗はブロックされませんが、レポートは受信できます。
- 強制:MTA STSをサポートする送信メールサーバーは、証明書認証に失敗するか、TLSをネゴシエートできないドメインにメールを配信しません。これらの失敗に関するレポートも送信されます。
- なし: 送信者はそのドメインにアクティブなポリシーがないものとして扱います。これは事実上MTA STSを無効にします。
mx:ドメインのMXレコード。ドメインのDNSで公開されているMXレコードと一致する必要があります。FQDNまたはワイルドカードホスト(mx: mail.example.orgまたはmx: *.example.org)を指定できます。各MXレコードがポリシーファイルの各行に追加されていることを確認してください。
max_age:ポリシーの最大有効期限を秒単位で指定します。これは送信者がドメインのポリシーをキャッシュする時間の長さを表します。31557600(およそ1年)を超えない範囲で、数週間以上に相当する値を使用することが推奨されます。
ポリシーファイルの例
version: STSv1
mode: testing
mx: mail.example.org
mx: *.example.org
mx: mail2.example.org
max_age: 604800
MTA-STSの実装方法
ポリシーのテキストファイルの準備ができたら、送信者がアクセスできるようにウェブ上で公開しなければならない。
ファイルは、あなたのドメインのサブドメイン上の特定のURLで利用できるようにする必要があります。URLの例としては
上記では、サブドメインmta-stsを作成し、サブドメイン内に.well-knownというディレクトリを作成する必要があります。次に、ポリシーのテキストファイルをサブドメインの.well-knownディレクトリにアップロードします。
DNSレコードの公開方法
ドメインでMTA-STSを有効にするには、DNS TXTリソースレコードが必要です。このレコードは一意のサブドメインに存在します。
_mta-sts
example.orgドメインの場合、_mta-sts.example.orgとなる。
TXTレコードには2つのキーと値のペアが含まれている。
- “v” プロトコルのバージョンで、現在はSTSv1のみをサポートしている。
- “id” ポリシーの更新を追跡するための1~32文字の英数字文字列。 この文字列は、MTA-STSポリシーファイルに変更があるたびに更新する必要があります。ID番号の構成には、変更日時を使用するのがよい方法です。
このような記録の例を以下に示す。
_mta-sts.example.org. IN TXT “v=STSv1; id=202104012135;”
dmarcianアカウントにログインし、以下のMTS-STS Inspector Toolを使用して、独自ドメインのレコードを確認します。
私たちがお手伝いします
Brandkeeperでは、メールセキュリティの専門家チームによるDMARCの導入から運用サポート及びコンサルテーション行っています。一旦はDMARCの導入をやってみたが運用を断念したお客様、または、導入時点でいくつものハードルであきらめた企業様のサポートも行っています。
お気軽にご連絡ください