ユーザ用ツール

サイト用ツール


linux:postfix_dovecot

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
linux:postfix_dovecot [2013/05/25 12:26] – [方針] Wiki Editorlinux:postfix_dovecot [2018/09/03 12:33] (現在) – [SIEVE関係] Wiki Editor
行 315: 行 315:
   #dovecotのユーザデータベースに合わせて「-d ${user}」に変更   #dovecotのユーザデータベースに合わせて「-d ${user}」に変更
   dovecot   unix             pipe   dovecot   unix             pipe
-       flags=DRhu user=nobody:nobody argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${user}+       flags=DRhu user=nobody:nobody null_sender= argv=/usr/libexec/dovecot/dovecot-lda -f ${sender} -d ${user}
  
 dovecotにアクセスしユーザ情報を取得するためのクエリにあたる部分。dovecotのバーチャルユーザマップでユーザ名のみを記載している場合「-d ${user}」でユーザ名のみで検索するようにする。ドメイン名まで含めてユーザを登録している場合は、Webサイトの通りでよい。 dovecotにアクセスしユーザ情報を取得するためのクエリにあたる部分。dovecotのバーチャルユーザマップでユーザ名のみを記載している場合「-d ${user}」でユーザ名のみで検索するようにする。ドメイン名まで含めてユーザを登録している場合は、Webサイトの通りでよい。
 +
 +エラーメールを受け取った際に、エラーメールは「Return-Path」が空である必要があるが、dovecotでローカル配送すると送信元をReturn-Pathに設定するので、「Return-Path: <MAILER-DAEMON>」となってしまう。それを回避するために、パラメータに「null_sender=」を追加すること。[[http://wiki.dovecot.org/LDA/Postfix]]のnull_sender Problemを参照のこと。
  
  
行 377: 行 379:
  
 振り分け先のフォルダがサブフォルダの時、ファイルシステム上では「.spam」のように隠しフォルダであるが、sieveではINBOX.サブフォルダ名と記述する。 振り分け先のフォルダがサブフォルダの時、ファイルシステム上では「.spam」のように隠しフォルダであるが、sieveではINBOX.サブフォルダ名と記述する。
 +
 +
 +
 +===== 転送時の送信元書き換え =====
 +メールが転送される時、メールを実際に送信(転送)するサーバと、メール本体に書かれている送信元情報が異なってしまう。メールシステム上は特に問題ないが、最近のスパム対策に引っ掛かり問題となる可能性がある。例えばspfはメール本体の送信者情報から送信元サーバを検証するため、転送メールでは送信元として転送前のspfレコードを検索してしまう。そうすると、そのspfには実際に送信している転送ホストがリストされていないため、検証に失敗してしまう。そこで、転送時にspfの検証に利用されるenvelope_senderを書き換えて対応する。
 +
 +Postfixの設定ファイル「main.cf」に以下を設定
 +
 +  # 書き換え対象のヘッダ
 +  sender_canonical_classes = envelope_sender
 +  
 +  # 書き換えルールを記述したファイル。「regexp:」で正規表現を利用
 +  sender_canonical_maps = regexp:/etc/postfix/sender_canonical.regexp
 +
 +/etc/postfix/sender_canonical.regexp
 +  # 「@」以下をすべて自サイトのドメインに書き換え
 +  /@([a-z0-9_+\-\.]+)$/   @rcps.jp
 +
 +書き換えルールファイルを作成した後にpostmapでデータベース作成
 +  > postmap /etc/postfix/sender_canonical.regexp
 +
 +
 +これで転送メールのspfの問題は解消されるが、問題もありそう。転送したメールの表面上のヘッダは書き変わらないが、Return-Pathには書き換えた値がセットされてしまう。転送先にトラブルがありエラーメールが帰って来た場合、「@」以下のみ書き換えているため転送ホストにそのようなユーザは存在しないため、エラーがどこにも帰らなくなる。
 +
 +
 +===== 2.3系へのアップデート対応 =====
 +2.3系のアップデートでいくつか設定ファイルの修正が必要だった。
 +
 +==== SSL関係 ====
 +以下の設定が必須になったようだ。
 +  * [[https://wiki.dovecot.org/SSL/DovecotConfiguration]]
 +
 +以前のバージョンではDiffie Hellman parametersが初回起動時に自動生成され週ごとに再生成されていたが、セキュリティ上のメリットがさほどないため廃止された。バージョン2.3からはssl_dhの指定が強制されるため、以下を必ず設定して、設定した場所にDiffie Hellman parametersファイルを配置しなければならない。
 +
 +/etc/dovecot/conf.d/10-ssl.conf
 +  ssl_dh = </etc/dovecot/dh.pem
 +
 +ファイルの内容は、以前のものを再利用する場合以下のコマンドで変換できる
 +  # 旧バージョンで生成されたssl-parameters.datファイルの場所は適宜探して指定する
 +  dd if=/var/lib/dovecot/ssl-parameters.dat bs=1 skip=88 |openssl dhparam -inform der > /etc/dovecot/dh.pem
 +
 +今回は強度の高いものを新しく再生成する
 +  openssl dhparam 4096
 +
 +生成にはかなり時間がかかるので、しばらく待つ。
 +
 +==== SIEVE関係 ====
 +  * [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=904042]]
 +
 +バージョン2.3にすると、SIEVEの振り分けが動かなくなった。ログに以下のエラーが出力されていた。
 +
 +  Sep 03 11:06:54 [dovecot] lda(****)<5130><XXXXXXXXXXXXXXXXXXXXXXXXX>: Error: sieve: Failed to initialize script execution: Invalid postmaster_address: invalid address `postmaster@' specified for the postmaster_address setting
 +
 +エラーを返す際のpostmasterのメールアドレスのドメイン部分がうまく取得できていないようだ。これまでは厳密にチェックされていなかったが、バージョン2.3からはチェックされるようになり、SIEVEが起動できなくなったようだ。
 +
 +以下のpostmaster_addressのパラメータにpostmasterのアドレスを設定してやると解決する。
 +
 +/etc/dovecot/conf.d/15-lda.conf
 +  postmaster_address = postmaster@xxxx.co.jp
  
linux/postfix_dovecot.1369452386.txt.bz2 · 最終更新: 2013/05/25 12:26 by Wiki Editor

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki