Solaris10 on メールサーバー (Postfixインストール)
DNSと同じ理由でメールサーバーも作ってみる事にしました。もちろん最初はsendmailと思ったのですが新しい物が好きと軽い気持ちでPostfixにしてみました。
1−1 Postfixのダウンロード
Postfixについては、http://www.postfix.orgを参照すると概略が解ります。ダウンロードはwgetでと思いましたが何故かアクセスに失敗しhttp://www.postfix.orgのdownloadからpostfix-2.5.5.tar.gzを落とし/tmpに解凍しました。
$ cd /tmp $ gtar xvfz postfix-2.5.5.tar.gz $ cd postfix-2.5.5 |
1−2 インストール環境の確認
postfixをインストールする先や設定ファイルやらメールボックスの位置やらとインストール前に環境を決めておく必要が有ります。
Default設定でも良いのですが同じ意味を持つディレクトリが分散するのも嫌だし第一目的だったapacheに合わせる事にしました。
マクロ名 | 標準環境変数 | Postfix標準設定 | 今回の設定 |
DEF_COMMAND_DIR | command_directory | /usr/sbin | /usr/sbin |
DEF_CONFIG_DIR | config_directory | /etc/postfix | /etc/postfix |
DEF_DAEMON_DIR | daemon_directory | /usr/libexec/postfix | /etc/postfix/bin |
DEF_MAILQ_PATH | mailq_path | /usr/bin/mailq | /bin/mailq |
DEF_HTML_DIR | html_directory | no | no |
DEF_MANPAGE_DIR | manpage_directory | /usr/local/man | /usr/postfix/man |
DEF_NEWALIAS_PATH | newaliases_path | /usr/bin/newaliases | /usr/sbin/newaliases |
DEF_QUEUE_DIR | queue_directory | /var/spool/postfix | /var/spool/postfix |
DEF_README_DIR | readme_directory | no | no |
DEF_SENDMAIL_PATH | sendmail_path | /usr/sbin/sendmail | /usr/sbin/sendmail |
1−3 Makeの実行
Makeする前にインストール環境を設定してMakefileを作成します。
$ make -f Makefile.init makefiles \ > CCARGS='-DEF_DAEMON_DIR=\"/etc/postfix/bin\" \ > -DEF_MAILQ_PATH=\"/bin/mailq\" -DEF_MANPAGE_DIR=\"/usr/postfix/man\" \ > -DEF_NEWALIAS_PATH=\"/usr/sbin/newaliases\"' |
特にエラー等が出ずに終了したら環境を設定したMakefileの完成なので、不要なファイルをここで削除しておきます。
$ make tidy |
続いてMakeの実行をします。
$ make |
1−4 インストールの準備
インストールの実行前にpostfixのグループとユーザの追加・スプール用ディレクトリの作成・sendmailの停止を行います。
これらの処理はsuでroot権限を持って行います。
・グループとユーザーの追加
# groupadd -g 125 postfix |
# groupadd -g 126 postdrop |
# useradd -d /var/empty -g postfix -u 125 -s /bin/false postfix |
・スプール用ディレクトリの作成
# mkdir /var/spool/postfix |
・sendmailの停止
停止した後で停止している事を確認します。sendmailが動いているとインストールは失敗します。
# svcadm disable sendmail |
# svcs -l sendmail |
sendmailを止めたらsendmailをリネームしておいた方がインストールの確認がしやすいと思ってリネームしました。
# mv /usr/sbin/sendmail /usr/sbin/sendmail_org |
# mv /usr/lib/sendmail /usr/lib/sendmail_org |
1−5 インストールの実行
インストール中にディレクトリ等の問い合わせが複数有りますが1−2の環境に合わせて入力して行きます。
# make install |
インストールが終わったらインストール先に選んだ/usr/sbinにsendmailが出来ている事を確認します。
合わせて初めから有った場所/usr/libにもコピーするかシンボリックリンクを張ります。
# cp /usr/sbin/sendmail /usr/lib/sendmail |