How to Install FreeScout with Nginx on Ubuntu Linux
FreeScout is an open-source help desk and shared mailbox platform. It is a great alternative to paid services like Zendesk. It runs on your own server using PHP and a database.
Why: You want total control over your customer support data and want to avoid monthly subscription fees.
What happens when done: You will have a professional, self-hosted help desk platform ready to manage your emails and customer tickets.
Install nginx-on-ubuntu-linux/" class="sal-link" rel="noopener" target="_blank" data-sal-id="17885">Nginx on Ubuntu Linux
Nginx acts as the engine that serves your help desk pages to the web.
Run these commands to install it:
sudo apt update sudo apt install nginx
Manage the service with these commands:
sudo systemctl start nginx sudo systemctl enable nginx
Open your web browser and go to your server’s IP address. You should see the “Welcome to nginx!” page. 
Additional help on installing Nginx: How to install Nginx on Ubuntu
Install MariaDB on Ubuntu Linux
MariaDB acts as the filing cabinet for your help desk data.
Install it with these commands:
sudo apt update sudo apt install mariadb-server
Ensure it starts automatically:
sudo systemctl enable mariadb sudo systemctl start mariadb
Test the connection:
sudo mariadb
You should see a welcome message showing the version. Additional help on installing MariaDB: How to install MariaDB on Ubuntu Linux
Create FreeScout database
You need a secure space for your data. First, secure your database installation:
sudo mysql_secure_installation
Follow the prompts to remove anonymous users and lock down remote access.
Now, log back into MariaDB to create your database:
sudo mariadb
Run these commands inside the MariaDB console:
CREATE DATABASE freescoutdb CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER freescoutdbuser@localhost IDENTIFIED BY 'your_secure_password'; GRANT ALL ON freescoutdb.* TO freescoutdbuser@localhost WITH GRANT OPTION; FLUSH PRIVILEGES; exit
Install PHP and Required Extensions
FreeScout needs PHP to process logic. We will use PHP 8.3, which is standard for Ubuntu 24.04.
sudo add-apt-repository ppa:ondrej/php sudo apt update sudo apt install php8.3-fpm php8.3-mysql php8.3-curl php8.3-gd php8.3-imap php8.3-mbstring php8.3-xml php8.3-zip php8.3-intl
Download and Configure FreeScout
Create the directory and download the files:
sudo mkdir -p /var/www/freescout cd /var/www/freescout sudo git clone https://github.com/freescout-helpdesk/freescout . sudo chown -R www-data:www-data /var/www/freescout
Nginx Server Block and SSL
Create a file for your site configuration:
sudo nano /etc/nginx/sites-available/freescout
Paste your configuration pointing to the /var/www/freescout/public directory and ensure fastcgi_pass points to unix:/run/php/php8.3-fpm.sock.
Enable the site:
sudo ln -s /etc/nginx/sites-available/freescout /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Secure with Certbot:
sudo apt install certbot python3-certbot-nginx sudo certbot --nginx
Follow the prompts to secure your domain with a free SSL certificate.
Installation Wizard
Open your browser and visit your domain. 
Follow the on-screen steps to:
- Check requirements
- Enter database details
- Create your admin account
Once finished, set up the background tasks by running sudo crontab -u www-data -e and adding the line provided by the FreeScout installer. You are now ready to log in and start your dashboard. 
Conclusion: By self-hosting, you keep your data private and save money. You now have a fully functional help desk ready for use.
Reference: FreeScout
Was this guide helpful?
[…] How to install Nginx on Ubuntu […]