差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

linux:podoma [2011/08/31 01:45]
miyako
linux:podoma [2011/08/31 04:46] (現在)
miyako [mailmanインストール]
ライン 133: ライン 133:
 起動する前に、ドメインやメールアドレスを設定したテキストファイルを作成する 起動する前に、ドメインやメールアドレスを設定したテキストファイルを作成する
   1.バーチャルドメインの設定ファイル   1.バーチャルドメインの設定ファイル
-  /etc/postfix/virtual_domains+    /etc/postfix/virtual_domains
      
   フォーマットは以下の通り   フォーマットは以下の通り
-  ドメイン名  required to prevent relay access denied errors+    ドメイン名  required to prevent relay access denied errors
      
   2.メールアドレスの設定ファイル   2.メールアドレスの設定ファイル
-  /etc/postfix/vmailbox+    /etc/postfix/vmailbox
      
   フォーマットは以下の通り   フォーマットは以下の通り
-  メールアドレス  ドメイン名/アカウント名/Maildir/+    メールアドレス  ドメイン名/アカウント名/Maildir/
      
   3.転送アドレスの設定ファイル   3.転送アドレスの設定ファイル
-  /etc/postfix/virtual+    /etc/postfix/virtual
      
   フォーマットは以下の通り   フォーマットは以下の通り
-  メールアドレス  転送先1,転送先2+    メールアドレス  転送先1,転送先2
      
   この時、   この時、
ライン 155: ライン 155:
      
   4.容量制限の設定ファイル   4.容量制限の設定ファイル
-  /etc/postfix/vquota+    /etc/postfix/vquota
      
   フォーマットは以下の通り   フォーマットは以下の通り
-  メールアドレス  制限値(単位はバイト10GB=10240000000とするとだいたいあってる)+    メールアドレス  制限値(単位はバイト10GB=10240000000とするとだいたいあってる)
      
   この時   この時
ライン 213: ライン 213:
   エンタープライズ系LINUXではdovecotのバージョンが2にあがっている。   エンタープライズ系LINUXではdovecotのバージョンが2にあがっている。
   1系では/etc/dovecot.confだけで設定されていたのが、細かく分割されている。   1系では/etc/dovecot.confだけで設定されていたのが、細かく分割されている。
-  おそらく今後のバージョンアップで設定ファイルの修正をわかりやすくする為と思われる+  おそらく今後のバージョンアップで設定ファイルの修正をわかりやすくする為と思われる
  
 もともと1系で検証してたので2系になって面倒と思ったが、基本的な書き方は同じで1ファイルか複数ファイルで管理しているかの違いと思う。 もともと1系で検証してたので2系になって面倒と思ったが、基本的な書き方は同じで1ファイルか複数ファイルで管理しているかの違いと思う。
  
-今回はSL6.1ベースなので2系の設定方法を記載しているが、1系の場合は/etc/dovecot.confで該当する部分を見つけて修正してやれば問題ないかと思う・・・。たぶんね+今回はSL6.1ベースなので2系の設定方法を記載しているが、1系の場合は/etc/dovecot.confで該当する部分を見つけて修正してやれば問題ないかと思う・・・。たぶんね
  
  
   1.IPv6を利用しない   1.IPv6を利用しない
   編集するファイル   編集するファイル
-  /etc/dovecot/dovecot.conf+    /etc/dovecot/dovecot.conf
  
-  サーバーをIPv6を利用しない設定にしてあるので、postfixやdovecotもIPv6を利用しないように設定してやらないとerrorやwarningとなる+  サーバーをIPv6を利用しない設定にしてあるので、postfixやdovecotもIPv6を利用しないように 
 +  設定してやらないとerrorやwarningとなる
  
   #listen = *, ::   #listen = *, ::
ライン 230: ライン 231:
   listen = *   listen = *
  
-/etc/dovecot/conf.d/10-auth.conf 
  
- auth_mechanisms = plain +  2.認証方法とセキュリティの設定 
-  ↓ +  編集するファイル 
- auth_mechanisms = digest-md5 cram-md5 plain login+    /etc/dovecot/conf.d/10-auth.conf 
 + 
 +  md5とloginを追加。認証はテキストファイルで行うのでauth-passwdfile.conf.extを有効にする。 
 +  デフォルトをはっきり覚えてないのだが、確かauth-system.conf.extが有効になってたので無効かする。 
 +   
 +  auth_mechanisms = plain 
 +    ↓ 
 +  auth_mechanisms = digest-md5 cram-md5 plain login
    
- #!include auth-passwdfile.conf.ext +  #!include auth-passwdfile.conf.ext 
-  ↓ +    ↓ 
- !include auth-passwdfile.conf.ext+  !include auth-passwdfile.conf.ext
    
- !include auth-system.conf.ext +  !include auth-system.conf.ext 
-  ↓  +    ↓  
- #!include auth-system.conf.ext+  #!include auth-system.conf.ext
  
  
-/etc/dovecot/conf.d/10-mail.conf+  3.メールディレクトリの指定 
 +  編集するファイル 
 +    /etc/dovecot/conf.d/10-mail.conf 
 +   
 +  posutofixで指定したディレクトリを指定する。 
 +    %dはドメイン名 
 +    %nはユーザ名 
 +  にそれぞれ置き換わる。 
 +   
 +  #mail_location = 
 +    ↓ 
 +  mail_location = maildir:/home/vuser/vhosts/%d/%n/Maildir
  
- #mail_location = 
-  ↓ 
- mail_location = maildir:/home/vuser/vhosts/%d/%n/Maildir 
- 
- 
-/etc/dovecot/conf.d/10-master.conf 
-81行目あたりからを以下の修正(元の状態を忘れた^^;) 
  
 +  4.Postfixとの連携を設定する(SMTP-AUTHの認証をdovecotのユーザーで行う為)
 +  編集するファイル
 +    /etc/dovecot/conf.d/10-master.conf
 +  
 +  81行目あたりからを以下の修正(元の状態を忘れた^^;)
 +  
   #unix_listener auth-userdb {   #unix_listener auth-userdb {
     #mode = 0600     #mode = 0600
ライン 270: ライン 287:
   # Auth process is run as this user.   # Auth process is run as this user.
   #user = $default_internal_user   #user = $default_internal_user
-} 
  
  
-/etc/dovecot/conf.d/auth-passwdfile.conf.ext +  5.認証用ファイルを設定する 
-以下のように修正+  編集するファイル 
 +    /etc/dovecot/conf.d/auth-passwdfile.conf.ext 
 +   
 +  以下のように修正する。 
 + 
 +  passdb { 
 +    driver = passwd-file 
 +    # args = scheme=CRYPT username_format=%u /etc/dovecot/users 
 +    args = /home/vuser/dovecot-passwd 
 +  } 
 + 
 +  userdb { 
 +    driver = passwd-file 
 +    #args = username_format=%u /etc/dovecot/users 
 +    args = /home/vuser/dovecot-passwd 
 +  } 
 + 
 +   
 +ユーザーの作成 
 +  こちらもデータベースなど使わずテキストファイルで管理する。 
 +  先ほど認証用ファイルで設定した以下のファイルに1ユーザ1行で追加していく 
 +  この時、Postfix側のユーザー登録がされていないとユーザーディレクトリが見つからなくてエラーとなる 
 +  (んじゃないかな・・・試してないけど) 
 +   
 +  編集するファイル 
 +    /home/vuser/dovecot-passwd 
 +   
 +  フォーマットは以下の通り 
 +    メールアドレス:{セキュリティ}暗号化されたパスワード:5000:5000::/home/vuser/vhosts/%d/%u/Maildir/ 
 +   
 +  5000:5000は最初に作成したvuserのUIDとGIDを指定する 
 +   
 +パスワードの作成 
 +  説明が後になったが、ユーザーを作成する際に指定したセキュリティで暗号化されたパスワードを 
 +  生成する必要がある。 
 +  2系の場合は以下のようにして生成する事ができる 
 +   
 +    doveadm pw -s CRAM-MD5 -p パスワード 
 +   
 +  CRAM-MD5で暗号化されたパスワードが表示されるので、それをそのままユーザー設定ファイルに設定してやればOK 
 + 
 +  dovecotの1系を利用の場合はdoveadmコマンドが存在しません 
 +  1系の場合はdovecotpwというコマンドを利用して同じようにパスワードを生成する事が可能 
 +   
 +    dovecotpw -s CRAM0MD5 -p パスワード 
 +   
 + 
 +dovecotを起動する 
 +  デフォルトの設定のままなのでPOP3とIMAPとLMTPがオープンsれます……ん?LMTPってなんぞや? 
 +  dovecot1系じゃなかったと思うぞ 
 +   
 +  どうやら、ESMTPの代替プロトコルでLocal Mail Transfer Protocolの頭文字を取ってLMTPのようだ 
 +  ローカルにメールを配送する為のプロトコルって事だろうね(読んだままやん) 
 +   
 +  ESMTPはSMTP拡張して転送を効率化するプロトコル群の総称。 
 +   
 +  よし、とりあえずあげておこう(ぇ 
 +   
 +  設定ファイル 
 +    /etc/dovecot/dovecot.conf 
 +   
 +  変更箇所 
 +    protocols = imap pop3 lmtp 
 + 
 + 
 +===== mailmanインストール ===== 
 + 
 +Postfix+dovecotの環境でmailmanも独自ドメインで運用するには少し面倒だったりする 
 + 
 +mailmanにPostfixからメールを渡す際にaliasesを利用する必要があるのだがPostfixとしてのaliasesではプログラムにパイプ(|)でメールを渡す事ができない。 
 + 
 +その為、ローカルのaliasesを利用するのだが、/etc/aliasesに書くとごちゃごちゃになるので/etc/mailman/aliasesを利用する。 
 + 
 +Postfixのmain.cfをその様に設定変更する必要があるのだが、上記のPostfixの設定通りに構築がされていればすでにその設定になっているw 
 + 
 +さて、そうすると困った事がおこる。 
 + 
 +バーチャルドメインで運用しているのに、ml-info@ドメイン1とml-info@ドメイン2が1台のサーバー上では共存が出来ないのである。 
 + 
 +このサーバーで運用するドメイン全てを同じ人が管理するのであれば上記注意点を理解してメーリングリストを作成すれば良いのだけど、ドメイン毎に管理者が違う場合、メーリングリスト名が早い者勝ちとなってしまう。 
 + 
 +それを回避する一つの方法として、メーリングリストの実態はユニークなリスト名にして、各ドメインでそのリストに転送をする。 
 + 
 +インストールはyumでOK 
 +  yum install mailman 
 +   
 +コンフィグファイルを修正 
 +  編集ファイル 
 +    /usr/lib/mailman/Mailman/mm_cfg.py 
 +   
 +  変更箇所 
 +    #DEFAULT_URL_HOST   = fqdn 
 +    #DEFAULT_EMAIL_HOST = fqdn 
 +      ↓ 
 +    DEFAULT_URL_HOST   = fqdn 
 +    DEFAULT_EMAIL_HOST = fqdn 
 +     
 +    #add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) 
 +      ↓ 
 +    add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) 
 + 
 + 
 +  以下を追加(一部、個人的なデフォルト設定の変更ありw) 
 +    MTA                                   =       'Postfix' 
 +    DEFAULT_SERVER_LANGUAGE               =       'ja' 
 +    DEFAULT_REQUIRE_EXPLICIT_DESTINATION    =       0 
 +    DEFAULT_SUBJECT_PREFIX                        =       "[%(real_name)s:%%d]" 
 +    DEFAULT_LIST_ADVERTISED               =       No 
 +    OWNERS_CAN_DELETE_THEIR_OWN_LISTS     =       Yes 
 +    DEFAULT_REPLY_GOES_TO_LIST            =       1 
 +    ## DEFAULT_GENERIC_NONMEMBER_ACTION   =       2 
 +     
 +     
 +  ドメインを追加 
 +    POSTFIX_STYLE_VIRTUAL_DOMAINS        =       [ 
 +    'ドメイン1' 
 +    'ドメイン2' 
 +                                                  ] 
 +                                                   
 +                                                   
 +    add_virtualhost('ドメイン1','ドメイン1') 
 +    add_virtualhost('ドメイン2','ドメイン2') 
 +     
 +    ドメインを追加する度に設定を追加してmailmanをリロードする必要があります 
 + 
 + 
 +service mailman start 
 + 
 +chkconfig mainman on 
  
-passdb { +メーリングリストの追加コマンド 
-  driver = passwd-file +  newlist -q リスト名 管理者メールアドレス 管理パスワード
-  # args = scheme=CRYPT username_format=%u /etc/dovecot/users +
-  args = /home/vuser/dovecot-passwd +
-}+
  
-userdb { +メーリングリストの削除コマンド 
-  driver = passwd-file +  rmlist -a リスト名
-  #args = username_format=%u /etc/dovecot/users +
-  args = /home/vuser/dovecot-passwd +
-}+
  
  
-パスワード発行方法 +まぁaliasesファイルの編集やhashデータベース化も必要なのだ、そはわかでしょ? 
- dovecotpwコマンドは廃止されてかわりにdoveadm追加さてい+    
linux/podoma.1314755104.txt.gz · 最終更新: 2011/08/31 01:45 by miyako
CC Attribution-Noncommercial-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0