[Memo2008][EPA]tako作業メモ(納多, 中本)(080314)

ssh のインストール

# apt-get install openssh-server

デフォルトの設定のうちに, 作業者の手元の公開鍵を (username)/.ssh/authorized_keys として保存する.

ssh サーバの設定を変更する. 公開鍵認証を有効にし (これがデフォルト), パスワード認証と PAM を無効にする. また root ログ インを無効にする.

# vi /etc/ssh/sshd_config

それぞれ上の行を下の行へ変更.

PermitRootLogin yes
PermitRootLogin no

#PasswordAuthentication yes
PasswordAuthentication no

UsePAM yes
UsePAM no

最後に ssh デーモンの再起動を行う

# /etc/init.d/ssh restart
Restarting OpenBSD Secure Shell server: sshd.

bindのインストールと設定

ビルドとインストール

bind は apt-get で取得可能であるが, 経験値積みのため手動でインストールを行う.

配布サイト <URL:http://www.isc.org/index.pl?/sw/bind/index.php> からアーカイブを取得.

$ cd /usr/local/src
$ sudo -s
# tar xfz bind-9.4.2.tar.gz
# cd bind-9.4.2/
# mkdir /usr/local/bind

# ./configure --prefix=/usr/local/bind
(省略)
configure: error: no acceptable C compiler found in $PATH

と, 途中でこけた. gcc などをインストールする.

# apt-get install gcc
# apt-get install gpp
# apt-get install g77
# apt-get install gfortran

再度 configure を試みる

# ./configure --prefix=/usr/local/bind

今度は最後まで行った.

ちなみにバージョン 9.4.1 の作業ログによると,

OpenSSL のバージョンが古いのでセキュリティ脆弱性があると言われるが, Debian の場合はバージョン番号が古いままでもセキュリティパッチは 当たっているので, --disable-openssl-version-check を指定して バージョンチェックを無視する.

とあるが, 今回 (バージョン 9.4.2) では特に警告は表示されなかった. よって --disable-openssl-version-check のオプションは不要と判断.

# make
# make install

インストールした Bind には host 等のコマンドも同梱されているため, 既にインストールされてい る bind9-host, libbind9-0, dnsutils は削除する.

# apt-get remove libbind9-0

インストールした実行ファイルへのパスの設定

インストールされた Bind の実行ファイル群へパスを通す.

その前に, zsh が入っていなかったのでインストールする.

# apt-get install zsh

[EPA]パスの設定 の <一般ユーザ用コマンドのパス> に /usr/local/bind/bin を, <システム 管理用コマンドのパス> に /usr/local/bind/sbin を追加する.

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

[EPA]パスの設定 の「man 関連のパスの設定」を参考に man 関連のパスの設定を行う.

具体的には, 以下を /etc/manpath.config に追加する.

MANDATORY_MANPATH /usr/local/bind/man
MANPATH_MAP /usr/local/bind/bin /usr/local/bind/man
MANPATH_MAP /usr/local/bind/sbin /usr/local/bind/man
MANDB_MAP /usr/local/bind/man /usr/local/bind/man

ユーザとグループ追加

Bind の実行ユーザとして bind ユーザを作成する.

# vipw

以下の行を追加.

bind:x:53:53:Bind Sandbox:/usr/local/bind/var:/bin/false

# vipw -s

以下の行を追加.

bind:!:13749:0:99999:7:::

同様に bind グループを追加する.

# vigr

以下の行を追加.

bind:x:53:

# vigr -s

以下の行を追加.

bind:*::

パーミッションの設定

pid ファイル置場を bind の所有にする.

# cd /usr/local/bind/var
# chown bind:bind run/

[Memo2008][EPA]tako作業メモ(納多)(080417) へ続く.

apache のインストール

Apache 2.2.8 をインストールする

  • ビルトのための設定

ソースからインストールする. インストール先は apache2 のデフォルトである /usr/local/apache2 とする. この場合, configure へ --prefix の必要は無い. apache-ssl を動作させたいため --enable-ssl を, mod_rewrite を使用したい ため --enable-rewrite を (gate の登録窓口を http から https へ移動させた い), DSO (Dynamic shared object: 動的共有オブジェクト) を使用したいため --enable-so をオプションとして指定した. また, ビルド時に "Cannot use an external APR-util with the bundled APR" とエラーが生じる場合があるため, --with-included-apr オプションも指定する.

# cd /usr/local/src
# wget http://www.meisei-u.ac.jp/mirror/apache/httpd/httpd-2.2.8.tar.gz
# tar xvfz httpd-2.2.8.tar.gz
# cd httpd-2.2.8
# ./configure --enable-ssl --enable-rewrite --enable-so --with-included-apr

すると,

configure: error: C++ preprocessor "/lib/cpp" fails sanity check

というエラーが吐き出されたので, tako に g++ が入っているか確認するため

# which g++

と打つと何も表示されず, 入っていないことが判明. なので,

# apt-get install g++

と入力して g++ をインストールした.

再び

# ./configure --enable-ssl --enable-rewrite --enable-so --with-included-apr

と打つと, 今度は

configure: error: ...No recognized SSL/TLS toolkit detected

というエラーが吐き出された. なので, 以下のように SSL をインストールする.

# apt-get install openssl libssl-dev

再び

# ./configure --enable-ssl --enable-rewrite --enable-so --with-included-apr

と打つと, 今度こそ configure によるコンパイル前設定が成功.

以下のように打って, コンパイルする.

# make

うまくコンパイルできたので, インストールする.

# make install

インストールできた.