プロジェクト

全般

プロフィール

Dovecot構築

簡易構築

ここではとりあえず使えるようにする場合を想定。
POP/POPSやIMAPSなど詳細設定が必要な場合は別途項目を追加します。

なお、dovecotはホストの時間とクライアントの時間に差がある場合に
セキュリティの関係上サービスが自動でストップすることがあります。
つまり、サービス稼働中となるとサーバからクライアントにメールが
受信出来なくなります。(サーバ自体には貯まるのですが)

そのため、事前に NTPサーバ を設定しておくことが望ましい。
 

インストール

  • 依存関係に「perl-DBI」「mysql」「postgresql-libs」など有る。
    # yum install dovecot
    
  • サービスの設定は行われていない。
    # chkconfig --list dovecot
    dovecot         0:off   1:off   2:off   3:off   4:off   5:off   6:off
    
    # service dovecot status
    dovecot は停止しています
    

     

設定

下記のファイルを変更する。

  • /etc/dovecot.conf
    • サービス設定ファイル
  • サービス設定ファイルを編集する。
    # 変更箇所のみ記載
    # ------------------------------------------------------
    protocols = imap
    protocol imap {
        listen = *:143
        ssl_listen = *:993
    }
    
    disable_plaintext_auth = no
    mail_location = maildir:~/Maildir
    valid_chroot_dirs = /home
    
    protocol imap {
    }
    
    protocol pop3 {
    }
    
    protocol lda {
        postmaster_address = postmaster@example.com
    }
    
    auth default {
        mechanisms = plain
    
        passdb pam {
            args = dovecot
        }
    
        userdb passwd {
        }
    
        user = root
    
        socket listen {
            client {
                path = /var/spool/postfix/private/auth-client
                mode = 0660
                user = postfix
                group = postdrop
            }
        }
    }
    
    dict {
    }
    
    plugin {
    }
    

     

サービスの起動・自動設定

  • サービスが起動することを確認し、自動起動を設定する
    # service dovecot start
    Dovecot Imap を起動中:                                     [  OK  ]
    
    # chkconfig dovecot on
    # chkconfig --list dovecot
    dovecot         0:off   1:off   2:on    3:on    4:on    5:on    6:off
    

     

動作確認

  • rootユーザ以外に確認用のメールを送る。
    # mail test01@localhost
    Subject: dovecot test
    this mail is dovecot test!
    .
    Cc:
    
  • telnetで確認してみる。
    # telnet localhost 143
    
    Trying 127.0.0.1...
    Connected to localhost.local (127.0.0.1).
    Escape character is '^]'.
    * OK Dovecot ready.
    
    1 login test01 password
    1 OK Logged in.
    
    2 list "" *
    * LIST (\HasNoChildren) "." "INBOX" 
    2 OK List completed.
    
    3 select INBOX
    * FLAGS (\Answered \Flagged \Deleted \Seen \Draft)
    * OK [PERMANENTFLAGS (\Answered \Flagged \Deleted \Seen \Draft \*)] Flags permitted.
    * 1 EXISTS
    * 1 RECENT
    * OK [UNSEEN 1] First unseen.
    * OK [UIDVALIDITY 1337936104] UIDs valid
    * OK [UIDNEXT 2] Predicted next UID
    3 OK [READ-WRITE] Select completed.
    
    4 fetch 1 body[]
    * 1 FETCH (FLAGS (\Seen \Recent) BODY[] {466}
    Return-Path: <root@localhost.local>
    X-Original-To: test01@localhost
    Delivered-To: test01@localhost.localhost.local
    Received: by mail.localhost.local (Postfix, from userid 0)
            id 5052FEEE93; Fri, 25 May 2012 17:53:48 +0900 (JST)
    To: test01@localhost.localhost.local
    Subject: dovecot test
    Message-Id: <20120525085348.5052FEEE93@mail.localhost.local>
    Date: Fri, 25 May 2012 17:53:48 +0900 (JST)
    From: root@localhost.local (root)
    
    this mail is dovecot test!
    )
    4 OK Fetch completed.
    
    5 logout
    * BYE Logging out
    5 OK Logout completed.
    Connection closed by foreign host.
    

     
  • 上記コマンドはメーラが内部でやっていることと同じなので、これで表示が
    できていれば動作上は問題無い。もちろん、メーラなどでアドレスを指定して
    実際に受信してみても良い。
     

 

戻る