Google Cloud を使用して複数のドメイン向けに動的な MTA-STS ポリシーをホストする方法
このガイドでは、Google Cloud を使用して MTA-STS(Mail Transfer Agent Strict Transport Security)を設定する方法について説明します。
これを実現するために、Cloud Run 関数を使用します。この関数は URL からドメインを識別し、HTTPS 経由で該当するポリシーファイルを配信します。Cloud Run の最大の利点の一つは、Google が管理型 SSL 証明書を自動的にプロビジョニングし、更新してくれる点です。
注:このガイドでは多くのデフォルト値を使用していますが、これらはお客様の組織のセキュリティ体制や既存のGoogle Cloudの設定に適していない場合があります。本番環境で設定を行う際は、この点にご留意ください。
ステップ 1: Cloud Run 関数を作成する
当社のCloud Run関数は、リクエストのHostヘッダーを確認し、どのポリシーを返すかを決定します。
- Cloud Runコンソールにアクセスします。「関数の作成」の見出しの下で、「Python」を選択します
- 関数に名前を付けます(例:mta-sts-handler)
- Pythonランタイム3.xを選択してください
- 「一般公開を許可」を選択
- 「作成」をクリック
- 以下のコードを貼り付け、必要に応じてpolicies辞書の内容を変更してください
- 関数のエントリポイントを「mta_sts_handler」に変更し、「保存」をクリックしてから再デプロイします

ステップ 2: ドメインのマッピングを作成する
次に、ドメインを前の手順で作成したサーバーレス関数にマッピングする必要があります。
まだ行っていない場合は、Googleでドメインの確認を行う必要があります。これにより、あなたがドメインの所有者であることをGoogleに証明し、アカウントがあなたに代わってドメイン名を管理することを許可することになります。
- 「ドメインのマッピング」 に移動し、「 マッピングを追加」をクリックします
- 「マッピングするサービスを選択」のドロップダウンメニューから、新しく作成した関数「mta-sts-handler」を選択してください
- 「認証済みのドメインを選択」では、すでに認証済みのドメインを選択するか、認証するドメインを入力します。
ドメインの確認が完了していない場合は、DNSにTXTレコードを設定するよう求められます。これにより、Googleに対してドメインの所有権を証明し、Googleによるドメインの使用を許可することになります。
- 「サブドメインを指定」には、「mta-sts」と入力してください

- ドメインがすでに認証済みの場合は、指定された値を使用してCNAMEレコードを入力するよう求められます。

この手順を、所有している各ドメインに対して繰り返すことができます
ポリシーファイルが有効であることを確認してください
すべての手順が完了したので、すべてが想定通りに動作しているか確認する必要があります。確認方法は2つあります。
最初の選択肢は、当社の「TLS & MTA-STS Inspector」を利用することです。これにより、ポリシーファイルが正しく配信されていることを確認できるだけでなく、TLSおよびMTA-STSレコードが有効であるかどうかもチェックされます。「TLS & MTA-STS Inspector」は、当社のDMARC管理プラットフォームを通じて、サブスクリプションまたは無料トライアルでのみご利用いただけます。

あるいは、ブラウザにURLを入力することもできます。正常に動作していれば、以下のように、ブラウザからセキュリティ警告が表示されることなく、ポリシーファイルが表示されます:

dmarcianがどのように役立つか
dmarcianは、メールセキュリティの専門家チームを擁し、ドメインセキュリティを通じてメールとインターネットの信頼性を高めることを使命としています。当社は、組織のドメインカタログの評価から、長期的な視点に立ったメールセキュリティの導入・運用管理まで、全面的にサポートいたします。無料トライアルにご登録いただければ、当社のオンボーディングおよびサポートチームが、導入から運用まで一貫してサポートいたします。
この会話を続けたいですか?dmarcianフォーラムへどうぞ。