ISPConfig3の強化Postfix
著者:JesúsCórdoba
メール:j.cordoba [at] gmx [dot] net
フォーラムユーザー:pititis
バージョン:1.2
このチュートリアルの目的は、認証されたユーザーが信頼されているインターネットメールサーバー用にISPConfigによって使用されるメールサーバーのpostfixを強化することです。この設定を使用すると、大量のスパムがメールキューに入る前に拒否され、多くのシステムリソースが節約され、メールサーバーがスパマーやスパムボットネットに対して強力になります。行きましょう。
リバースDNS、(DNS PTRレコード)
rdnsを設定するには、次の2つの状況があります。
-ISPでは、自分で変更することができます。コントロールパネルをご覧ください。
-ISPはあなたがそれを変更することを許可していません。リクエストをメールで送信するだけです。
rdnsレコードをサーバーに要求またはポイントします。つまり、server.example.comコマンドhost:[email protected] /#host 149.20.4.69を使用してrdnsを確認できます。
69.64-27.4.20.149.in-addr.arpaドメイン名ポインターpub2.kernel.org。
DNSは変更を伝播する必要があることに注意してください。
ドメインのSPF(DNS TXTレコード)
SPFは、送信者のIPアドレスを検証することにより、一般的な脆弱性である電子メールのなりすましを検出することにより、電子メールスパムを防止するように設計された電子メール検証システムです。
spfを設定するには、DNSゾーンにTXTレコードを追加する必要がありますが、最初にここでレコードを生成できます:http://www.mailradar.com/spf/
spfの結果をコピーし、[ISPConfig]->[dns]->[zones]->ドメイン名をクリック->[records]タブをクリック->[TXT]をクリックします
ホスト名->example.com。 (最後にドットが付いています!)
テキスト->ここにspfの結果を貼り付けます( ""なし)。
例:v =spf1 a mx ptr ip4:11.222.333.444-all…そして[保存]をクリックします。
DNSは変更を伝播する必要があることを忘れないでください。
Postfix main.cf
/etc/postfix/main.cfに何かを追加/変更してみましょう
ヘリの制限:
smtpd_helo_required =yessmtpd_helo_restrictions =permit_mynetworks、permit_sasl_authenticated、reject_non_fqdn_helo_hostname、reject_invalid_helo_hostname
動作中のHelo制限:
Jan 12 01:57:08 server postfix / smtpd [4687]:NOQUEUE:reject:RCPT from unknown [186.43.77.153]:450 4.7.1クライアントホストが拒否されました:ホスト名が見つかりません、[186.43.77.153]; from =to = proto =ESMTP helo =<[186.43.77.153]> Jan 8 00:32:22 server postfix / smtpd [17504]:NOQUEUE:reject:RCPT 201-93-87-2.dial-up.telesp.net.br [201.93.87.2]から:504 5.5.2 :Heloコマンドが拒否されました:完全修飾ホスト名が必要です。 from = to = proto =ESMTP helo =
厳密なrfc:
strict_rfc821_envelopes=はい
クライアントの制限:
smtpd_client_restrictions =permit_mynetworks、permit_sasl_authenticated、reject_unknown_client_hostname、check_client_access mysql:/etc/postfix/mysql-virtual_client.cf
受信者の制限:
smtpd_recipient_restrictions =permit_mynetworks、permit_sasl_authenticated、reject_unauth_destination、check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf、reject_unknown_recipient_domain
データの制限:
smtpd_data_restrictions =reject_unauth_pipelining
Smtpd遅延:
smtpd_delay_reject =yes
postfixのリロードを忘れないでください:
/etc/init.d/postfixリロード
SPF Postfixのチェック(DebianおよびUbuntu)
Intstall spfパッケージ:
apt-get install postfix-policyd-spf-python
または
apt-get install postfix-policyd-spf-perl
これを/etc/postfix/main.cfに追加します:
policy-spf_time_limit =3600s
そして、smtpd_recipient_restrictionsの最後にcheck_policy_service unix:private / policy-spfを追加します:
smtpd_recipient_restrictions =permit_mynetworks、permit_sasl_authenticated、check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf、reject_unauth_destination、reject_unknown_recipient_domain、check_policy_service unix:private / policy-spf
ここでmaster.cfを編集し、最後にこれを追加します(Pythonバージョンの場合):
policy-spf unix --n n --- spawn user =nobody argv =/ usr / bin / policyd-spf
または、Perlバージョンの場合はこれ:
policy-spf unix --n n --- spawn user =nobody argv =/ usr / sbin / postfix-policyd-spf-perl
…postfixをリロードします。
/etc/init.d/postfixリロード
Spfチェックの実行:
Jan 4 15:50:11 server postfix / smtpd [19096]:NOQUEUE:reject:RCPT from g230068165.adsl.alicedsl.de [92.230.68.165]:550 5.7.1:受信者アドレスが拒否されました:メッセージが拒否されました:SPFが失敗しました-許可されていません。 http://www.openspf.org/Why?s=helo;id=paxxxxxn.com;ip=92.230.68.165;[email protected];を参照してください。 from = to = proto =ESMTP helo =
グレイリストは、電子メールユーザーをスパムから守る方法です。グレーリストを使用するメール転送エージェント(MTA)は、認識できない送信者からの電子メールを「一時的に拒否」します。メールが正当なものである場合、発信元のサーバーはしばらくしてから再試行し、十分な時間が経過すると、メールが受け入れられます。
postgreyのインストール(Debian、Ubuntu):
apt-get install postgrey
構成オプションは/etc/ default / postgreyにあります(デフォルトの遅延は5分です)。
main.cfを編集し、check_policy_service inet:127.0.0.1:10023をsmtpd_recipient_restrictionsの最後に追加します:
smtpd_recipient_restrictions =permit_mynetworks、permit_sasl_authenticated、check_recipient_access mysql:/etc/postfix/mysql-virtual_recipient.cf、reject_unauth_destination、reject_unknown_recipient_domain、check_policy_service unix:private / policy-spf、check_policy…postfixをリロード:
/etc/init.d/postfixリロード実行中のグレイリスト:
Jan 10 17:38:57 server postfix / smtpd [21302]:NOQUEUE:reject:RCPT from mailout-de.gmx.net [213.165.64.22]:451 4.7.1:Recipient拒否されたアドレス:グレイリストが有効です。後で戻ってきてください。 from = to = proto =SMTP helo =
DNSBL(DNSベースのブラックリスト/ブロックリスト)
DNSBLは、インターネットドメインネームサービス(DNS)を介して、DNSサーバーソフトウェアで使用できるゾーンファイルとして、またはリアルタイムでクエリできるライブDNSゾーンとして公開されているIPアドレスのリストです。 DNSBLは、スパムにリンクされているコンピューターまたはネットワークのアドレスを公開するために最もよく使用されます。ほとんどのメールサーバーソフトウェアは、1つ以上のそのようなリストにリストされているサイトから送信されたメッセージを拒否またはフラグを立てるように構成できます。これには、スパムの送信に使用されているゾンビコンピューターやその他のマシンのアドレスの一覧表示、スパマーを積極的にホストしているISPのアドレスの一覧表示、ハニーポットシステムにスパムを送信したアドレスの一覧表示などがあります。postixでdnsblを使用するには、reject_rbl_clientを使用します。 main.cfファイルにクエリ用のライブDNSゾーンを追加するだけです。
私の例では、非常に評判の良い2つのリストを使用します(smtpd_client_restrictionsの最後に追加):
smtpd_client_restrictions =permit_mynetworks、permit_sasl_authenticated、reject_unknown_client_hostname、check_client_access mysql:/etc/postfix/mysql-virtual_client.cf、reject_rbl_client cbl.abuseat.org、reject_rbl_client b.barracudacentral.orgrblの動作:
Jan 12 01:52:42 server postfix / smtpd [4616]:NOQUEUE:reject:RCPT from 89.pool85-49-26.dynamic.orange.es [85.49.26.89]:5545.7.1サービスは利用できません。クライアントホスト[85.49.26.89]はcbl.abuseat.orgを使用してブロックされました。ブロック済み-http://cbl.abuseat.org/lookup.cgi?ip=85.49.26.89を参照してください。 from =to = proto =SMTP helo = Jan 11 20:13:58 server postfix / smtpd [29591]:NOQUEUE:reject:RCPT from 93 -87-122-56.dynamic.isp.telekom.rs [93.87.122.56]:5545.7.1サービスを利用できません。 b.barracudacentral.orgを使用してブロックされたクライアントホスト[93.87.122.56]。 http://www.barracudanetworks.com/reputation/?pr=1&ip=93.87.122.56; from = to = proto =ESMTP helo = ポストスクリーン 注:この機能はPostfix2.8以降で使用できます
Postfix postscreenデーモンは、メールサーバーの過負荷に対する追加の保護を提供します。 1つのポストスクリーンプロセスが複数のインバウンドSMTP接続を処理し、どのクライアントがPostfixSMTPサーバープロセスと通信できるかを決定します。スパムボットを遠ざけることで、postscreenは正当なクライアントが利用できるSMTPサーバープロセスを増やし、サーバーの過負荷状態の開始を遅らせます。
ポストスクリーンの主な課題は、1回の測定に基づいてこれはゾンビですか?これが必要なのは、多くのゾンビがレーダーの下を飛んで、同じサイトに繰り返しスパムを送信しないようにするためです。ポストスクリーンは、クライアントがゾンビではないと判断すると、正当なメールのさらなる遅延を回避するために、クライアントを一時的にホワイトリストに登録します。
このチュートリアルでは、例外を除いてデフォルト設定を使用します。これらの設定は、ほとんどの状況で問題ありません
まず、次のコマンドを使用してmain.cfに行を追加します。
postscreen_greet_action=強制次に、postscreenといくつかの新しいサービスをmaster.cfに追加します。注:これらの設定はすでに存在している可能性があり、コメントを外すだけです。また、パラメータを含む「smtp inet ... smtpd」の行がコメント化されていることを確認してください(存在する場合は、パラメータを新しいsmtpdサービスに移動する必要があります)。
#Postfixマスタープロセス設定ファイル。ファイルのformat#の詳細については、master(5)のマニュアルページ(コマンド: "man 5 master")を参照してください。##このファイルを編集した後は、忘れずに"postfixreload"を実行してください。##==========================================================================#service type private unpriv chroot wakeup maxproc command + args#(yes)(yes)(yes)(never)(100)#==========================================================================#smtp inet n --- --- smtpd#-o ... smtpd pass --- n --- smtpd -o .. .. #パラメータがsmtpサービスから新しいsmtpdサービスに移動されました。(存在する場合)smtp inet n --n --1 postscreentlsproxy unix --- n-0 tlsproxydnsblog unix --- n-0 dnsblogここで、postfixをリロードします:
/etc/init.d/postfixリロード
Panels