在Debian服务器上安装WebKeePass
WebKeePass是KeePass项目的免费,强大且开源密码管理器的基于Web的Java端口。
我们将安装WebKeePass管理器并将其配置为使用OpenLDAP服务器进行用户身份验证。
安装Java
我们将在Debian Wheezy服务器上安装WebKeePass。
更新软件包列表并安装Java:
# apt-get update && apt-get install wget openjdk-6-jdk unzip vim
找出Java的安装位置:
# find/-name java | grep -i jdk /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java /usr/lib/jvm/java-6-openjdk-amd64/bin/java
导出JAVA_HOME(否则对我不起作用):
# export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64
安装WebKeePass
下载安装文件:
# cd ~ # wget http://kent.dl.sourceforge.net/project/webkeepass/WebKeePass-3.121122.zip
解压缩档案:
# unzip ./WebKeePass-3.121122.zip
改成:
# cd ./WebKeePass-3.121122
使安装文件可执行:
# chmod u+x ./Install-no-gui.sh
并运行安装脚本:
# ./Install-no-gui.sh
系统将提示我们同意LGPL;询问安装目录和Java主目录,tomcat端口,并创建一些用户并指定加密算法:
Do You Agree? [Y or N] :Y Installation Path: /usr/local/webkeepass-3.12 JAVA_HOME' Path: /usr/lib/jvm/java-6-openjdk-amd64 Web KeePass Admin/Root UserID: [root] Admin/Root Password: Web KeePass Standard UserID: [user] Standard User Password: Tomcat HTTPS/SSL Port: [8443] Tomcat Shutdown Port: [9444] Your Host Name: [localhost] Select Cipher: [1] 1 = Blowfish 2 = DESede 3 = TripleDES 4 = AES 5 = DES 4 * Installation Detail * Installation Path: /usr/local/webkeepass-3.12/ * JAVA_HOME: /usr/lib/jvm/java-6-openjdk-amd64/ * Web KeePass Admin/Root UserID: root * Password: *** * Web KeePass Standard UserID: user * Password: *** * Tomcat HTTPS/SSL Port: 8443 * Tomcat Shutdown Port: 9444 * Host Name: localhost * Cipher: 4 [...] Complete! 1 - Start Tomcat: /usr/local/webkeepass-3.12/ 2 - point your web browser to : https://localhost:8443 3 - point your mobile device to https://localhost:8443/iphone (*note: If reinstallation is required, you must first delete the target installation folder)
启动Tomcat和WebKeePass
导航到WebKeePass安装目录:
# cd /usr/local/webkeepass-3.12
使启动脚本可执行:
# chmod u+x ./startup.sh # chmod u+x ./jakarta-tomcat-5.5.7/bin/*.sh
启动WebKeePass:
# ./startup.sh Using CATALINA_BASE: /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7 Using CATALINA_HOME: /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7 Using CATALINA_TMPDIR: /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7/temp Using JAVA_HOME: /usr/lib/jvm/java-6-openjdk-amd64
注意:必须在防火墙上打开TCP 8443端口,以便能够从公共网络进行访问:
# iptables -A INPUT -p tcp --dport 8443 -j ACCEPT
打开Web浏览器并导航到https://localhost:8443.
我们应该看到Web登录屏幕:
成功登录后,我们将进入WebUI:
我们可以通过运行关闭脚本来停止WebKeePass服务:
# /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7/bin/shutdown.sh
配置WebKeePass以使用OpenLDAP
打开WebKeePassConf.xml配置文件:
# vim /usr/local/webkeepass-3.12/conf/WebKeePassConf.xml
并根据需要更改LDAP部分:
<LDAP_CONFIG> <LDAP>true</LDAP> <LDAP_Group>Users</LDAP_Group> <principalDNPrefix>uid=</principalDNPrefix> <principalDNSuffix>,ou=Users,dc=theitroad.com,o=top</principalDNSuffix> <java.naming.provider.url>ldap://127.0.0.1:389</java.naming.provider.url> <java.naming.security.authentication>simple</java.naming.security.authentication> <java.naming.factory.initial>com. sun. jndi. ldap. LdapCtxFactory</java.naming.factory.initial> </LDAP_CONFIG>
定义java.naming.factory.initial时没有空格。
自己注意:WebKeePass接受用户输入的用户ID,并用<principalDNPrefix>和<principalDNSuffix>将其包围,以创建要进行身份验证的DN。
故障排除
如果某些操作无法按预期工作,则首先检查的是catalina日志:
# tail -f /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7/logs/catalina_log.[DATE].txt
创建简单的WebKeePass启动脚本
可能很难记住默认的启动和关闭脚本的位置,因此我们将为自己创建一个。
打开一个空文件:
# vim /usr/local/sbin/webkeepass-start.sh
并添加以下内容:
#!/bin/bash unset JAVA_HOME export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64 cd /usr/local/webkeepass-3.12 ./startup.sh
保存文件并使脚本可执行:
# chmod 0750 /usr/local/sbin/webkeepass-start.sh
现在,我们只需输入以下内容即可启动WebKeePass:
# webkeepass-start.sh
让我们为关机做同样的事情:
# vim /usr/local/sbin/webkeepass-stop.sh
添加以下内容:
#!/bin/bash unset JAVA_HOME export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64 /usr/local/webkeepass-3.12/jakarta-tomcat-5.5.7/bin/shutdown.sh
保存文件并使其可执行:
# chmod 0750 /usr/local/sbin/webkeepass-stop.sh
我们可以通过输入以下内容来停止WebKeePass:
# webkeepass-stop.sh