Installing on Redhat Enterprise Linux 7 or CentOS 7

The instructions provided here have been tested on Redhat Enterprise Linux Server release 7.1 (Maipo)

Follow these steps to install Lessons Learned Server on CentOS 7 / REHL 7:

  1. SSH to the linux machine you wish to install Lessons Learned Server on.
  2. Disable SELinux:
    sudo vi /etc/selinux/config
    
    Find the line containing SELINUX= and change it's value to disabled then save the file.
    ...
    SELINUX=disabled
    ...
    
    Then reboot the machine by typing:
    sudo reboot
    
  3. Install httpd server with ssl support:
    sudo yum install httpd mod_ssl openssl
    
    Emable httpd service at boot time automatically to start:
    sudo systemctl enable httpd.service
    
    Now start the httpd service:
    sudo systemctl start httpd.service
    
    Make sure that the inbound traffic for ports 80 (http) and 443 (https) are open on your machine.

  4. Install PHP:
    # Installing php and php-mysql
    sudo yum install php php-mysql
    
    Next restart apache httpd service:
    sudo systemctl restart httpd.service
    
  5. Generate a self-signed certificate for apache https:
    sudo openssl genrsa -out ca.key 2048
    sudo openssl req -new -key ca.key -out ca.csr
    sudo openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
    sudo mv ca.crt /etc/pki/tls/certs
    sudo mv ca.key /etc/pki/tls/private/ca.key
    sudo mv ca.csr /etc/pki/tls/private/ca.csr
    
    Now update the Apache SSL configuration file:
    sudo vi /etc/httpd/conf.d/ssl.conf
    
    Modify the lines that contain SSLCertificateFile and SSLCertificateKeyFile to hold the following values:
    ...
    SSLCertificateFile /etc/pki/tls/certs/ca.crt
    ...
    SSLCertificateKeyFile /etc/pki/tls/private/ca.key
    ...
    
    Save the file and exit the editor.

    Restart Apache Web Server:
    sudo systemctl restart httpd.service
    
  6. Install MariaDB database:
    sudo yum install mariadb-server mariadb
    
    Enable the maria db on startup boot and start it:
    # Enable mariadb on boot
    sudo systemctl enable mariadb.service
    
    # Start mariadb service
    sudo systemctl start mariadb.service
    
    Secure the mariadb database:
    sudo /usr/bin/mysql_secure_installation
    
    Sample output of the mysql_secure_installation script and recommended input highlighted in yellow:
    Set root password? [Y/n] Y
    New password: YOUR-NEW-PASSWORD-HERE
    Re-enter new password: YOUR-NEW-PASSWORD-HERE
    ...
    Remove anonymous users? [Y/n] Y
    ...
    Disallow root login remotely? [Y/n] Y
    ...
    Remove test database and access to it? [Y/n] Y
    ...
    Reload privilege tables now? [Y/n] Y
    ...
    
  7. Install Lessons Learned Server:
    cd /var/www/html
    sudo wget http://www.lessonslearnedserver.com/downloads/lessonslearned_linux64_v2_8_0.tar.gz
    sudo tar -zxvf lessonslearned_linux64_v2_8_0.tar.gz
    cd lessonslearned
    sudo chown -R apache:nobody .
    sudo chmod 755 private/conf
    
    Next, open a web browser and point it to the URL of your server:
    http://localhost/lessonslearned
    Your will be directed to the web-installer:
    Step 1 - License Agreement: click the Accept & Proceed button.
    Step 2 - Checking Sytem For Needed Components: click Next button.
    Step 3 - Prepare Configuration. Provide the MySQL DB Password, admin account password and email then click the Next button.
    Step 4 - Confirm Selected Settings: Click the Next button to confirm the settings.
    Step 5 - Start Lessons Learned Background Service:
    On the terminal console start the Lessons Learned Server Background Service:
    sudo /var/www/html/lessonslearned/private/llserver/start.sh
    
    Then click the Next button.
    Installation completes successfully.

    Proceed to login through the application URL http://localhost/lessonslearned and use the username admin and the password you specified in Step 3 of the web installer.

References:

CentOS and RHEL 7: Install Linux, Apache, MariaDB, PHP (LAMP) Stack
http://www.cyberciti.biz/faq/howto-install-linux-apache-mariadb-php-lamp-stack-on-centos7-rhel7/

Setting up an SSL secured Webserver with CentOS
http://wiki.centos.org/HowTos/Https

Install EPEL and additional repositories on CentOS and Red Hat
http://www.rackspace.com/knowledge_center/article/install-epel-and-additional-repositories-on-centos-and-red-hat