Next: 4. KeaKeeperの使い方 Up: KeaKeeper Previous: 2. KeaKeeperを利用するために
- 3.1 KeaKeeperの入手と展開
- 3.2 画面テンプレートディレクトリの権限変更
- 3.3 KeaKeeperの設定
- 3.4 認証テーブルの設定
- 3.5 WEBサーバの設定変更
- 3.6 SELinuxの調整
- 3.7 接続確認
3. KeaKeeperのインストール
本章では、KeaKeeperのインストール・設定方法について解説します。
3.1 KeaKeeperの入手と展開
KeaKeeperは、OSDNのKeakeeperプロジェクトのダウンロードページから入手することができます。
https://github.com/designet-inc-oss/KeaKeeper
以下のファイルをダウンロードしてください。
kerkeeper-version.tar.gz
ダウンロード後、KeaKeeperを展開します。
以下は、/var/www/配下にKeaKeeperのアーカイブを展開する例です。
# tar xzf keakeeper-*.tar.gz -C /var/www/ |
上記のように展開した場合、展開後のディレクトリ構成は表のようになります。
本マニュアルでは、これを前提に解説を進めます。
ディレクトリ/ファイル名 | 解説 |
/var/www/keakeeper | KeaKeeperのルートディレクトリ |
/var/www/keakeeper/public | 公開ディレクトリ |
/var/www/keakeeper/config | 設定ディレクトリ |
/var/www/keakeeper/view/tmpl | 画面テンプレートディレクトリ |
/var/www/keakeeper/locale | 言語ファイル配置ディレクトリ |
/var/www/keakeeper/class | ライブラリディレクトリ |
/var/www/keakeeper/baseclass | ライブラリディレクトリ |
/var/www/keakeeper/vendor | サードパーティライブラリ |
/var/www/keakeeper/db | 認証テーブル用SQL格納ディレクトリ |
3.2 画面テンプレートディレクトリの権限変更
画面テンプレートの配置ディレクトリの権限を変更します。 KeaKeeperは、内部的にSmartyを利用しています。Smartyの仕様として、テンプレートファイルを読み込んだ後、テンプレートのキャッシュを作成します。そのため、キャッシュを作成するディレクトリに、WEBサーバの実行ユーザから書き込みができるように権限を設定します。
本解説では、CentOS7標準のApache HTTP Serverをインストールしているため、WEBサーバの実行ユーザは「apache」です。キャッシュディレクトリのオーナをapacheに変更します。
# chown apache /var/www/keakeeper/view/compiled/ |
3.3 KeaKeeperの設定
KeaKeeperの設定を行ないます。設定ファイルは以下のパスに存在しています。
/var/www/keakeeper/config/application.ini |
下記は設定例です。
[i18n] lang = 'ja_JP' [conf] pathdhcp4 = '/etc/kea/kea-dhcp4.conf' pathdhcp6 = '/etc/kea/kea-dhcp6.conf' [session] timeout = 86400 cookie = 'PEnrargei019nrwu8' path = '/' domain = '' secure = false httponly = false [search] leasemax = 5 hostmax = 5 [db] driver = 'mysql' host = '127.0.0.1' port = 3306 database = 'kea' user = 'keauser' password = 'password' [log] facility = 'local0' prog = 'keakeeper' [path] login[] = '/' login[] = '/index.php' [api] server = 'http://127.0.0.1:8080' dhcpv4backup = '/etc/kea/backupdir/kea-dhcp4.conf.backup' dhcpv6backup = '/etc/kea/backupdir/kea-dhcp6.conf.backup' dhcpv4lock = '/etc/kea/lockdir/kea-dhcp4.conf.lock' dhcpv6lock = '/etc/kea/lockdir/kea-dhcp6.conf.lock' |
各設定の意味は以下の通りです。
項目名 | 解説 |
lang | 表示言語を指定します。現在はja_JP/en_USが指定できます。 |
項目名 | 解説 |
pathdhcp4 | DHCPv4サービスの設定ファイルのパスを指定します。 |
pathdhcp6 | DHCPv6サービスの設定ファイルのパスを指定します。 |
項目名 | 解説 |
timeout | ログインセッションのタイムアウトまでの時間を指定します |
cookie | ブラウザに保存するCookieの名前を指定します |
path | cookieを適用するURLのパスを指定します |
domain | cookieを適用するドメインを指定します |
secure | cookieのセキュアフラグを指定します |
httponly | cookieのhttponlyフラグを指定します |
項目名 | 解説 |
leasemax | リース情報検索時の最大結果表示数を指定します |
hostmax | ホスト予約検索時の結果表示数を指定します |
項目名 | 解説 |
host | DBの接続先ホストを指定します。IPアドレスまたはドメインで指定します。 |
driver | DBのドライバを指定します。現在はmysqlのみ対応しています。 |
port | DBのポート番号を指定します。 |
database | DBの名前を指定します。 |
user | DBの接続ユーザを指定します。 |
password | DBのユーザパスワードを指定します。 |
項目名 | 解説 |
facility | Syslogのファシリティを指定します。 |
prog | Syslogタグを指定します。 |
項目名 | 解説 |
login[] | ログインページとみなすURLのパス。この項目に指定した値は、ログイン画面として扱われ、認証無しで表示可能になります。
本解説では、KeaKeeperの公開ディレクトリをそのままWEBサーバのドキュメントルートとして設定するため、URLとしてはhttp://example.com/やhttp://example.com/index.phpでログインページが表示されます。このため、上記設定例では/と/index.phpを指定しています。 一方でエイリアスの設定などで、パスが変化することもあります。http://example.com/keakeeper/などがログインページとなる場合は以下のように設定します。 login[] = "/keakeeper/"; login[] = "/keakeeper/index.php"; |
項目名 | 解説 |
server | 接続先を指定します。 |
dhcpv4backup | Keaのkea-dhcp4.confをバクアップするファイルのパスを指定します。 |
dhcpv6backup | Keaのkea-dhcp4.confをバクアップするファイルのパスを指定します。 |
dhcpv4lock | ロックファイルのパス(v4)を指定します。 |
dhcpv6lock | ロックファイルのパス(V6)を指定します。 |
3.4 認証テーブルの設定
DBサーバに、KeaKeeperが利用する認証テーブルを作成します。 テーブルの作成は、KeaKeeperのソースアーカイブに含まれるauth.sqlファイルをインポートして行ないます。 以下はインポート例です
# mysql -u keauser -p kea < /var/www/keakeeper/db/auth.sql |
3.5 WEBサーバの設定変更
3.5.1 ドキュメントルートとして配置する場合
KeaKeeperをWEBサーバのドキュメントルートとして設定する場合は、以下のように設定します。 本解説では、CentOS7のApache HTTP Serverのドキュメントルート「/var/www/html」を、「/var/www/keakeeper/public」に変更します。
# DocumentRoot "/var/www/html" DocumentRoot "/var/www/keakeeper/public" #<Directory "/var/www/html"> <Directory "/var/www/keakeeper/public"> |
最後にWEBサーバをリロードします。
# systemctl reload httpd.service |
3.5.2 エイリアスとして配置する場合
KeaKeeperをWEBサーバのエイリアスとして設定する場合は、以下のように設定します。 本解説では、エイリアス設定として「/var/www/keakeeper/public」を「http://***/keakeeper」にマッピングします。 また/etc/httpd/conf.d/keakeeper.confとして設定ファイルを配置することを想定しています。
Alias /keakeeper /var/www/keakeeper/public <Directory "/var/www/keakeeper/public"> require all granted </Directory> |
次にWEBサーバをリロードします。
# systemctl reload httpd.service |
最後にKeaKeeperのapplication.iniを変更します。
[path] login[] = '/keakeeper/' login[] = '/keakeeper/index.php' |
3.6 SELinuxの調整
SELinuxが有効な環境では、KeaKeeprを動作させるためのSELinuxの調整が必要になります。 以下のように、policycoreutils-pythonパッケージをインストールして、 ファイルコンテキストとブーリアンの設定を行ってください。
なおSElinuxの調整は、Kea本体やKeaKeeperのインストール先によって、調整内容が変化します。自身の環境に合わせて設定を行ってください。
# yum install policycoreutils-python # semanage fcontext -a -t httpd_cache_t '/var/www/keakeeper/view/compiled(/.*)?' # restorecon /var/www/keakeeper/view/compiled # setsebool -P httpd_can_network_connect_db on |
以上でインストールは完了です。
3.7 接続確認
keakeeperを設定したURLにブラウザでアクセスしてください。
http://ドメイン or IPアドレス/
下記のようにログイン画面が表示されることを確認してください。 また以下のユーザID・パスワードでログインできることを確認してください。
- ユーザID: admin
- パスワード: admin
Next: 4. KeaKeeperの使い方 Up: KeaKeeper Previous: 2. KeaKeeperを利用するために
2023年11月27日