アフィリエイト広告を利用しています
検索
<< 2024年11月 >>
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新記事
タグクラウド
カテゴリーアーカイブ
ファン
最新コメント
プロフィール
ゼロから始めるシステム開発さんの画像
ゼロから始めるシステム開発
 こんにちは!ナビゲータのEVEです。各種研究室を用意し、次期EVEシステムを製造しようと日々頑張っています。現在一番力を入れているのが、資金調達です。このブログもその一環ですので、ご協力いただければ嬉しいです。
プロフィール

2022年11月02日

Postfixのmain.cfを調査する2 [ソフトウェア研究室]




 こんにちは!
 ナビゲータのEVEです。

 昨日に引き続き、Prototype EVEで使用していたmain.cf(以降「旧main.cf」という)を見ながら、現在のPosffix(version3.3.0)のmain.cf(以降「新main.cf」という)の設定を試みます。



[main.cfの内容を確認する(昨日の続き)]
◆in_flow_delay
 in_flow_delay = [パラメータ]

 新main.cfではコメントアウトされています。

 1秒あたりのメールの配送要求数がメール配送完了数を超えた場合に新たな配送要求を停止する時間になります。
 パラメータ”default_process_limit”で指定した数、またはSMTPプロセス数を個別に設定した場合はその値分の配送要求をここで指定した時間内に受け取ることができるようになります。
 例えば、default_process_limit=100、in_flow_delay=1の場合、毎秒最100配送要求を受け取ることができます。
 この機能を無効にするには0を指定します。

[パラメータ]
<時間>{s}

◆alias_maps
 alias_maps = [パラメータ]

 新main.cfではコメントアウトされています。

 メールの転送をするときに利用することができます。
 デフォルトのリストはシステムに依存します。

[パラメータ]
 {<データベースタイプ>:<データベースパス>}{,...}

◆alias_database
 alias_database = [パラメータ]

 新main.cfではコメントアウトされています。

 alias_mapsと対で説明されます。
 alias_databaseはnewaliasesコマンドで更新されるマップを指定します。 空白または「,」で区切っていくつでも記述できます。alias_databaseはnewaliasesコマンドで使用されるだけで、実際に別名テーブルとして参照されるのは alias_maps の方なので注意が必要です。

[パラメータ]
{<データベースタイプ>:<データベースパス>}

◆recipient_delimiter
 recipient_delimiter = [パラメータ]

 新main.cfではコメントアウトされています。

 postfixではアドレス拡張機能を利用することにより、各ユーザが複数のメールアドレスを持つことが可能です。 アドレス形式は"ユーザ名 区切り文字 拡張部@ドメイン名"となります。 デフォルトで+が指定されていますが、区切り文字を示し、同パラメータに限定されているわけではありません。"-"などに変更することも可能です。

[パラメータ]
+または-など。
※他の記述は見たことがありません。

◆home_mailbox
 home_mailbox = [パラメータ]

 新main.cfではコメントアウトされています。

 メールの保存形式と、保存場所を指定します。

[パラメータ] 
・Mailbox
 「/var/spool/mail/」というディレクトリに、ユーザー名ごとのメールを1つのファイルにまとめて、保存します。
・Maildir/
 各ユーザーのディレクトリに(/home/user/)Maildirというディレクトリを作り、メールを1つずつ保存します。

◆mail_spool_directory
 mail_spool_directory = [パラメータ]

 新main.cfではコメントアウトされています。

 メールボックスファイルの場所を指定できます。
 maildir 形式で 配送するには、/ で終わる名前を指定します。

[パラメータ]
 <格納ディレクトリ>

◆mailbox_command
 mailbox_command = [パラメータ]

 新main.cfではコメントアウトされています。

 メールをローカル配送する際に実行する全宛先アカウント共通のコマンドになります。
コマンドは配送先のユーザ権限で動作します。
 ただし、root宛のメールはパラメータdefault_privsのユーザ権限で実行されます。
 ローカル配送の優先度の関係で、別名が設定されていた場合、その別名のユーザで実行されることになります。
 amavisをmailbox_commandに指定すると、ローカル配送するメッセージに対してウイルススキャンを行います。

[パラメータ]
 {<コマンド・引数>}

◆mailbox_transport
 mailbox_transport = [パラメータ]

 新main.cfではコメントアウトされています。

 master.cf に挙げられた配送方法をオプションで指定します。

[パラメータ]
 {<サービス名(Transport名)>{:<次転送先>}}

◆fallback_transport
 fallback_transport = [パラメータ]

 新main.cfではコメントアウトされています。

 ローカルに配送先ユーザが見つからない場合の配送方法を一括指定します。
 ここで指定した配送方法によりローカル配送がおこなわれるので、Postfix自身はローカル配送を行いません。

[パラメータ]
 {<サービス名(Transport名)>{:<次転送先>}}

◆luser_relay
luser_relay = [パラメータ]

 新main.cfではコメントアウトされています。

 ローカル配送時に宛先不明の(定義されていない)場合に代わりに受信するアカウントを指定します。
 通常はpostmasterやrootなどに転送して設定ミスなどで宛先不明になってしまっているアカウントに気づきやすくするために利用します。

[パラメータ]
{<メールアドレス>}

◆header_checks
header_checks = [パラメータ]

 新main.cfではコメントアウトされています。

 受信したメールのメールヘッダの検査を行うルールを記述したデータベースを指定します。
 ただし、MIME関連のヘッダ(MIME-Version、Content-Type、Content-Transfer-Encoding)の検査はパラメータmime_header_checksに設定したデータベースにて行います。
 また、添付されたメールの検査も行わずに、こちらはパラメータnested_header_checksに設定したデータベースにて行います。

[パラメータ]
{<データベースタイプ>:<データベースパス>}

◆fast_flush_domains
 fast_flush_domains = [パラメータ]

 新main.cfではコメントアウトされています。

 メール転送が遅延している場合に、自動で再送を試みる宛先のリストです。
 指定されなかった場合、宛先のメールは手動で再送(フラッシュ)する必要があります。

[パラメータ]
{ [ ホスト名 | IPアドレス | ファイルパス | <データベースタイプ>:<データベースパス> ] ... }

◆smtpd_banner
 smtpd_banner = [パラメータ]

 「smtpd_banner」はTelnet等でアクセスした際にpostfixのバージョン情報の表示を管理しています。セキュリティの観点から非表示を推奨します。

[パラメータ]
 $myhostname ESMTP $mail_name

◆local_destination_concurrency_limit
 local_destination_concurrency_limit = [パラメータ]

 新main.cfではコメントアウトされています。

 localトランスポートで配送する際に同一の宛先へ同時に配送できる上限を指定します。

[パラメータ]
<数値>

◆default_destination_concurrency_limit
 default_destination_concurrency_limit = [パラメータ]

 新main.cfではコメントアウトされています。

 同一の宛先へ同時に配送できる上限を指定します。
 この設定値はデフォルトとして扱われ、各転送方法における個別の設定値を<トランスポート>_destination_concurrency_limitの各パラメータで設定できます。

[パラメータ]
 <同時接続数>

◆debug_peer_level
 debug_peer_level = [パラメータ]

 新main.cfではコメントアウトされています。

 同一目的地に対する最大並行送信数を指定します。

[パラメータ]
 <数値>

◆debug_peer_list
 debug_peer_list = [パラメータ]

 新main.cfではコメントアウトされています。

 パラメータ”debug_peer_level”で設定したログレベルを有効化する接続ホストのリストです。ここで指定したホストとの接続に関するログのみ詳細度が適用されます。

[パラメータ]
{ <ネットワークアドレス/サブネットマスク> | <リストを記載したファイル名のパス> | {<データベースタイプ>:<データベースパス>} }

◆debugger_command
 debugger_command = [パラメータ]

 新main.cfではコメントアウトされています。

 Postfixを”-D”オプションをつけて実行した場合に同時に起動させるデバッガープログラムのパスを指定します。

[パラメータ]
  {<パス>}

◆sendmail_path
 sendmail_path = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 sentmail互換の為のパスを指定します。

[パラメータ]
 <インストール時に指定した場所>

◆newaliases_path
 newaliases_path = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 newaliases互換の為のパスを指定します。

[パラメータ]
 <絶対パス>

◆mailq_path
 mailq_path = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 mailq互換の為のパスを指定します。

[パラメータ]
 <絶対パス>

◆setgid_group
 setgid_group = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 Postfixコマンド、グループ書き込み可能なPostfix関連ディレクトリの所有グループ名を指定します。

[パラメータ]
 <グループ名>

◆html_directory
 html_directory = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 説明書きのHTMLファイル各種の配置場所を指定します。

[パラメータ]
 [ <インストールパス> | no ]

◆manpage_directory
 manpage_directory = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 manドキュメントが配置されているパスを指定します。

[パラメータ]
 <パス>

◆sample_directory
 sample_directory = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 設定ファイルのサンプルのインストールパスでした。
 最新バージョンでは廃止されており、指定はできるが、サンプルはインストールされていません。

[パラメータ]
 設定なし

◆readme_directory
 readme_directory = [パラメータ]

 新main.cfでは有効になっていますが、パラメータが設定されていません。

 readmeファイル各種の配置場所を指定します。

[パラメータ]
 [ <インストールパス> | no ]

◆smtpd_client_restrictions
 smtpd_client_restrictions = [パラメータ]

 新main.cfでは記述が見付かりません。

 サーバに接続可能なクライアントの制限を指定します。

[パラメータ]
 {<制限事項>}

◆smtpd_helo_restrictions
 smtpd_helo_restrictions = [パラメータ]

 新main.cfでは記述が見付かりません。

 HELOコマンド受信時のホスト名による受信制限を指定します。

[パラメータ]
 現在調査中

◆smtpd_recipient_restrictions
 smtpd_recipient_restrictions = [パラメータ]

 新main.cfでは記述が見付かりません。

 宛先(RCPT TO)に記載できる内容の制限を指定します。
 複数記載した場合は前から評価され、マッチした時点で以降の評価は行われません。

[パラメータ]
{<制限事項>}{, ...}

◆smtpd_sender_restrictions
 smtpd_sender_restrictions = [パラメータ]

 新main.cfでは記述が見付かりません。

 メールを転送する際に指定された送信者に対して何らかの制約を行います。
 例えば、特定の送信者のメールを拒否することができます。

[パラメータ]
{<制約オプション> [,...]}

Ubuntu サーバー徹底構築 [ 麻生二郎 ]

価格:3,058円
(2022/11/2 17:34時点)
感想(0件)



[調査を終えて]
 以上の調査結果は、その内容を保証しません。調査対象サイトの記述内容が難解なうえ、調査したサイトにより記述内容が違うなど、正確性という面で問題があります。明日以降、「Ubuntu サーバー徹底構築」に記載内容、「Postfix : インストール/設定」と比較し、正しいと思われる情報をmain.cfへ設定し検証後確定情報とします。昨日、本日の情報はその都度修正していきますので、ご了承ください。
 なお、下記参考サイトは、上位にあるものほど記述する上でより重要と考えているサイトとなります。基本、以上の内容は同サイトから私が理解できる形式に変換の上記述したものです。

 では、また!

■Postfix 3.2.0
https://eldorado-of.info/wiki/linux/postfix/postfix-3-2-0#smtpd_sender_restrictions

■Postfix設定パラメータ
https://www.postfix-jp.info/trans-2.2/jhtml/postconf.5.html#smtpd_helo_restrictions

■Top / サーバー関係 / Mail / Postfix/Postfix
https://www.gamvaro.com/kswiki/index.php?%E3%82%B5%E3%83%BC%E3%83%90%E3%83%BC%E9%96%A2%E4%BF%82/Mail/Postfix

■OXY NOTES
 https://oxynotes.com/?p=4646

■Red Hat Customer Portal
https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/8/html/deploying_different_types_of_servers/proc_configuring-postfix_assembly_mail-transport-agent

■バーチャルドメイン利用時にluser_relayの機能を実現する方法
https://exfield.jp/View/pid:4529/

■HEADER_CHECKS(5)
https://www.postfix-jp.info/trans-2.2/jhtml/header_checks.5.html

■Postfixのセキュリティ設定について
https://qiita.com/rocinante-ein/items/9c31cb0e36fb2d01d343

■Postfix : インストール/設定
https://www.server-world.info/query?os=Ubuntu_18.04&p=mail&f=1
この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバックURL
https://fanblogs.jp/tb/11671356
※ブログオーナーが承認したトラックバックのみ表示されます。

この記事へのトラックバック