Xibo CMS 1.8.1 Digital Signage Installation on Ubuntu Server 16.04

Do you want to put up a flat screen television in your place of business and turn it into a digital poster, menu, or sign?  Do you want to set this up without paying monthly and set it up securely?  Xibo CMS makes creating and managing digital posters easy. You can setup the open source Xibo CMS inside your own network, and that eliminates a lot of the security risk.

The hard part was that Xibo’s instructions on setting up the CMS on Linux are sorely lacking a lot of specific information.  I created the example instructions below to give you a head start in getting the Xibo CMS working.

################### Xibo 1.8.1 Digital Signage on Ubuntu Server 16.04 Install Instructions

#Install Ubuntu Server 16.04 via the Server ISO
#during installation select LAMP Server role and then SSH server role

#If you need a base walkthrough of setting up Ubuntu Server 16.04
#https://www.tecmint.com/installation-of-ubuntu-16-04-server-edition/
#https://www.ubuntu.com/download/server/install-ubuntu-server

#Once install is complete and you are logged in continue
################### Change Server Hostname (if needed)
#Change Hostname if needed
sudo hostname your-new-name

################### Change IP Address (if needed)
#Configure the network if needed
nano /etc/network/interfaces
#The interface will probably be called eth0

#example
auto eth0
iface eth0 inet static
   address 192.168.1.3
   netmask 255.255.255.0
   network 192.168.0.0
   gateway 192.168.0.1
   dns-nameservers 8.8.8.8

#One of these will restart the network   
sudo service network-manager restart
sudo service network restart



################## Update the Server Install some basic software
#Test network settings are working otherwise fix previous network settings
ping www.google.com

#Update the Server OS
sudo apt-get update 
sudo apt-get upgrade
#Install some packages that are needed
sudo apt-get install links p7zip
sudo apt-get install software-properties-common
sudo apt-get install wget gcc make autoconf automake
sudo apt-get install libtool build-essential


################## Firewall Setup
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw allow ssh

#Change the ssh port as needed
sudo ufw allow 22
sudo ufw allow www
sudo ufw allow http
sudo ufw allow https
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

#If you want to access MySQL remotely
   sudo ufw allow 3306/tcp
sudo ufw disable
sudo ufw enable

################### SSH setup
sudo ssh-keygen
sudo nano /etc/ssh/sshd_config
#change sshd settings as desired https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04
sudo systemctl restart sshd.service


################### Setup MySQL
sudo /usr/bin/mysql_secure_installation


################## PHP 5.6 Setup (Required to downgrade to PHP 5.6)
#Downgrade php to PHP 5.6
#Repositories required for installing Xibo and its dependencies
sudo add-apt-repository -y ppa:chris-lea/zeromq
sudo add-apt-repository -y ppa:alexharrington/php-zmq
sudo add-apt-repository -y ppa:ondrej/php
sudo apt-get update

sudo apt-get install python-software-properties
sudo apt-get update
sudo apt-get install php5.6 php5.6-mysql php5.6-mbstring libapache2-mod-php5.6 libapache2-mod-php7.0
sudo a2dismod php7.0
sudo a2enmod php5.6

sudo update-alternatives --set php /usr/bin/php5.6

sudo service apache2 restart

sudo apt-get install php5.6-curl php5.6-gd php5.6-mcrypt php5.6-xml php5.6-xmlrpc
sudo apt-get install php5.6-intl php5.6-common php5.6-json php5.6-soap php5.6-dom php5.6-pdo php5.6-zip
sudo apt-get install php5.6-cli php5.6-dev php5.6-zmq 
sudo apt-get install php5.6-pear
sudo pecl install zmq-beta
sudo apt-get install libzmq5 libzmq5-dev libzmq5-dbg pkg-config php-dev build-essential


sudo service apache2 restart

#CHECK ZEROMQ INSTALL CORRECTLY
https://tuananh.org/2015/06/16/how-to-install-zeromq-on-ubuntu/

#Modify both php.ini files
sudo nano /etc/php/7.0/apache2/php.ini
sudo nano /etc/php/5.6/apache2/php.ini

Add extension=zmq.so directive to your php.ini file and restart your web server.
   extension=zmq.so
edit “max_execution_time=120”

edit “post_max_size = 128MB”

edit “upload_max_filesize=128MB”


sudo service apache2 restart


################# Setup XIBO Web Content and add an apache alias as needed

cd /var/www/
wget https://github.com/xibosignage/xibo-cms/releases/download/1.8.1/xibo-cms-1.8.1.tar.gz
sudo tar zxvf /var/www/xibo-VERSION-server.tar.gz
 
sudo mv xibo-VERSION-server /var/www/html/xibo

cd 
sudo chown www-data:www-data -R /var/www/html
sudo chmod 777 -R /var/www/html/xibo
 
 
#https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts
 
#Copy the Default site
sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/xibo.conf
sudo nano /etc/apache2/sites-available/xibo.conf
	#change the path as needed e.g. /var/www/html/xibo/web

sudo service apache2 restart

################## Test PHP is setup and working properly
sudo nano /var/www/info.php
<?php
phpinfo();
?>
#review needed modules are setup in php by launching the file in the web browser


################## Launch Xibo Install

#go to http://serverhostname/web/install/index.php or http://serverhostname/install/index.php

################## Webmin Setup (If you want to set it up to manage your server remotely with webgui)
#https://www.digitalocean.com/community/tutorials/how-to-install-webmin-on-ubuntu-16-04

sudo nano /etc/apt/sources.list
	#add the line below to the bottom
	deb http://download.webmin.com/download/repository sarge contrib

wget http://www.webmin.com/jcameron-key.asc
sudo apt-key add jcameron-key.asc

sudo apt-get update 

sudo apt-get install webmin 

sudo ufw allow 10000/tcp
sudo ufw disable
sudo ufw enable


################## If you want Ubuntu Server to have a GUI for the OS
#To Install user gnome interface if wanted
sudo apt-get install ubuntu-gnome-desktop

Resources:

Official website and download location for the windows or android clients that connect to the CMS, http://xibo.org.uk/

Installation of Ubuntu 16.04 Server Edition

https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-16-04

https://tuananh.org/2015/06/16/how-to-install-zeromq-on-ubuntu/

http://xibo.org.uk/manual/en/install_environment.html

Documentation

https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts

https://www.digitalocean.com/community/tutorials/how-to-install-webmin-on-ubuntu-16-04

Leave a Reply

%d bloggers like this: