IT pass HikiWiki - [EPA2008]qpopperのインストールと設定 Diff

  • Added parts are displayed like this.
  • Deleted parts are displayed like this.

{{toc}}

[((<EPAサーバ構築ドキュメント>)) へ戻る]

APOP サービスを提供するため, qpopper をインストールする.

== 4 回生による新 ika 構築にむけての覚書

これまでのところ, EPA サーバを POP サーバとして
利用している人は皆無らしいため,
使いたいという人がでるまで, POP は休止しておく (実際には, 単に
新 ika からはインストールしない) のが良いかもしれない.


== ソースコードのダウンロード
下ではバージョン 4.0.14 をダウンロードしているが, ((<URL:ftp://ftp.qualcomm.com/eudora/servers/unix/popper/>)) でバージョンを確認し, 最新のものをダウンロードすること. ここではバージョン 4.0.14 を使うこととして進めていく.
  # cd /usr/local/src
  # wget ftp://ftp.qualcomm.com/eudora/servers/unix/popper/qpopper4.0.14.tar.gz

== qpopper を起動するユーザの作成

qpopper を動作させるためのユーザとして, pop を作成する.

  # adduser --system --ingroup mail --no-create-home --shell /bin/false --disabled-password --home /nonexistent pop

passwd ファイルに pop ユーザに関する情報を書き込む. 下記の例では
UID は 104, GID は 8 となっているが, その部分はインストール時の状況による.

  # vipw

  pop:x:104:8:Post Office Owner:/nonexistent:/bin/false

== ビルド

  # tar zxvf qpopper4.0.14.tar.gz
  # cd qpopper4.0.14/
  # ./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 のみにしたいため, popper/Makefile を編集し, OS_DEFS の行を
以下のように変更します.

  OS_DEFS         =    -DLINUX -DUNIX -DAPOP_ONLY

ビルドします.

  # make

== インストール

  # make install

をする. その際, バージョン4.0.14 だとエラーが出る場合がある. その場合は qpopper4.0.14/popper/Makefile の install の項目の 3 つ目の if 文を 以下のように書き換えるとうまくインストール出来るはず.

変更前

  @if [ "x${pop_auth}" != "x" ]; then \
          @${INSTALL} -s -m 4755 -o ${apop_uid} -g 0 ${pop_auth} \
                  ${installdir}/${pop_auth}; \
          @echo "Installed popauth as ${installdir}/${pop_auth} " \
            "with uid ${apop_uid}"; \
      ${installdir}/${pop_auth} -init -safe; \
      @echo "Initialized popauth database"; \
  fi

変更後

  @if [ "x${pop_auth}" != "x" ]; then \
          ${INSTALL} -s -m 4755 -o ${apop_uid} -g 0 ${pop_auth} \
                  ${installdir}/${pop_auth}; \
          echo "Installed popauth as ${installdir}/${pop_auth} " \
            "with uid ${apop_uid}"; \
      ${installdir}/${pop_auth} -init -safe; \
      echo "Initialized popauth database"; \
  fi


== 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 の実行ファイル群へパスを通す.

((<[EPA2008]パスの設定>)) の((* <一般ユーザ用コマンドのパス> *))
に ((*/usr/local/qpopper/sbin*)) を追加する.
(大抵, sbin はシステム用コマンドがインストールされる場所であるが,
一般ユーザが使用する pop_auth もインストールされているため,
一般ユーザ用コマンドのパスとして登録する).


== インストールしたマニュアルへのパスの設定

/etc/manpath.config に以下の行を追加する.
詳しくは ((<[EPA2008]パスの設定#man 関連のパスの設定>)) を参照のこと.

  MANDATORY_MANPATH                           /usr/local/qpopper/man
  MANPATH_MAP        /usr/local/qpopper/sbin  /usr/local/qpopper/man
  MANDB_MAP          /usr/local/qpopper/man   /usr/local/qpopper/man


== 動作チェック

まず APOP で使用するパスワードを設定する.
ここではユーザを chikuwa1 とする.
ここで入力するパスワードはログインパスワードと異なっていてもよい.

  > /usr/local/qpopper/sbin/popauth
  Adding only APOP password for chikuwa1.
  New password: (パスワードを入力)
  Retype new password: (パスワードを入力)

次にメールを chikuwa1 宛に送る.

  > sudo -s
  # mail chikuwa1
  Subject: test
  aaaaa (CTRL+D)
  Cc:

メールがメールスプールにあるかどうかをチェック.

  # ls -l /home/chikuwa1/Mailbox
  -rw------- 1 chikuwa1 chikuwa1 440 Jul 24 09:57 Mailbox

届いているので, これを別の適当なホストで EPA サーバからメールを APOP
で受け取れるように設定する. 受け取れたら OK.

== 参考文献

* ((<Qpopper|URL:http://www.emaillab.org/djb/qmail-pop/qpopper.html>))

[((<EPAサーバ構築ドキュメント>)) へ戻る]