In all walks of IT, a ticketing system when problems arise helps generate documentation and establish a clear troubleshooting process for future problems of this type. Substantial company assets can be used on purchasing a hosted ticketing system. Some of these ticketing systems are worth their weight in gold no doubt, but others are very slow and persnickety for a stupidly high cost. At a former workplace of my own I remember thinking that the ticketing system was extremely bloated especially for a paid service which drove me to insanity more than once.
With this in mind, I began looking into open source alternatives which can provide a simple solution:
- Allow users to create accounts & open tickets.
- Allow easy ticket tracking with an email system.
- Allow media uploads (screenshots).
I then managed to come across osTicket which answered just about all my needs and requirements.
For this installation guide, the ticketing system will be installed in a internal network only, due to my lack of available public IP addresses. I did however test the installation of osTicket on my own web server (hosting this website which is running on Ubuntu – screenshot attached) and had excellent success. So please be mindful of the configurations in this tutorial, as they are meant for home labs and anything for production should have much stricter installation and alternative configurations.
First off, this guide will be using RHEL 8 to install the software. So if you don’t have a VM or a spare machine around, then you’ll need to do that.
Following this, the osTicket system runs on the LAMP stack (as do all great things) and this will require to be installed on the server. I would first recommend installing the EPEL repo to the RedHat 8 install:
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
Please note, the EPEL repo was causing myself problems in RedHat 8, if you are replicating this guide in any time past July 2019, then please let this be your warning.
Following this, run the following to install the LAMP stack modules:
sudo yum install httpd mariadb mariadb-server php php-mysqlnd php-fpm php-cli php-xml php-common php-gd php-imap php-mbstring wget
Following this, start the services and create start-up scripts for them:
sudo systemctl start mariadb httpd sudo systemctl enable mariadb httpd
The next (and in my opinion, best way compared to git cloning) is to download the osticket package from their website here