[Memo2015][ITPASS]qpopper のインストールと設定
[ITPASSサーバ構築・運用ドキュメント へ戻る]
qpopper のインストールと設定
APOP サービスを提供するため, qpopper のインストールと設定を行った.
勉強のためにインストールは行うが, ITPASS サーバを POP サーバとして利用している人は皆無らしいため, 使いたいという人が現れるまで, POP は休止しておく.
ソースコードのダウンロード
<URL:ftp://ftp.qualcomm.com/eudora/servers/unix/popper/> でバージョンを確認し, 最新のものをダウンロードした. バージョン 4.1.0 をダウンロードした.
# cd /usr/local/src # wget ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper4.1.0.tar.gz # tar zxvf qpopper4.1.0.tar.gz # cd qpopper4.1.0
qpopper を起動するユーザの作成
qpopper を動作させるためのユーザとして, pop を作成する.
# adduser --system --ingroup mail --no-create-home --shell /bin/false --disabled-password --home /nonexistent pop
passwd ファイルに pop ユーザに関する情報を書き込んだ.
# vipw pop:x:125:8:Post Office Owner:/nonexistent:/bin/false
ここで,
you may need to modify /etc/shadow for consistency.
というメッセージが出てきたので, vipw -s コマンドで, pop の行が追加されていることを確認した.
ビルド
# ./configure --prefix=/usr/local/qpopper \ --enable-apop=/usr/local/qpopper/pop.auth \ --enable-popuid=pop \ --enable-shy \ --enable-nonauth-file=/usr/local/qpopper/popusers \ --without-pam --with-gdbm \ --enable-home-dir-mail=Mailbox
APOP のみにしたいため, /usr/local/src/qpopper4.1.0/popper/Makefile を編集し, OS_DEFS の行を以下のように変更した.
OS_DEFS = -DLINUX -DUNIX -DAPOP_ONLY
mkdir-sh が qpopper 4.1.0 には含まれていないため
<URL:http://europa.cocolog-nifty.com/space/2011/07/qpopperv410mkdi.html>
を参考にして ./Makefile と./popper/Makefile を書き換えた後, make と make install を実行した.
ビルドした.
# make
うまくいかなかったので原因を調べたところ, gdbm がインストールされていなかったのでインストールした.参考
# apt-get install libgdbm-dev
./configure 以降の作業を再び行ったところ, うまくいった.
インストール
# make install
ここで, /user/local/src/qpopper4.1.0/Makefile の install の項目に, (インストールディレクトリ )/share/man というディレクトリが作成されていることを確認した.
inetd に登録
# vi /etc/inetd.conf
以下の行を追加する.
pop3 stream tcp nowait root /usr/local/qpopper/sbin/popper popper -s
起動
次のコマンドによってinetdを再起動した.
# /etc/init.d/openbsd-inetd restart
インストールした実行ファイルへのパスの設定
インストールした qpopper の実行ファイル群へパスを通した. [ITPASS2014]パスの設定 の <一般ユーザ用コマンドのパス> に /usr/local/qpopper /sbin を追加した. (大抵, sbin はシステム用コマンドがインストールされる場所であるが, 一般ユーザが使用する pop_auth もインストールされているため, 一般ユーザ用コマンドのパスとして登録した).
インストールしたマニュアルへのパスの設定
/etc/manpath.config に以下の行を追加した. 詳しくは [ITPASS2014]パスの設定 を参照のこと.
MANDATORY_MANPATH /usr/local/qpopper/share/man MANPATH_MAP /usr/local/qpopper/sbin /usr/local/qpopper/share/man MANDB_MAP /usr/local/qpopper/share/man /usr/local/qpopper/share/man
動作チェック
まず APOP で使用するパスワードを設定した. ここではユーザを chikuwaXX とした. ここで入力するパスワードはログインパスワードと異なっていてもよい.
> popauth Adding only APOP password for chikuwaXX. New password: (パスワードを入力) Retype new password: (パスワードを入力)
次にメールを chikuwaXX 宛に送った.
> sudo -s # mail chikuwaXX Subject: test aaaaa (CTRL+D) Cc:
メールがメールスプールにあるかどうかをチェックした.
# ls -l /home/chikuwaXX/Mailbox -rw------- 1 chikuwaXX chikuwaXX 440 Nov 3 21:15 Mailbox
届くことを確認した. 別の適当なホストで ITPASS サーバからメールを APOP で受け取れるように設定し, メールが受信できることを確認した.
参考文献
[ITPASSサーバ構築・運用ドキュメント へ戻る]
Keyword(s):
References:[[ITPASS2015]2015年度サーバ構築ログ]