Guides and tutorials

Hundreds of tutorials and step by step guides carefully written by our support team.

Installing osTicket on a server with Linux Debian 10

In this manual we will teach you how to install osTicket on your server. A totally empty Debian 10 server (without SW Panel) has been used for the realization of the manual. Most of the installation will be done through the console.

Requirements

In order to install the osTicket software, you need to meet a series of prerequisites:

  • An updated server (in our case a Debian 10)
  • A LAMP environment (Linux, Apache, MariaDB / MySQL and PHP)
  • A user with sudo permissions (we will use the root user)
  • Internet access (to download the software)

Server Preparation

We execute the following commands from the terminal with the root user:

  1. We update the system

    sudo apt update && sudo apt -y upgrade

  2. We install the unzip program

    sudo apt install -y unzip

  3. We install Apache

    sudo apt install apache2 apache2-utils

  4. We enable the automatic start of Apache when we restart our system

    systemctl enable apache2

  5. We configure www-data (apache user) as the owner of the web root

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

  6. We install MariaDB

    sudo apt install mariadb-server mariadb-client

  7. We enable the automatic start of MariaDB when we restart our system

    systemctl enable mariadb

  8. We install PHP 7.3

    apt install php7.3 libapache2-mod-php7.3 php7.3-mysql php-common php7.3-cli php7.3-common php7.3-json php7.3-opcache php7.3-readline

  9. We enable the Apache php 7.3 module

    a2enmod php7.3

  10. We restart the web server

    systemctl restart apache2

Software installation

We execute the following commands from the terminal with the root user:

  1. Download the program from the site development

    wget -q https://github.com/osTicket/osTicket/releases/download/v1.15.2/osTicket-v1.15.2.zip

  2. Unzip the downloaded file

    unzip -q osTicket-v1.15.2.zip

  3. We move the folder that contains the application to the root directory

    mv upload/ /var/www/osticket

  4. We delete the scripts folder (we will not use it)

    rm -r scripts

  5. We delete the zip file (we no longer need it)

    rm -r osTicket-v1.15.2.zip

  6. We will create the initial osTicket configuration file

    cp /var/www/osticket/include/ost-sampleconfig.php /var/www/osticket/include/ost-config.php

  7. We give write permission to the application's configuration file

    chown www-data: /var/www/osticket/include/ost-config.php

Database

We are going to create the database so that it works correctly with the application

  1. We connect to the database with the root user and its password

    mysql -u root -p (introduciremos la contraseña del usuario root y pulsaremos intro)

  2. We will create the Database with the name "osticket"

    create database osticket charset utf8mb4 collate utf8mb4_unicode_ci;

  3. We will create the username and password of the Database (Replace the X with the desired password)

    create user osticket@localhost identified by 'XXXXXXXX';

  4. We will give the necessary permissions to the user on the Database

    grant all privileges on osticket.* to osticket@localhost;

  5. We close the connection with the Database

    exit

Web server

We are going to configure the web server so that it works correctly with the application.

  1. We create a configuration for the osticket web service

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

  2. The content of the file will be:

    Alias /osticket /var/www/osticket

  3. We close the file saving the changes by pressing "Ctrl + X" and pressing "y" + "enter".

  4. We activate the new configuration

    a2ensite osticket.conf

  5. We reload the web server configuration

    systemctl reload apache2

PHP

We install the necessary extensions for the application to work correctly

  1. For version 7.3 (the one recommended by the application)

    apt install -y php7.3-apcu php7.3-gd php7.3-imap php7.3-intl php7.3-mbstring php7.3-xml

  2. We restart the web server for the changes to take effect

    systemctl reload apache2

Web installation

The last phase of the installation is to configure the application through a web browser where it will allow us to create the administrator user and ask us for the data from the database. In order to access this configuration, we will open a web browser and search for http://dominio/osticket or, failing that http://nombre-de-la-maquina/osticket.

The first page will show us a series of checks, if we have followed the manual we will have them all correct and we will click "Continue".

enter image description here

On the next page you will let us create the administrator user, your password and you will ask us for the connection data of the database. Once entered, we will click "Install Now". Data required:

System Settings

  • Helpdesk Name (We put the name of our company)
  • Default Email (We put an email from our company)

Admin User

  • First Name (We put the name of the administrator user)
  • Last Name (We put the last name of the administrator user)
  • Email Address (We put the email of the administrator user)
  • Username (Does not exist, we create it now)
  • Password (Does not exist, we create it now)
  • Retype Password (We put the password again)

Database Settings

  • MySQL Table Prefix (we leave it as is)
  • MySQL Hostname (we leave it as is)
  • MySQL Database (database name --> osticket)
  • MySQL Username (database user -->osticket)
  • MySQL Password (the password of the database that we put -->XXXXXXXX)

enter image description here enter image description here

The installation process will take a moment and it will show us a last page where it will inform us of the successful result of the operation and will suggest that we give permission to the application's configuration file.

enter image description here

  1. We will delete the web installer of the application

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

  2. We will give permissions to the configuration file

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

Done! We can now access our osTicket service using the URL: http://dominio/osticket

enter image description here

To access the backend we will do it through the same URL but adding "/scp" al final (http://dominio/osticket/scp).

enter image description here

Modify the language (optional)

To be able to modify the language of the application we have to download the file of the language that interests us from the official page of the application, pass the file through FTP and unzip it in the correct location. As the server we are using is an empty Debian 10, the first thing to do is create a user and install the FTP service.

  1. We create a user in the system for the FTP

    adduser testftp

    (introducimos la contraseña y presionamos intro)

    (repetimos la contraseña y presionamos intro)

    (hacemos 5 intros, presionamos "y" e intro)

  2. Installing vsftp from the Debian 10 repositories

    sudo apt -y install vsftpd

  3. We configure the FTP service by modifying its configuration file

    nano /etc/vsftpd.conf

  4. We modify:

      ...
      write_enable=YES
      ...
      ssl_enable=YES
      ...
    
  5. We close the file with "Ctrl + x" and save it with "y" + enter.

  6. We restart the service for the modifications to take effect

    systemctl reload vsftpd

  7. Download the language pack from the official website [osTicket] (https://osticket.com/download/) by clicking on "Language pack", selecting the language (Spanish - Español) and clicking in "Download".

  8. We FTP the language pack to the server with an FTP client such as Filezilla

  9. Unzip the package in the correct directory

    unzip /home/testftp/osTicket-lang.zip -d /var/www/osticket/include/i18n/

  10. We enter the backend with the URL http://dominio/osticket/scp

  11. We use the credentials of the administrator user to enter

  12. We click on the tab "settings" enter image description here

  13. We look for the option "Primary Language" and select "Spanish (Spain)"

  14. We go down to the bottom of the page and click on "Save Changes" enter image description here

Done! If we change the tab or leave, it already modifies the language.

Your privacy is important for us
We use our own cookies for the proper functioning of the site. In addition, third-party cookies are used for analytical purposes only. This information is not associated with any person so that personal identifying data is not stored, but is only information that is collected to identify the session, with the aim of facilitating the analysis of the website. You can change your preferences at any time by entering this website again. For more information about our cookie policy you can visit our Cookies. You can press the "Accept and close" button to give us your consent or you can access more detailed information and manage cookies.
Your privacy is important for us
We use our own cookies for the proper functioning of the site. In addition, third-party cookies are used for analytical purposes only. This information is not associated with any person so that personal identifying data is not stored, but is only information that is collected to identify the session, with the aim of facilitating the analysis of the website. You can change your preferences at any time by entering this website again. For more information about our cookie policy you can visit our Cookies. You can press the "Accept and close" button to give us your consent or you can access more detailed information and manage cookies.