ポリシー化されたSPF
これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンドpolicyd-spfです。
プログラム:
NAME
python-policyd-spf - SPF チェック用の純粋な Python Postfix ポリシー デーモン
VERSION
1.3
USAGE
注: パッケージ化と配布によっては、実行可能ファイルへの正確なパスが異なる場合があります。
異なります。
$policyd-spf (インストールされた設定ファイルの使用を開始)
$policyd-spf -h (使用状況メッセージの表示)
$policyd-spf /etc/postfix-policyd-spf-python/policyd-spf.conf
(使用する設定ファイル名)
構成オプションは、にインストールされているサンプル構成ファイルに説明されています。
/usr/share/doc/postfix-policyd-spf-python (policyd-spf.conf.commented) および 政策化された-
spf.conf(5)。 提供された setup.py は、コメントされていない設定ファイルを次の場所にインストールします。
/etc/postfix-policyd-spf-python/.
さらに、特定の IP アドレスまたはリストされたドメインで使用される IP アドレスをホワイトリストに登録します。
SPF チェックからのサポートがサポートされています。 ローカル送信または信頼できるリレーの SPF チェックをスキップする
も提供されます。 サンプル構成ファイルと ポリシーd-spf.conf(5)にフォーマットを示します
使用しています。
その他 マニュアル
このドキュメントは、Postfix の README_FILES/SMTPD_POLICY_README を読んでいることを前提としています。
Sender Policy Framework (SPF) については一般によく知られています。 詳細については、RFC 7208 を参照してください。
構成ファイルの情報については、man 5policyd-spf.conf を参照してください。
man 5policyd-spf.peruser は、さまざまな設定と使用に関するドキュメントを提供します。
ユーザー (メール受信者) ごとの構成オプション。
SYNOPSIS
python-policyd-spf は、SPF チェック用の Postfix SMTPd ポリシー デーモンです。 実装されています
純粋な Python で作成され、pyspf モジュールを使用します。 SPFのWebサイトは、 http://www.openspf.org/.
SPF をチェックするには、Postfix 設定を変更する必要があります。
DESCRIPTION
ログは syslogd に送信されます。
Postfix SMTP サーバープロセスが開始されるたびに、ポリシーサービスに接続します。
ソケットと Postfix は、この Python スクリプトの XNUMX つのインスタンスを実行します。 デフォルトでは、Postfix SMTP
サーバー プロセスは、100 秒のアイドル時間が経過した後、または 100 個のクライアントにサービスを提供した後に終了します。
したがって、この Python スクリプトを開始するコストは時間の経過とともに平準化されます。
デフォルトのpolicy_time_limitは1000秒です。 一部の SMTP には短すぎる可能性があります
完了するトランザクション。 SMTPD_POLICY_README で推奨されているように、これを拡張する必要があります。
3600秒まで。 これを行うには、/etc/postfix/main.cf で「policy_time_limit = 3600」を設定します。
SPF 結果が「失敗」となったメッセージは拒否されます。 Permerror が発生するメッセージは次のとおりです。
デフォルトでは、SPF レコードがないものとして扱われます。 Temperror 結果を取得するメッセージ
デフォルトでは、SPF レコードがないものとして扱われますが、そうすることもできます (そしておそらくそうすべきです)
別途許可されている場合は延期されます。 他の SPF 結果を取得するメッセージ (合格、なし、
Neutral、Softfail) には、SPF Received ヘッダーが先頭に追加されます。 注: スパマサシ 3.2
そしてフォローはスパムスコアリングにこのヘッダーを使用するため、
これらの Spamassassin バージョンでは個別の SPF チェックが行われます。 Spamassassin のドキュメントを参照してください。
詳細。
デフォルトのメール送信者の拒否/延期基準は、設計上、保守的です。 デフォルトの HELO
チェックアクションは、Pass/None 以外のメールを拒否することです。 HELO レコードははるかにシンプルです
Mail From レコードよりも優れており、HELO チェックに基づいて拒否しても、偽のメッセージは表示されません。
ポジティブなリスク。 これらの設定はローカル ポリシーの問題であり、次の条件を満たすように調整する必要があります。
サイト管理者の要件。 見る ポリシーd-spf.conf(5) 設定ファイル用
詳細。
ロギング
Policyd-spf は、そのアクティビティに関するメッセージを syslog に記録します。 の「debugLevel」値
「policyd-spf.conf」を増やすと、追加情報をログに記録できます。 設定時
値を「0」にすると、テスト結果 (SPF ヒット/ミス) のみが記録されます。 結果は次のようになります
Postfix に返され、Postfix によっても警告として記録されます。 このポリシーによるログの場合
サーバーの場合は、メール ログ ファイルで「policyd-spf」を探してください。
TESTING 、 ポリシー デーモン
ポリシーデーモンのテスト
ポリシー デーモンを手動でテストするには、次を実行します。
ポリシー化されたSPF
各クエリは属性の集まりです。 順序は重要ではなく、デーモンは
以下に示すすべての属性のうちのいくつかを示します。
request=smtpd_access_policy
プロトコル状態=RCPT
プロトコル名=SMTP
helo_name=some.domain.tld
queue_id=8045F2AB23
インスタンス=12345.6789
送信者=[メール保護]
受信者=[メール保護]
クライアントアドレス=1.2.3.4
client_name=another.domain.tld
[空行]
ポリシー デーモンは、属性リストとその後に続く同じスタイルで応答します。
空行:
アクション=わかりません
[空行]
ポストフィックス 統合
1. 以下を追加します /etc/postfix/master.cf:
ポリシーd-spf unix - nn - 0スポーン
ユーザー=policyd-spf argv=/usr/bin/policyd-spf
注: インストールされている Python インタープリターと、
ポリシー化された SPF。 これらはシステムごとに異なります。 デフォルト以外を使用するには
設定に加えて、構成ファイルも追加する必要があります (上記と
ポリシーd-spf.conf(5)詳細)。
2. Postfix ポリシーサービスを設定します。 /etc/postfix/main.cf:
smtpd_recipient_restrictions =
...
拒否_unauth_destination
check_policy_service unix:private/policyd-spf
...
ポリシーd-spf_time_limit = 3600
注: check_policy_service は、reject_unauth_destination の後に指定するか、
そうしないと、システムがオープンリレーになる可能性があります。
3. Postfix をリロードします。
onworks.net サービスを使用して、policyd-spf オンラインを使用する