2006年9月1日金曜日

メール環境改革 - SMTPサーバインストール

最初にメールサーバのインストールについて記述しますが、
かなり古い情報ですので、これを見ながらインストールする場合はあちこち読み替えてください。
なお、ここに書いてあることについて私は何も保証しませんので、
くれぐれも自己責任で行ってください。


OSは私の好みで Gentoo Linux (install-x86-universal-2004.2.iso) を使っています。
これは普通にインストールすればよいです。
それからメールサーバを DNS サーバに登録しなければ他からメールが届きません。
もちろんその DNS サーバ自身が公的なDNSサーバである必要があります。
Dynamic DNS に対応したフリーで使える DNS サービスを利用するなど、
各自工夫してみてください。
もし、自分で DNS サーバを運用しているなら、
MX レコードでメールサーバを指定してください。
これらはすでに行っている事を前提に話を進めます。


メールサーバとしては送信(MTA)に qmail、受信に courier-imap を用います。
受信プロトコルは pop3, imap の通常版とそれぞれの SSL 対応版の4種を用意します。
送信プロトコルには smtp の通常版を用いますが、スパムの踏み台にならないように
smtp before pop (imap) を設定ます。とりあえず送信可能最大時間は15分にします。

最初に qmail をインストールしますが、
デフォルトで MTA の ssmtp がインストールされているのでこれをはずす必要があります。
ルート権限で以下を実行します。
なお、'<','>'で囲まれている文字列に関しては'<','>'も含めて適当な文字列に置き換えてください。


# emerge unmerge ssmtp
# emerge mail-mta/qmail
# cd /var/qmail/alias
# echo "&<manager account>@<your domain>" >> .qmail-mail-daemon
# echo "&<manager account>@<your domain>" >> .qmail-postmaster
# echo "&<manager account>@<your domain>" >> .qmail-root
# config-fast <mail server host name>.<your domain>
# echo "localhost" > /var/qmail/control/locals
# echo "<mail server host name>.<your domain>" >> /var/qmail/control/locals
# echo "<your domain>" >> /var/qmail/control/locals
# echo "localhost" > /var/qmail/control/rcpthosts
# echo "<mail server host name>.<your domain>" >> /var/qmail/control/rcpthosts
# echo "<your domain>" >> /var/qmail/control/rcpthosts
# echo ".<your domain>" >> /var/qmail/control/rcpthosts
# ln -s /var/qmail/supervise/qmail-send /service/qmail-send
# ln -s /var/qmail/supervise/qmail-smtpd /service/qmail-smtpd
# rc-update add svscan default
# source /etc/profile
# /etc/init.d/svscan start


もしメールの中継を拒否したいドメインが "example.com" と "example.net" なら以下を実行しておきます。


# echo "example.com" > /var/qmail/control/badmailfrom
# echo "example.net" >> /var/qmail/control/badmailfrom


次にメールを受け取るユーザの設定を行います。
メールを受け取るためには各ユーザのホームディレクトリに格納用のディレクトリを作成する必要があります。
この後に追加するユーザに関しては追加時に自動的に生成されるはずですが、
すでに存在するユーザでは手動で作成する必要があります。
その手順は以下のとおりとなります。
なお、ここではシステム的に<groupe>グループに属す<user>の設定とする。


# cd /home/<user>
# cp -R /etc/skel/.maildir ./
# chown -R <user>:<groupe> .maildir
# cp /etc/skel/.qmail.sample ./
# chown <user>:<groupe> .qmail.sample


これで、メールの送信と他のメールサーバからの受信ができるようになります。
次回は届いたメールを読めるようにします。

0 件のコメント:

コメントを投稿