In brief, the WiKID Strong Authentication System is a two-factor authentication system, which uses asymmetric encryption instead of the usual shared-secret architecture.
Installation
We’re using 64-bit Ubuntu 13.10:
$ uname -rvm 3.2.0-58-virtual #88-Ubuntu SMP Tue Dec 3 17:58:13 UTC 2013 x86_64
Update the system first:
# apt-get update && apt-get upgrade -uV
Download the community server installation package and its MD5 hash file:
# cd ~
# wget http://heanet.dl.sourceforge.net/project/wikid-twofactor/WiKID_Server/3.5/wikid-server-community_3.5.0-b1470-1.deb
# wget http://skylink.dl.sourceforge.net/project/wikid-twofactor/WiKID_Server/3.5/wikid-server-community_3.5.0-b1470-1.deb.MD5
Also download WiKID utilities:
# wget http://wikidsystems-dl.com/wikid-utilities_3.4.2-1.deb
Check the integrity of the server’s installation file to ensure it’s not corrupted:
# cat wikid-server-community_3.5.0-b1470-1.deb.MD5 ae7bee280fa5dbfac3fe5f0050709633
# md5sum wikid-server-community_3.5.0-b1470-1.deb ae7bee280fa5dbfac3fe5f0050709633 wikid-server-community_3.5.0-b1470-1.deb
Check dependencies:
# dpkg -I wikid-server-community_3.5.0-b1470-1.deb | grep Depends Depends: postgresql (>= 8.0), openjdk-6-jdk, openjdk-6-jre-headless, openssl, debianutils, bash, net-tools, iptables, perl, libwww-perl, sudo, tzdata Build-Depends: debhelper (>= 7.0.50~)
Install required packages:
# apt-get install openssl debianutils net-tools perl libwww-perl tzdata sudo \ iptables
# apt-get install postgresql libpostgresql-jdbc-java libpg-java openjdk-6-jdk \ openjdk-6-jre-headless
Install WiKID community server:
# dpkg -i wikid-server-community_3.5.0-b1470-1.deb
Install WiKID utilities:
# dpkg -i wikid-utilities_3.4.2-1.deb Selecting previously unselected package wikid-utilities. (Reading database ... 80643 files and directories currently installed.) Unpacking wikid-utilities (from wikid-utilities_3.4.2-1.deb) ... Setting up wikid-utilities (3.4.2) ... Checking HOSTTYPE: x86_64 MATCHED
Check Java installation paths (for future records):
# find / -name java | grep jdk /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java /usr/lib/jvm/java-6-openjdk-amd64/bin/java
Run the configuration file:
# /opt/WiKID/sbin/wikidserver_config.sh
Reboot the system:
# reboot
Run the first boot script:
# /opt/WiKID/conf/templates/wikid-firstboot.sh
Setup WiKID server. Select that you don’t want to change your network settings (unless you really do). The script will pick up your existing network settings and ask to create an SSL cert for the server.
# /opt/WiKID/bin/wikidctl setup
Once done, start the server:
# /opt/WiKID/bin/wikidctl start
Open netstat to see if Tomcat is running on port 443:
# netstat -nltp Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 1734/postgres tcp 0 0 0.0.0.0:12 0.0.0.0:* LISTEN 639/sshd tcp6 0 0 :::443 :::* LISTEN 2354/jsvc.exec tcp6 0 0 127.0.0.1:8300 :::* LISTEN 1842/java tcp6 0 0 127.0.0.1:8301 :::* LISTEN 1842/java tcp6 0 0 :::80 :::* LISTEN 2354/jsvc.exec
Web Access
Open a web browser and navigate to to http://localhost/WiKIDAdmin/
.
The default web login credentials are:
Username: WiKIDAdmin (mixed-case)
Password: 2Factor (mixed-case)
WiKID configuration is beyond the scope of this article.
Troubleshooting
If you get the following error when starting the WiKID server:
Starting Tomcat server .../opt/WiKID/bin/daemonctl: line 279: /opt/WiKID/bin/jsvc: No such file or directory
Check the jsvc file to ensure it’s a symlink fo jsvc64:
# find / -name jsvc | xargs ls -li 282976 lrwxrwxrwx 1 root root 21 Feb 5 15:22 /opt/WiKID/bin/jsvc -> /opt/WiKID/bin/jsvc64
If not, it may be caused due to missing or incorrect WiKID utilities package. Make sure you have it installed.