This page describes the steps that need to be taken in order to run any part of Variations-Web including the web player and the access manager. These instructions assume that you will be installing Variations-Web on the the same system where the Variations server and its various components (e.g. Perl, Apache, etc.) are already running. These instructions are written assuming the system's operating system is Red Hat Enterprise Linux 5.
HTTPS using SSL authentication is needed in order to protect private information including user profiles and group/course membership information.
openssl x509 -in /etc/pki/tls/certs/localhost.crt -noout -text
sudo make testcert
in /etc/pki/tls/certs . When prompted for the Common Name, fill in the DNS hostname (the certificate will NOT work if an IP address is used for the Common Name.)yum install mod_ssl
For Tomcat to be accessed on normal HTTP ports (80 and 443), mod_jk needs to be installed. mod_jk passes all requests on given paths to Tomcat along with SSL credentials if present. Using mod_jk allows a single entry point for all HTTP requests and avoids running Tomcat on higher ports.
sudo yum install httpd-devel
tar xvzf tomcat-connectors-1.2.32-src.tar.gz; cd tomcat-connectors-1.2.32-src/native
CFLAGS="-O2 -g -Wall -fno-strict-aliasing" ./configure --with-apxs=/usr/sbin/apxs --disable-trace --enable-flock make sudo make install |
######################################### # Mod_jk stuff ######################################### LoadModule jk_module modules/mod_jk.so JkWorkersFile /etc/httpd/conf.d/workers.properties JkLogFile /etc/httpd/logs/mod_jk.log JkLogLevel warn JkMountCopy All JkMount /variations-ws-server/* default JkMount /variations-ui-web/* default JkMount /variations-mgmt-web/* default |
worker.list=default worker.default.port=8009 worker.default.host=localhost worker.default.type=ajp13 |
After installing and configuring mod_jk, you will need to restart apache: sudo /etc/init.d/httpd restart
If your SSL certificate is self-signed, then in order for the Web UI and Access Manager connect to the Web Services you will need to add it to the trusted certificates of the newly installed JDK. Run the following as root, adjusting the JDK path (both the keytool program and keystore) if necessary:
$JAVA_HOME/bin/keytool -import -trustcacerts -alias apacheLocalhostCA \ -file /etc/pki/tls/certs/localhost.crt -keystore $JAVA_HOME/jre/lib/security/cacerts \ -storepass changeit -keypass changeit |
Do the following steps as root, adjusting tomcat's filename if necessary:
cp apache-tomcat-6.0.33.tar.gz /usr/local
cd /usr/local; tar xvfz apache-tomcat-6.0.33.tar.gz
ln -s apache-tomcat-6.0.33 tomcat
su - tomcat
export JAVA_OPTS="-Xmx1024m -Dcom.sun.management.jmxremote -XX:MaxPermSize=256m" |
exit su - tomcat echo $JAVA_OPTS |
<role rolename="wsconsumer"/> <user username="client_auth_username" password="actual_password" roles="wsconsumer"/> |
As the tomcat user, run bin/startup.sh. Check that tomcat has started up properly by opening a browser and navigating to http://tomcat.host:8080/ (where tomcat.host is the hostname where tomcat is running). If tomcat is running, a welcome page will be displayed.
The Variations Web Services need to connect to the Variations server to access metadata and user profiles. The Web Services require a superuser connection to Variations. Access control to this information is handled by the Variations server access policy file and an access policy file bundled with the Web Services.