CentOS 5.4にUserminを導入する
CentOS 5.4に Usermin を導入し、一般ユーザがWebブラウザからパスワードを変更できるようにする。
2. インストール
Userminの実行には以下のPerlモジュールが必要になる
- Net::SSLeay
- Authen::PAM
インストールされていない場合はyumからインストールしておく。yumからインストールする場合はrpmforgeの導入が必要なので注意。
[root@localhost ~]# yum -y install perl-Authen-PAM perl-Net-SSLeay
Userminをyumで導入するために、webmin.comをyumリポジトリに追加する。
[root@localhost ~]# rpm --import http://www.webmin.com/jcameron-key.asc [root@localhost ~]# vim /etc/yum.repos.d/webmin.repo [Webmin] name=Webmin Distribution Neutral baseurl=http://download.webmin.com/download/yum enabled=1
yumでインストールを行う。
[root@localhost ~]# yum -y install usermin
3. 設定
Userminの設定ファイル(/etc/usermin/config)を開き、以下の記述を追加する。
lang=ja_JP.euc denyusers=root
- lang には "ja_JP.UTF-8" も指定できるが、eucの方が何故か翻訳が進んでいるので、そちらを使用する。
- denyusers には Usermin を利用させないユーザーを指定できる。rootに使用させる必要はない。
次に /etc/usermin/webmin.acl を以下の通り設定する。念のため、オリジナルファイルのバックアップも取っておく。
[root@localhost ~]# cd /etc/usermin [root@localhost usermin]# cp webmin.acl webmin.acl.orig [root@localhost usermin]# vim webmin.acl user: changepass
さらに /etc/usermin/changepass/config を開き、以下の行を編集する。値が空に見えるのはtypoではなく、空に設定する必要がある。
passwd_cmd=file ↓ passwd_cmd=
最後に /etc/pam.d/usermin を以下の通り設定する。念のため、オリジナルファイルのバックアップも取っておく。
[root@localhost ~]# cp /etc/pam.d/usermin /etc/pam.d/usermin.orig [root@localhost ~]# vim /etc/pam.d/usermin #%PAM-1.0 auth required pam_stack.so service=system-auth account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_stack.so service=system-auth
4. 証明書のインストール
Userminの通信はHTTPSで行われるため、専用のSSL証明書をプライベートCAから発行し、インストールする。
[root@localhost ~]# openssl genrsa 2048 > /etc/pki/tls/private/usermin.key (省略) [root@localhost ~]# chmod 400 /etc/pki/tls/private/usermin.key [root@localhost ~]# cd /etc/pki/tls/certs [root@localhost certs]# openssl req -new -key ../private/usermin.key > usermin.csr (省略) [root@localhost certs]# openssl ca -config /etc/pki/myCA/ca.conf -in usermin.csr > usermin.crt (省略)
秘密鍵と証明書をUserminの設定ディレクトリにコピーする。
[root@localhost ~]# cd /etc/usermin [root@localhost usermin]# cp miniserv.pem miniserv.pem.orig [root@localhost usermin]# cd /etc/pki/tls [root@localhost tls]# cat certs/usermin.crt private/usermin.key > /etc/usermin/miniserv.pem
ここまでやったらUserminを起動する。また、次回から自動的に起動する様に設定する。
[root@localhost ~]# service usermin start [root@localhost ~]# chkconfig usermin on