パスワードマネージャについて調べてたところ、OSSのWebベースパスワードマネージャの『CLIPPERZ』というものがあるようだったので、試しに入れてみることにした。 今までにグループでのパスワードマネージャは触れていたのだが、今回の『CLIPPERZ』は個人向けのデータを扱う。 とりあえずインストール先にはCentOS 7を用いる。
1.前提パッケージの導入
LAMP環境が必要になるので、こちらを参考に導入しておく。
yum install -y httpd mariadb-server mariadb mariadb-devel php php-devel php-pdo php-mysql git python-pip php-bcmath
pip install gitpython
自動起動設定をする。
systemctl enable httpd mariadb
systemctl start httpd mariadb
「mysql_secure_installation」の実行。
mysql_secure_installation
最後に、firewalldでポート開放を行う。
firewall-cmd --permanent --add-service={http,https}
firewall-cmd --reload
2. CLIPPERZのインストール・設定
前提となるパッケージの導入が完了したら、CLIPPERZのインストールを行う。 まず、以下のコマンドを実行してソースのダウンロード等を行う。
git clone git://github.com/clipperz/password-manager.git
cd password-manager
./scripts/build install --backends php --frontends beta
次に、httpdで公開するディレクトリにソースのコピーを行う。
cp -R target/php/* /var/www/html/
chown -R apache. /var/www/html/
DB・接続ユーザの作成を行う。
mysql -p -e 'create database clipperz;
grant all privileges on clipperz.* to "clipperz"@"localhost" identified by "clipperz";
flush privileges;'
最後に、DBの接続情報について設定ファイル(/var/www/html/configuration.php)に記述する。 (今回はデフォルトの設定値を使ったので変更は不要ではあるが)。
/var/www/html/configuration.php$configuration['db'] = 'clipperz'; // database name $configuration['host'] = 'localhost'; // database host $configuration['user'] = 'clipperz'; // database user $configuration['pass'] = 'clipperz'; // database password $configuration['port'] = '3306'; // database port
DB接続設定までできたら、ブラウザからアクセスしてテーブル作成などを行わせる。 「http://IPアドレスorホスト名/setup/index.php」にアクセスし、「POG me up!」をクリックする。
特にエラー等出てなければ、「Proceed」をクリック。
「Manage Plugins」タブを開き、「INSTALL」をクリック。
インストールが無事完了した。
上記画面まで行ったら、以下のコマンドで設定ファイル(/var/www/html/configuration.php)を編集する。
sed -i "/'db_encoding'/s/0/1/g" /var/www/html/configuration.php
最後に、「/var/www/html/beta」をRootDirectory直下にコピーしてそのまま利用できるようにする。
cp -Rp /var/www/html{/beta/*,}
これでインストールは完了。
3. ブラウザからアクセスする
インストールが完了したのでブラウザからアクセスしてみよう。 「http://IPアドレスorホスト名」で接続できるようになっている。
とりあえずこれでインストールは完了。 あとは実際に使ってみるだけだ。
うーん…。 ちょいと古臭い感じがするんだが…一応、2015ってなってるから、メンテナンスは続いてるのかな? 実運用ではSSLは必須なので、そこは環境に合わせてhttpdの設定を直していこう。