Index ソフト・ハード Postfix | Postfix 導入 |
機能 構成・方式 動作 タスク 導入 事前確認 Postfix起動 設定パラメータ 基本設定 MTAのID 接続を許可 メール受け取り メールを転送 エイリアス設定 動的IPアドレス リモートへ配送 メールボックス 設定変更を有効 「master.cf」設定 設定をチェック ファイアウォール クラスタ化 |
事前確認 ・完全修飾ホスト名を持つ $ hostname・既存のエイリアスバイナリ形式の確認 Postfixがデフォルトで使用する形式と異なる場合、インデックスファイルを再構築 # newaliases aliases.dbを更新・PKG
インストール済みパッケージ
名前 : cyrus-sasl
アーキテクチャー : x86_64
バージョン : 2.1.26
リリース : 23.el7
リポジトリー : installed
提供元リポジトリー : base
要約 : The Cyrus SASL library
名前 : cyrus-sasl-plain
アーキテクチャー : x86_64
バージョン : 2.1.26
リリース : 23.el7
リポジトリー : installed
提供元リポジトリー : base
名前 : postfix
アーキテクチャー : x86_64
エポック : 2
バージョン : 2.10.1
リリース : 9.el7
リポジトリー : installed
提供元リポジトリー : base
Postfix起動 # systemctl start postfix.service # systemctl enable postfix.service Pacemakerを使用する場合は、「disable」・起動時の問題は、ターミナルに表示 ・初期設定終了後の問題は、ログや systemctl status postfix.service で確認 # egrep '(reject|warning|error|fatal|panic):' /var/log/maillog設定パラメータ ・設定パラメータ ・デフォルト値 # postconf -d基本設定 ・参考 ・main.cf のパラメータの書き方 パラメータ定義は左に余白を残さず行頭から パラメータと同じ行にコメントは付けない。 値の前後に引用符は付けない。 TABまたはスペースの空白で始まる行は、前の行の継続行 $をパラメータ名の前に置いて、設定済のパラメータ値を参照できる。 複数の値を区切るのは、カンマ、スペース、タブ、新しい行のいずれか・設定変更を有効にする。 MTAのIDの設定 ・ホスト名を指定(myhostname) 「myhostname」が指定されていない場合、システムのホスト名を取得 (システムから完全修飾ホスト名が正常に返る場合は指定不要) 「mydomain」が明示的に指定されている場合、それと取得するシステムのホスト名から #myhostname = host.domain.tld #myhostname = virtual.domain.tld・ドメイン名を指定(mydomain) myhostname に完全修飾ホスト名がない場合、mydomain にシステムのドメイン名を指定 mydomain とgethostname関数で取得したホスト名から完全修飾ホスト名を作成 #mydomain = domain.tld・myorigin エンベローブアドレスやヘッダアドレスにドメインが無いとき、追加するドメイン名を決める。 myorigin = $myhostname #myorigin = $mydomain接続を許可 ・接続を許可する相手を設定(初期状態は自分自身のみ) inet_interfaces = all #inet_interfaces = $myhostname #inet_interfaces = $myhostname, localhost #inet_interfaces = localhostメール受け取り ・ローカルユーザへの配信の対象になるすべてのドメインをリストアップ (メールアドレスが指定に合致すれば他のホストに配送しない。) ・デフォルト値はローカルマシンの名前だけを指定 ・メールのドメインゲートウェイの場合、mydomainを追加 #mydestination = $myhostname, localhost.$mydomain, localhost mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain #mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, # mail.$mydomain, www.$mydomain, ftp.$mydomainメールを転送 ・信頼されたネットワークブロックのSMTPクライアントは、メールの中継を許可する。 ・信頼するネットワークブロックを指定。 ・「mynetworks_style」と「mynetworks」がメール送信のために利用できるシステムを決める。 (「mynetworks」で指定されると、relay_domainは無視できる。) ・デフォルトでは、自サーバと同じサブネットに接続する他のマシンからのみ受付。 「mynetworks」を設定すると、「mynetworks_style」パラメータは無視 #mynetworks = $config_directory/mynetworks #mynetworks = hash:/etc/postfix/network_table mynetworks = 192.168.0.0/24, 127.0.0.0/8・リレーを許可する ・「relay_domains」 にマッチするドメインは、配送される。 relay_domains = $mydestination, ・・・・smtpd は受信者アドレスを「relay_recipient_maps」で確認し、存在しない受信者を拒否 ・「relay_recipient_maps」が有効の場合 ・「relay_recipient_maps」で受け取れるドメインのアドレスで有効なものをリストアップ。 メールキューに配送できないメッセージを貯めないようにする。 relay_recipient_maps = hash:/etc/postfix/relay_recipients 「relay_recipients」にアドレス列記 有効なアドレスを列記できない場合はワイルドカードを使用 「relay_domains」の全アドレス # postmap /etc/postfix/relay_recipients・「relay_recipient_maps」が無効の場合(「relay_recipient_maps」行を#(デフォルト 空白)) $relay_domains にマッチしても、存在しない受信者を確認しない。・確認 # strings relay_recipients.db・エラー例 Relay access denied Windows Live メール エラー ID: 0x800CCC79・SMTP認証より楽な方法の検討 リモートユーザに静的なIPアドレスを割り当てられないか リモートユーザに別のSMTPサーバを利用させられないかエイリアス設定 ・Mailmanなども 動的IPアドレス(SMTP認証) ・SASL ・pop-before-smtp 動作 ・DRAC ・WHOSON 認められたリモートの配送先のみに転送 ・一つ以上のトランスポートルックアップテーブルを指し示す。 ・各ドメインのメールを認められた配送先に向ける。 ・ドメイン毎に配送を指定できる(transport に列記) transport_maps = hash:/etc/postfix/transport # postmap /etc/postfix/transport・確認 # strings transport.dbメールボックスを設定 ・「main.cf」
# DELIVERY TO MAILBOX
#home_mailbox = Mailbox (デフォルトhome_mailbox =)
#home_mailbox = Maildir/
#mail_spool_directory = /var/mail (デフォルト(リンクmail -> spool/mail))
#mail_spool_directory = /var/spool/mail
#mailbox_command = /some/where/procmail (デフォルト、mailbox_command =)
#mailbox_command = /some/where/procmail -a "$EXTENSION"
・/home/username/Maildir/ に保存 #home_mailbox = Mailbox home_mailbox = Maildir/・DRBDで /var/spool/mail がマウントされている場合 #home_mailbox = Maildir/ mail_spool_directory = /var/spool/mail/ 各ユーザ毎に Maildir ディレクトリを作成 # mkdir /var/spool/mail/foobar # chown foobar:foobar /var/spool/mail/foobar # chmod 700 /var/spool/mail/foobar設定変更を有効にする # postfix reload「master.cf」の設定 ・元の設定ファイルのバックアップ ・サブミッションポートの使用を有効にする。
submission inet n - n - - smtpd
設定をチェック
# postfix check
ファイアウォール
# firewall-cmd --add-service=smtp --zone=public
# firewall-cmd --add-service=smtp --zone=public --permanent
|
All Rights Reserved. Copyright (C) ITCL |