The search for a good help desk/ticketing system can be overwhelming, especially when there is no IT budget for the software and not much time to get one up and running. A solution that I encourage you to consider is Free Helpdesk, which is easy to set up, quick to learn, and comes with these features:

  • User admin
  • Departments
  • Priority
  • Device type
  • Dashboard view
  • Search
  • Web based
  • Add notes to tickets
  • Close and delete tickets

System requirements

  • Apache
  • MySQL
  • PHP

Installing Free Helpdesk

I installed Free Helpdesk on a Ubuntu 12.04 system within five minutes — it’s that easy. Let’s walk through the steps for installation.

Step 1: Download and extract the source

Download the .zip file and move the file to the document root of your web server. In the case of Ubuntu, that would be /var/www. When the file has been relocated, do the following:

  1. Open a terminal window.
  2. Change into the /var/www/ directory.
  3. Unzip the file with the command sudo unzip (XXX is the release number).
  4. Change the name of the newly created directory with the command sudo mv freedesktop-XXX freedesktop (XXX is the release number).

Step 2: Create the database

I prefer using a tool like MySQL Workbench or phpMyAdmin for this task. By using such a tool, you ensure the permissions for the database are set up correctly. Once the is database created (let’s call that database freehelp), you have to import the included dump file into the database. Here’s how you import the data:

  1. Open a terminal window.
  2. Change into the /var/www/freehelpdesk directory.
  3. Issue the command mysql -u USER -p -h localhost freehelp < site.sql (USER is a system user with privileges to access the database).
  4. Type the MySQL user’s password when prompted.

Step 3: Configure Free Helpdesk

All that remains is to configure a single file with the database information. The file is /var/www/freehelpdesk/fhd_config_sample.php. Rename that file to fhd_config.php and then open it for editing. The lines to be edited are as follows:

/** The name of the database */
define('db_name', ' ');
/** MySQL database username */
define('db_user', ' ');
/** MySQL database password */
define('db_password', ' ');

Enter the necessary information (all entries go between the empty ‘ ‘ characters on the second line of each entry). After you make the edits to the file, save it, and you’re ready to open the system in your web browser.

Step 4: Log in and set up

Point your web browser to http://ADDRESS_OF_SERVER/freehelpdesk/ and log in with admin/test. After you log in, immediately go to the Admin section and reset the admin user password by following these steps:

  1. Click the Admin link in the Main window.
  2. Click Edit User.
  3. Click the user ID associated with the admin user (most likely it will be “1”).
  4. Type the new password in the Password field (Figure A).
  5. Click Update.

Figure A

Do not change the User Level for the admin user, or else you will not be able to administer the system again. (Click the image to enlarge.)

After you secure the admin user, you can go back to the setup window and configure the rest of Free Helpdesk. Here’s what you’ll want to do:

  1. Go to Admin | Settings | Departments and create all of the necessary departments for the system (Figure B).
  2. Go to Admin | Settings | Request Types and set up any other priorities (Urgent, Question, Non-Urgent are set up by default).
  3. Go to Admin | Settings | Device Type and set up any extra devices you want to support.

Figure B

The only setting available for Departments is Name. (Click the image to enlarge.)

To add users who will work within Free Helpdesk, follow these steps:

  1. Go to Admin | Add User.
  2. In the Add User window (Figure C), fill out all the necessary information for the user.

Figure C

The user level is missing. (Click the image to enlarge.)

In order to set up a user as a specific type (such as the ever-crucial Support Staff, you have to go to Admin | Edit User and then select the user level from the drop-down (Figure D). If you want to be able to assign tickets to a user, that person must be a member of the Support Staff level.
Figure D

By default, new users are of the User level. These users cannot have help desk tickets assigned to them. (Click the image to enlarge.)

You will also need to create standard users who can submit tickets but not modify them. Once you create those users, send out the credentials to the users, and prepare to enjoy your new user-friendly, efficient help desk system.