DKIM、SPF、DMARC による防御
Plesk は、メールメッセージの識別確認のためにさまざまなアンチスパムソリューションをサポートします。
- DKIM (DomainKeys Identified Mail)とは、ドメイン名アイデンティティを送信メッセージと紐付けたり、受信メッセージに紐付けられたドメイン名アイデンティティを暗号認証によって検証したりするための方法です。
- SPF (Sender Policy Framework)とは、送信者アドレスの偽造、つまり偽の送信者アドレスの使用を防ぐための方法です。これによりメールサーバは、あるドメインから受信したメールが、そのドメインの管理者によって認証されたホストから送信されたことを確認できます。Plesk はさらに SRS (Sender Rewriting Scheme)を使用するため、転送されたメッセージが SPF チェックを通過できます。
- DMARC (Domain-based Message Authentication, Reporting and Conformance)とは、SPF と DKIM の機能を拡張するテクノロジーです。DMARC ポリシーは、受信側で DKIM および SPF チェックの結果に応じてメールメッセージをどのように処理すべきかを定義します。
メールサーバでこれらのソリューションを使用するための要件:
メールサーバ | DKIM | SPF | SRS | DMARC |
---|---|---|---|---|
Postfix(Linux) | ➕ | ➕ | ➕ | ➕ |
Qmail | ➕ | ➕ | ➖ | ➕ |
MailEnable Professional | ➕ | ➕ | ➖ | ➖ |
MailEnable Standard | バージョン 9.16 以降 | ➖ | ➖ | ➖ |
SmarterMail | ➕ | ➕ | ➕ | ➕ |
IceWarp | ➕ | ➕ | ➕ | ➖ |
この表の「+」は、このソリューションが Plesk Onyx でサポートされる すべてのバージョンでサポートされることを意味します。「-」は、このソリューションがサポートされないことを意味します。
DKIM
DKIM (DomainKeys Identified Mail)とは、メッセージに紐付けられたドメイン名の同一性を検証するに用いられる手法です。これにより、企業は自動生成された署名を送信メッセージに付加してメッセージを確実に送信できます。また、暗号化技術により、存在する署名が検証されます。
Plesk では、DKIM のサポートのために、外部ライブラリ(Linux)または Plesk に付属するメールサーバ(Windows)の機能を使用します。
警告: 外部の DNS サービスを使用する場合、DKIM 署名は送信メッセージでは機能しますが、受信側メールサーバでこれらのメッセージを検証することはできません。回避策として、Plesk DNS サーバをオフにして、外部 DNS サービスに DKIM 関連の DNS レコードを追加することができます。この場合、受信サーバでメッセージを検証できるようになります。外部 DNS サーバを使用するドメインに対して DKIM メール署名を有効にする方法はこちらで確認できます。
サーバで DKIM を有効/無効にする
サーバで DKIM 機能を有効にするには、 [ツールと設定]> [メールサーバ設定] ( [メール] グループ)に進み、 [DKIM スパム防御] セクションまでスクロールします。以下のオプションを使用して、サーバ上の DKIM を管理できます。
- 送信メールの電子署名を許可する:このオプションを使用すると、顧客はドメインごとに送信メールの DKIM 署名をオンにできます。すべての送信メールメッセージの署名が自動的に有効になるわけではありません。DKIM を使用するには、ドメインごとに DKIM をオンにする必要があります。
- 受信メールを検証する:(Plesk for Linux)このオプションは、すべての受信メールに対して DKIM チェックをオンにします。すべてのメッセージがチェックされ、チェックが失敗すると特別なヘッダでマークされます。
それぞれのオプションは個別に選択できます。送信メールの署名と受信メールのチェックのどちらかを有効にするか、あるいは両方を有効にするかを選択できます。
注釈: DMARC が有効な場合、受信メールに対する DKIM チェックを無効にすることはできません。
Plesk のアップグレード後に DKIM を有効にする
Plesk Onyx 以前のバージョンから Plesk をアップグレードすると、DomainKeys が DKIM に自動的に置き換えられます。Plesk で DomainKeys 機能が有効であった場合、DKIM も有効になります。
ドメインに対して DKIM 署名を有効にする
サーバで DKIM 署名が有効である場合(上記の「サーバで DKIM を有効/無効にする」セクションを参照)、顧客は所有しているドメインからの送信メールに署名することができます。
個別ドメインからの送信メールで DKIM 署名を有効にするには:
- 該当する契約を管理用に開きます。
- 次に、[メール]タブ >[メール設定]に移動します。
- ドメインを選択し、[サービスのアクティブ化/非アクティブ化]をクリックします。
- [送信メールメッセージに電子署名する DKIM スパム防御システム]に対して[有効化]を選択して[OK]をクリックします。
注釈: ドメインで DNS サービスをアクティブ化する必要があります。
ドメインで DKIM をアクティブ化すると、Plesk によってドメインの DNS ゾーンに以下の 2 つのレコードが追加されます。
-
default._domainkey.<example.com>
- 生成された鍵のパブリック部分が含まれます。 -
_ domainkey.<example.com>
- DKIM ポリシーが含まれます。
SPF と SRS
SPF (Sender Policy Framework) is a method used to prevent sender address forgery, i.e. using fake sender addresses. SPF allows a domain’s administrator to set a policy that authorizes particular hosts to send mail from the domain. A receiving mail server checks that the incoming mail from a domain comes from a host authorized by that domain’s administrator. SPF is based on the rules specified by the administrator in the sender’s DNS zone.
Plesk では、DNS レコードにルールを指定することによって送信メールに SPF ポリシーをセットアップできます。さらに、Linux では、受信メールのチェック用に SPF を有効化できます。
受信メールのチェックに SPF を有効化すると、メールサーバは送信者のホストで DNS ルックアップを行い、SPF 関連の DNS レコードを探します。以下のルールセットを定義できます。
-
ローカルルール:メールサーバが実際に SPF チェックを行う前に スパムフィルタによって使用されるルール。
注釈: これらのルールは、SPF 関連 DNS レコードまたは送信者によって指定されたルールと結合されます。たとえば、送信者の SPF ポリシーが
example.com. TXT v=spf1 +a +mx ?all
で、ローカルルールがa:test.plesk.com
である場合、ポリシーはexample.com. TXT v=spf1 +a +mx +a:test.plesk.com ?all
になります。 -
guess ルール:SPF レコードを発行しないドメインに適用されるルール。
SPF チェックのステータスに関する情報は、こちらで確認できます。
送信メールに SPF ポリシーをセットアップするには:
[ツールと設定]>[DNS テンプレート]に進み、SPF に関連する TXT DNS レコードを編集します。この DNS レコードは常にサーバ全体の DNS テンプレートにあります。Plesk で作成された SPF レコードの例:
example.com. TXT v=spf1 +a +mx +a:test.plesk.com -all
このレコードの各部分には次のような意味があります。
部分 | 説明 |
---|---|
v=spf1 |
このドメインは SPF バージョン 1 を使用する。 |
+a |
「A」レコードのすべてのホストはメール送信が許可される。 |
+mx |
「MX」レコードのすべてのホストはメール送信が許可される。 |
+a:test.plesk.com |
ドメイン test.plesk.com はメール送信が許可される。 |
-all |
他のすべてのドメインはメール送信が許可されない。 |
Read more about the syntax of SPF DNS records. The policy notation is available at RFC7208.
Linux ベースのサーバで受信メールのチェック用に SPF を有効にするには:
-
[ツールと設定]> [メールサーバ設定] ( [メール] グループ内)に進みます。 [設定] タブに、サーバ全体のメールプリファレンス画面が表示されます。
-
[SPF スパム防御] セクションで、 [SPF スパム防御を有効化して受信メールをチェック] チェックボックスをオンにします。
-
DNS ルックアップが失敗した場合に SPF チェックを続けたい場合は、 [DNS ルックアップで問題がある場合に SPF チェックを続ける] をオンにします。この場合、ホストが解決できないか、SPF 関連レコードが見つからない場合に、SPF guess ルールが適用される可能性があります。
-
[SPF チェックモード]ドロップダウンボックスからオプションを選択して、SPF がローカルルールと guess ルールを適用したときにメールをどのように処理するかを指定します。
- Received SPF ヘッダの作成のみ。ブロックはしない: SPF チェック結果を問わず、すべての受信メッセージを受け付けます。
- DNS ルックアップで問題が発生した場合、一時エラー通知を使用:DNS ルックアップの問題が原因で SPF チェックが失敗した場合でも、SPF チェック結果を問わずすべての受信メッセージを受け付けます。
- SPF が「fail」と判断したメールを破棄する(拒否):当該ドメインの使用が許可されていない送信者からのメッセージを拒否します。
- SPF が「softfail」と判断したメールを破棄する:送信が許可されていることを SPF システムで確認できない送信者や、当該ドメインに対して SPF レコードが発行されていないため許可されない送信者からのメッセージを拒否します。
- SPF が「neutral」と判断したメールを破棄する:送信が許可されていることを SPF システムで確認できない送信者や、当該ドメインに対して SPF レコードが発行されていないため許可されない送信者からのメッセージを拒否します。
- SPF が「pass」と判断しなかったメールを破棄する:理由を問わず(例:送信者のドメインに SPF が実装されていない、SPF チェックの結果が「unknown」(不明)ステータスである)、SPF チェックに合格しなかったメッセージを拒否します。
-
ローカルルールを指定するには、必要なルールを[SPF ローカルルール]ボックスに入力します。例**:include:spf.trusted-forwarder.org**
SPF ルールの詳細は、 http://tools.ietf.org/html/rfc4408 を参照してください。
-
[SPF guess ルール]ボックスに guess ルールを指定することもできます。
例**:v=spf1 +a/24 +mx/24 +ptr ?all**
-
メッセージが拒否された場合に SMTP 送信者に戻されるエラー通知を指定するには、[SPF 解釈テキスト]ボックスにテキストを入力します。
何も入力しないと、デフォルトテキストが通知として使用されます。
-
[OK]をクリックしてセットアップを完了します。
受信メールに対して SPF チェックを無効にするには:
- [ツールと設定]> [メールサーバ設定] ( [メール] グループ内)に進みます。 [設定] タブに、サーバ全体のメールプリファレンス画面が表示されます。
- [SPF スパム防御] セクションで、 [SPF スパム防御を有効化して受信メールをチェック] チェックボックスをオフにします。
注釈: Linux ベースのサーバでは、 DMARC が有効な場合、受信メールに対して SPF チェックを無効にできません。
SRS を使用する
SPF に加え、Plesk に付属する一部のメールサーバは SRS (Sender Rewriting Scheme)をサポートします。これは、メールの転送時に送信者アドレスを書き換えることにより、転送されるメールが引き続き SPF に準拠するようにする仕組みです。SRS は、SPF の使用時にメッセージが確実に送信されるようにします。
SRS は、Plesk でホストされているメールボックスからのメッセージ転送時に、自動的に使用されます。
SRS 機能を提供するために、Plesk は外部ライブラリ(Linux)またはメールサーバソフトウェア(Windows)の機能を使用します。
DMARC
DMARC (Domain-based Message Authentication, Reporting and Conformance)とは、SPF と DKIM の機能を拡張するテクノロジーです。DMARC ポリシーは、受信側で DKIM および SPF チェックの結果に応じてメールメッセージをどのように処理すべきかを定義します。このテクノロジーは、送信者の DNS ゾーンに指定されたルールを利用します。
Plesk では、DNS レコードにルールを指定することによって送信メール用の DMARC ポリシーをセットアップできます。さらに、Linux および Windows ベースのサーバで、DMARC による受信メールのチェックを有効にできます。Linux ベースのサーバの場合、Plesk でサポートされる任意のメールサーバを使用できますが、Windows ベースのサーバの場合、SmarterMail のみを使用できます。
送信メール用のカスタム DMARC ポリシーをセットアップするには:
[ツールと設定]>[DNS テンプレート]に進み、DMARC ポリシーに関連する DNS レコードを編集します。これらの DNS レコードは、常に サーバ全体の DNS テンプレート にあります。一方、DKIM に関連する DNS レコードは、ドメインで DKIM をアクティブ化すると、個別ドメインの DNS ゾーンに追加されます。
たとえば、Plesk のデフォルト DMARC ポリシーは、次のレコードに定義されています。
_dmarc.<domain>. TXT v=DMARC1; p=none
このポリシーでは、受信側メールサーバでチェック結果が失敗であった場合でもメッセージを削除しないことが推奨されます。より厳格なポリシーを指定することもできますが、受信側サーバで受信するメールに独自のポリシーを適用することが可能です。
ホスティング顧客は、個別のドメインのポリシーを編集できます。
ポリシーの記法を含め、DMARC について詳しくは、https://datatracker.ietf.org/doc/rfc7489/ を参照してください。
DMARC による受信メールのチェックを有効にするには: