Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04

|
Last Updated:
|
|

In this tutorial, you will learn how to install osTicket Ticketing system on Ubuntu 22.04/Ubuntu 20.04. osTicket is an opensource ticketing system.

Read more about osTicket and its capabilities on the osTicket Features page.

Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04

osTicket is available in different editions;

  • Free version
  • Cloud based version
  • Virtual Appliance

In this tutorial, we will be install the free version of osTicket on Ubuntu 22.04/Ubuntu 20.04 systems.

Run System Update

To begin with, run system package update;

apt update

Install HTTP Server

To begin with, install an HTTP server. In this setup, we use Apache HTTP server. Thus run the command below to install Apache HTTP server on Ubuntu 22.04/Ubuntu 20.04.

apt install apache2 -y

Start and enable Apache HTTP server to run on system boot;

systemctl enable --now apache2

Install PHP and Required PHP Modules

Next, execute the command below to install PHP and PHP modules required by osTicket system. Note that osTicket requires PHP 7.2+. Hence, we will use PHP 7.4, which is the default PHP version available on Ubuntu 20.04 system repos;

apt install php php-{gd,imap,xml,json,mbstring,mysql,intl,apcu} libapache2-mod-php -y

On Ubuntu 22.04, PHP 8.x is the default available PHP version. Hence, to install PHP 7.4 on Ubuntu 22.04 follow the guide below;

Install PHP 7.4 on Ubuntu 22.04

You can then install the required osTicket PHP 7.4 modules on Ubuntu 22.04 by running the command below;

apt install php7.4-{gd,imap,xml,json,mbstring,mysql,apcu} libapache2-mod-php7.4 -y
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu66_66.1-2ubuntu2_amd64.deb
apt install ./libicu66_66.1-2ubuntu2_amd64.deb
apt install php7.4-intl

Install MySQL/MariaDB Database on Ubuntu 22.04/Ubuntu 20.04

MySQL 5.5+ is supported. We will however use MariaDB 10.3 (which is available version on the default Ubuntu 20.04 repositories) and MariaDB 10.5, (which is available version on the default Ubuntu 22.04 repositories).

apt install mariadb-{server,client} -y

Start and enable MariaDB service to run on boot after the installation;

systemctl enable --now mariadb

Create Database for osTicket Ticketing tool

Once the database is installed, run the initial security script to remove the anonymous accounts, disable remote root login, remove rest databases and reload privileges tables;

mysql_secure_installation

Next, login and create the database and a user with all privileges granted on that specific database;

Be sure to replace the names of the database and database user, as well the user password.

mysql
create database osticket;
grant all on osticket.* to osticketadmin@localhost identified by 'changeme';
flush privileges;
quit

Download osTicket Installation Archive

osTicket v1.15.4 is the current stable release. You can grab the archive from the GitHub releases page.

You can as well get the download link and pull using wget or curl tools;

wget https://github.com/osTicket/osTicket/releases/download/v1.15.4/osTicket-v1.15.4.zip -P /tmp

Create osTicket Web Root Directory

Next, create osTicket web root directory. In this setup, we use the /var/www/html/osticket.

mkdir /var/www/html/osticket

Extract osTicket Archive Contents

Extract osTicket archive contents to the web root directory created above;

apt install unzip -y
unzip -qd /var/www/html/osticket /tmp/osTicket-v1.15.4.zip

You will now see two folders extracted;

ls -1 /var/www/html/osticket/
scripts
upload

Next, rename the osTicket config file from upload/include/ost-sampleconfig.php to upload/include/ost-config.php as follows;

mv /var/www/html/osticket/upload/include/ost-{sample,}config.php

Create osTicket Site Apache configuration file

To server osTicket, you need to create a VirtualHost configuration file that tells the HTTP server to access and server osTicket.

vim /etc/apache2/sites-available/osticket.conf

Next, paste the content below to the configuration file above. Be sure to make any appropriate changes.

<VirtualHost *:80>
        ServerName helpdesk.kifarunix-demo.com
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/osticket/upload
        
        <Directory /var/www/osticket/upload>
                Require all granted
                Options FollowSymlinks
                AllowOverride All
        </Directory>

        ErrorLog ${APACHE_LOG_DIR}/osticket.error.log
        CustomLog ${APACHE_LOG_DIR}/osticket.access.log combined
</VirtualHost>

Save and exit the config.

Check for any Apache syntax errors;

apachectl -t

If you get the output, Syntax OK, then proceed. otherwise fix those errors.

Disable the default Apache site;

a2dissite 000-default.conf

Enable osTicket site;

a2ensite osticket.conf

Enable Apache Rewrite module;

a2enmod rewrite

Change the ownership of the osTicket web root directory to web user;

chown -R www-data: /var/www/html/osticket

Restart Apache Service;

systemctl restart apache2

Accessing osTicket Web Interface

You can now access osTicket web UI using http://<hostname or ip>

This will load osTicket setup and prerequisites page.

Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04

If all is well, click Continue to proceed with the setup:

  • Set the your helpdesk system name, default email address and your preferred language.
Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04
  • Set the Admin user details.
  • Define the database connection details (the username and password created above)
Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04
  • Click Install to finalize the installation of osTicket ticketing system on Ubuntu 22.04/20.04.
  • When all is done, you will see such page;
Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04

And thus, update the permissions of the osTicket configuration file;

chmod 0644 /var/www/html/osticket/upload/include/ost-config.php

Also, remove the setup directory;

rm -rf /var/www/html/osticket/upload/setup

You can then access your osTicket web dashboard using the url, shown on the under useful links.

osticket dashboard

Login to check ticket status or create a new ticket. For example, login as admin user (sign in as an agent) created during the setup.

osticket admin sign in

And there you go!

Install osTicket Ticketing System on Ubuntu 22.04/Ubuntu 20.04

That concludes our guide on how to install osTicket ticketing system on Ubuntu 22.04/Ubuntu 20.04.

Read more on the documentation page.

Other Tutorials

Install Zammad Ticketing System on Debian 10

Configure Request Tracker (RT) to send Mails using MSMTP via Office 365 Relay

SUPPORT US VIA A VIRTUAL CUP OF COFFEE

We're passionate about sharing our knowledge and experiences with you through our blog. If you appreciate our efforts, consider buying us a virtual coffee. Your support keeps us motivated and enables us to continually improve, ensuring that we can provide you with the best content possible. Thank you for being a coffee-fueled champion of our work!

Photo of author
gen_too
Co-founder of Kifarunix.com, Linux Tips and Tutorials. Linux/Unix admin and author at Kifarunix.com.

Leave a Comment