Postfixとdovecotでメールサーバ構築

をやりました。
なので、手順をメモっておく。
Postfixやdovecotをインストールする前にプロバイダがOP25Bを導入しているかを調べておく。
調べ方としては、ここを見ればいいかと。
自分の使っているプロバイダが載っていたので、プロバイダのSMTPサーバの認証方式を調べておく。
”$ telnet (プロバイダのSMTPサーバ) 587”でSMTPサーバへ接続。
”EHLO LOCALHOST”を入力するといろいろ表示されるので、「250-AUTH=PLAIN LOGIN ・・・」部分をみる。
これによると認証方式は、CRAM-MD5を使用しているんだなと。
あとは、”QUIT”を入力して切断。
ここからは、結構長くなるので、詳細は続きへ
にほんブログ村 IT技術ブログ Linuxへ


”$ sudo aput-get install postfix”で、Postfixのインストール。
設定を聞かれるので、”スマートホスト付きインターネット”を選択。
これで、ローカルのユーザ間のメールも送信できる。
rootのエイリアスを聞かれるので、メインのユーザを入力。
メール名(送信元ホスト)を聞かれるので、”mail.(自分のDDNSドメイン)”を入力。
SMTPリレーホストを聞かれるので、”(プロバイダのSMTPホスト)”を入力。
メールを受け取る宛先を聞かれるので、”(自分のDDNSドメイン), (ローカルなドメイン), localhost”を入力する。
メールキューの同期更新を強制させるかを聞かれるので、”<いいえ>”を選択。
ローカルネットワークを聞かれるので、”192.168.x.0/24,127.0.0.0/8”を入力。
ローカル配送に procmail を使うかを聞かれるので、”<いいえ>”を選択。
メールボックスのサイズを聞かれるので、デフォルトのままにしておく。
(まあここは、問題が起きれば変更することを考えよう)
ローカルアドレス拡張文字を何にするか聞かれるので、デフォルトのままにしておく。
インターネットプロトコルの使用について聞かれるので、デフォルトのままにしておく。
で、とりあえずの設定は終了。
次にPostfixのさらなる設定を行うために、”$ sudo vi /etc/postfix/main.cf”を実施。
バナーにSMTP名やバージョン情報を表示させないために、”smtpd_banner = $myhostname ESMTP
”と変更。
エイリアスをPostfix用で管理したいので、”alias_maps = hash:/etc/postfix/aliases”と
”alias_database = hash:/etc/postfix/aliases”に変更。
メールボックス形式をMaildir形式にするために、”home_mailbox = Maildir/”を追加。
OP25B対策のために以下を追加。
”smtp_sasl_auth_enable = yes”
”smtp_sasl_password_maps = hash:/etc/postfix/authinfo”
”smtp_sasl_security_options = noanonymous”
”smtp_sasl_mechanism_filter = CRAM-MD5”
以上で、編集は終了。
ここからはrootで作業する必要があるので、いったんrootになる。
”# cd /etc/postfox”で、ディレクトリの移動。
”# echo (SMTPサーバ名):587 (ユーザ名):(パスワード) > /etc/postfix/authinfo”で、SMTP認証情報の設定ファイル作成。ここでのユーザ名とパスワードはプロバイダのユーザ名とパスワードになる。
”# chmod 640 authinfo”で、root以外参照できないようにパーミッションの変更。
ここで、rootでの作業は終了なので、”$ exit”でrootから抜ける。
”$ sudo postmap /etc/postfix/authinfo”で、authinfo.dbを作成。
次に、エイリアスの設定。
”$ sudo cp /etc/aliases /etc/postfix/aliases ”で、設定ファイルのコピー。
”$ sudo vi /etc/postfix/aliases”を実行して、編集。
右側のユーザ名に後ろに@localhost”を追加。
で、最後の行に”root:(メインのユーザ)@localhost”を追加して、編集終了。
”$ sudo newaliase”を実行して、設定を反映させる。
”$ sudo /etc/init.d/postfix reload”で、いったん設定を反映させる。
次は、新規ユーザ用のメールボックスの準備。
”$ sudo mkdir -p /etc/skel/Maildir/{new,cur,tmp}”でMaildir形式メールボックスの作成。
”$ sudo chmod -R 700 /etc/skel/Maildir/”で、パーミッションの変更。
で、自分のアカウント用のメールボックスの準備。
”$ cd”でホームディレクトリに移動。
”$ sudo mkdir -p Maildir/{new,cur,tmp}”でMaildir形式メールボックスの作成。
”$ sudo chmod -R 700 /Maildir/”で、パーミッションの変更。
(ほかにユーザがいれば、これを繰り返す。あと、rootも一応やっておいた)
次に、dovecotのインストール。
”$ sudo apt-get install dovecot-common dovecot-pop3d”を実行。
別に外からメールを見たいとも思わないのとメールサーバにメールを置きたくないので、POP3を選択。
”$ sudo vi /etc/dovecot/dovecot.conf”を実行して、編集。
”protocols = pop3 pop3s”、”pop3_listen = *”、”mail_location = maildir:~/Maildir”を編修して終了。
”$ sudo /etc/init.d/dovecot restart”して、反映。
あとは、ルータのポートを開放させてから、”$ sudo /etc/init.d/postfix restart”で、Postfixを再起動。
送受信ができることをかくにんして、メールサーバの構築終了。
でも、少しばかり問題があり。
まず、mailコマンドでユーザ名だけだとメールが送れない。
ユーザ名@localhostだとちゃんと遅れる。
なので、cronのメールアドレスをちゃんと指定してあげないといけなかったり。
あと、Thunderbirdでメールの送受信を行うと証明書が期限切れだと言われたり、証明書のドメインが違っていると怒られたりする。
まあ、ぼちぼちと調べるとしよう。

コメント