Skip to content
Follow
CMS

How to Install vTiger CRM with Nginx on Ubuntu 24.04

Richard
Written by
Richard
Jun 6, 2024 Updated Oct 13, 2026 12 min read
vTiger CRM featured image
vTiger CRM featured image

Installing vTiger CRM with Nginx on Ubuntu 24.04 gives you a self-hosted business tool to track sales leads, run marketing campaigns, and handle customer support. vTiger CRM is an open-source customer relationship management platform, and Nginx acts as the web server to process visitor traffic quickly on your Ubuntu 24.04 server.

Advertisement

This setup pairs a stable Linux base with a fast web server to keep all your customer data in one free, reliable place. The stack has four parts: Nginx serves the pages, PHP-FPM runs the vTiger code, MariaDB stores the data, and Let’s Encrypt secures the connection. Follow these steps in order to install and configure all of them on your server.

You need an Ubuntu 24.04 server, a user account with sudo rights, and an internet connection. A domain name pointing at the server is optional for testing, but you need one for the SSL step near the end.

⚡ Quick Answer

Install vTiger CRM with Nginx on Ubuntu 24.04 by first installing the stack from the terminal: run sudo apt update and sudo apt install nginx, then sudo apt install mariadb-server for the database. Nginx serves the pages, PHP-FPM runs vTiger, MariaDB stores your data, and Let’s Encrypt adds SSL. You need a sudo user and, for SSL, a domain pointing at the server.

Advertisement

Install Nginx HTTP server on Ubuntu

You can install Nginx on Ubuntu 24.04 to serve web pages for your CRM by using the built-in package manager in your terminal. Open your terminal and run the commands sudo apt update and sudo apt install nginx to download and set up the web server on your system.

The first command refreshes the package list so Ubuntu pulls the current version of Nginx. The second installs the web server itself.

To do that, open the Ubuntu terminal and run the commands below to install the Nginx web server.

Advertisement
  1. Open the terminal on your Ubuntu server, or connect to it over SSH.
  2. Run the commands in the block below.
  3. Type Y and press Enter if apt asks you to confirm the download.

When the commands finish, Nginx is installed. On Ubuntu it usually starts on its own right after installation.

🐧Bash / Shell
sudo apt update
sudo apt install nginx

Once Nginx is installed, the commands below can start, stop, and enable the Nginx web server to start automatically when your server boots up.

You only need the enable command once. It makes sure Nginx comes back after a reboot, so your CRM does not go offline when the server restarts. The stop and start commands are there for when you need to take the web server down briefly, for example during maintenance.

🐧Bash / Shell
sudo systemctl stop nginx
sudo systemctl start nginx
sudo systemctl enable nginx

You can test the Nginx web server by opening your web browser and browsing to the server's localhost or IP address.

Advertisement
  1. Open a web browser on the server itself, or on any computer that can reach it.
  2. Type the address in the address bar. Use the address shown below if you are on the server, or the server's IP address if you are on another machine.
  3. Press Enter.

http://localhost

Default Nginx welcome page displayed after successful installation on Ubuntu 24.04
Default Nginx welcome page displayed after successful installation on Ubuntu 24.04

When you see the Welcome to nginx!, it means the Nginx HTTP server is successfully installed.

📝Good to KnowIf the page does not load from another computer, check that a firewall on the server or your network is not blocking port 80.

If something else, such as Apache, already uses port 80, Nginx cannot start until you stop that service.

Additional help on installing Nginx on Ubuntu is in the link below.

Advertisement

How to install Nginx on Ubuntu

Install the MariaDB database server on Ubuntu

You can install MariaDB on Ubuntu 24.04 to store and manage all your CRM data securely by using the terminal package manager. Open your terminal and run the command sudo apt install mariadb-server to download and set up the database software on your machine.

📝Good to KnowvTiger keeps all your contacts, leads, and settings in a database, so this step has to be done before the installer runs.

To install and use the MariaDB database server, use the instructions below.

Advertisement

Open the Ubuntu terminal and run the commands below to install the MariaDB database server.

Confirm the download if apt asks. The install pulls in the server and its client tools.

🐧Bash / Shell
sudo apt update
sudo apt install mariadb-server

Once the MariaDB database server is installed, use the commands below to stop, start, and enable the MariaDB server to start automatically when the server boots.

As with Nginx, the enable command is the one that matters long term. Without it, the database stays down after a reboot and vTiger shows errors until you start it by hand.

Advertisement
🐧Bash / Shell
sudo systemctl stop mariadb
sudo systemctl start mariadb
sudo systemctl enable mariadb

Run the following commands to validate and test if the MariaDB database server is installed successfully.

These commands connect to the database and show you its version information. If the connection fails, the server is not running, so go back and check the start and enable commands.

🐧Bash / Shell
sudo mariadb

Once you run the commands above, it will log you onto the MariaDB console and display a message similar to the one below.

📝Good to KnowOn Ubuntu, the MariaDB root account normally signs in through your system account when you use sudo, so you are not asked for a database password at this point.
Advertisement
💻Code
Welcome to the MariaDB monitor.  Commands end with ; or g.
Your MariaDB connection id is 32
Server version: 10.11.2-MariaDB-1 Ubuntu 23.04

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

MariaDB [(none)]> 

The message tells you that the server is installed successfully.

Leave the console by typing the exit command shown in your MariaDB prompt, or just keep it open if you are moving straight to the next section.

Additional help on installing MariaDB.

Create a vTiger database

You can create a new vTiger database and a dedicated user in MariaDB by logging into the database command line tool and running SQL queries. Access the database prompt using sudo mysql and run CREATE DATABASE vtigerdb; along with the required user permission commands.

A dedicated database and user keep vTiger separate from anything else on the server. If the vTiger account is ever compromised, it cannot touch other databases.

As part of the setup, we will create a vtigerdb database and a user account called vtigerdbuser.

Finally, we'll grant the vtigerdbuser full access to the vtigerdb database.

All the database steps above can be done using the commands below:

The sequence is: create the database, create the user with a password, grant that user full rights on the database, then reload the privileges so the change takes effect.

But first, log on to the MariaDB database server:

Run the login command in the block below. You should land at the MariaDB prompt, where SQL statements end with a semicolon.

🐧Bash / Shell
sudo mariadb

Then run the commands below to complete the steps:

Paste or type them at the MariaDB prompt. Each statement should return a short confirmation, such as Query OK. An error here usually means a typo or a missing semicolon, so fix it before moving on.

💻Code
CREATE DATABASE vtigerdb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER vtigerdbuser@localhost IDENTIFIED BY 'type_your_password_here';
GRANT ALL ON vtigerdb.* TO vtigerdbuser@localhost WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit

Ensure to replace 'type_your_password_here 'with your password.

Pick a strong password and keep it somewhere safe. You will need it again, along with the database name vtigerdb and the user vtigerdbuser, when you run the vTiger web installer.

Install PHP-FPM on Ubuntu Linux

You can install PHP-FPM and all required PHP modules on Ubuntu 24.04 to process application code for your CRM by running a single apt command. Open your terminal and run sudo apt install php-fpm php-mysql php-curl php-cli php-zip php-xml php-gd to install everything at once.

Nginx does not run PHP itself. It hands PHP requests to PHP-FPM, which is why this package is needed. The extra modules cover database access, web requests, archives, XML, and image handling, which vTiger relies on.

Run the commands below to install PHP-FPM.

Ubuntu 24.04 installs PHP 8.3 by default. vTiger's installer checks the PHP version and a few PHP settings. If it reports a warning, check the vTiger release notes for the PHP versions it supports, and change any setting the installer names in your PHP configuration. Then restart PHP-FPM so the change takes effect.

🐧Bash / Shell
sudo apt install php-fpm php-intl php-mysql php-curl php-cli php-zip php-xml php-gd php-common php-mbstring php-xmlrpc php-json php-sqlite3 php-soap php-ldap php-zip

Additional help on installing PHP

How to install PHP on Ubuntu Linux

Download vTiger files

You can download the latest vTiger CRM installation files directly from the official website and place them in your Nginx web root directory. Use the wget command to grab the archive file from the official download page and extract it to the correct folder on your server.

The download is a compressed archive, so you unpack it first and then copy the contents into a folder inside the Nginx web root.

To always install the latest version, check the vTiger's download page. If a new version is available, replace the version number in the link below.

First, navigate to the /tmp/ directory and download vTiger files. After unzipping the file, move the content into the vTiger folder in the Nginx root directory.

  1. Change to the /tmp directory.
  2. Download the vTiger archive with wget, using the link with the current version number.
  3. Unzip the archive.
  4. Move the extracted content into the vTiger folder in the Nginx root directory.

The commands for each of these actions are in the block below. After the move, the vTiger folder should contain the CRM files, including the installer's index.php file.

The final step is to change the permissions. This will allow the Nginx web server to interact safely with the files, ensuring a secure environment for your vTiger installation.

Nginx and PHP-FPM run as a web server account, not as your user. If they cannot read and write the vTiger files, the installer fails or cannot save its settings. Giving ownership to the web server account fixes that without opening the files to everyone.

⬛Command Prompt
cd /tmp
wget https://phoenixnap.dl.sourceforge.net/project/vtigercrm/vtiger%20CRM%208.2.0/Core%20Product/vtigercrm8.2.0.tar.gz
tar -xvf vtigercrm8.2.0.tar.gz
sudo mv vtigercrm /var/www/vtigercrm
sudo chown -R www-data:www-data /var/www/vtigercrm

Once you have completed all the above steps, continue configuring the Nginx web server below to serve the vTiger content.

Right now Nginx only knows about its default welcome page. A server block tells it where the vTiger files are and how to pass PHP requests to PHP-FPM.

Run the commands below to create an Nginx server block file for vTiger.

The command opens a new, empty file in a text editor. Keep it open for the next part.

🐧Bash / Shell
sudo nano /etc/nginx/sites-available/vtigercrm.conf

Then, copy and paste the content block below into the Nginx server block.

Before you save, check the server name in the block. Replace it with your own domain name or the server's IP address. This is also the address you will type in the browser later. Make sure the PHP-FPM socket path in the block matches the PHP version installed on your server.

🐘PHP
server {
listen 80;
listen [::]:80;

server_name vtigercrm.example.com www.vtigercrm.example.com;
root /var/www/vtigercrm;
index index.php;

access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;

client_max_body_size 100M;

autoindex off;

location / {
index index.html index.php;
try_files $uri $uri/ /index.php?$args;
}

location ~ .php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
include fastcgi_params;
fastcgi_intercept_errors on;
}
}

Save the file.

Then close the editor and return to the terminal prompt.

This action enables the vTiger CRM virtual host configuration and restarts the Nginx web server, ensuring that Nginx recognizes and serves your vTiger CRM installation. After completing these commands, you can proceed to access your vTiger CRM setup in a web browser.

If Nginx fails to restart, the cause is almost always a typo in the server block, such as a missing semicolon or a brace that does not close. Open the file again and compare it with the block above. To undo the change, remove the enabled link for the vTiger site and restart Nginx.

🐧Bash / Shell
sudo ln -s /etc/nginx/sites-available/vtigercrm.conf /etc/nginx/sites-enabled/
sudo systemctl restart nginx.service

Setup Let's Encrypt SSL/TLS for vTiger

You can set up a free Let's Encrypt SSL certificate for Nginx on Ubuntu to secure your CRM login and data traffic. Install the Certbot tool using your terminal and run the command sudo certbot --nginx to automatically generate and configure your security certificate.

A CRM holds customer data and logins, so you should not run it over plain HTTP. Let's Encrypt only issues certificates for domain names, not bare IP addresses. Before you run Certbot, make sure your domain's DNS record points to this server and that ports 80 and 443 are reachable from the internet.

Please read the post below for additional resources on installing and creating Let's Encrypt SSL certificates for Nginx.

How to set up Let's Encrypt SSL certificate for Nginx on Ubuntu Linux

Once you have restarted the Nginx web server, open your browser and browse to the server hostname or IP address defined in the Nginx server block.

If you set up SSL, use the https:// address. If you see the Nginx welcome page instead of vTiger, the new server block is not active or the server name does not match what you typed.

💻Code
http://vtiger.example.com

A vTiger installation wizard page should appear. Click Install to begin.

  1. Click Install on the welcome page.
  2. Read and accept the license agreement if the wizard asks, then continue.

The wizard then checks your server. If it lists a missing PHP module or a setting that is too low, fix it, restart PHP-FPM, and reload the page.

vtiger crm installation wizard
vtiger crm installation wizard

Next, enter the database name, database account, and password. Then, create an administrator account and continue.

  1. Enter vtigerdb as the database name.
  2. Enter vtigerdbuser as the database user, and the password you set earlier.
  3. Create the administrator account with a username, a strong password, and an email address.
  4. Continue to the next page.

If the wizard cannot connect to the database, recheck the name, user, and password for typos. Then confirm that MariaDB is running.

vtiger crm installation database connection
vtiger crm installation database connection

Confirm the setup info and continue.

Check the values on this summary page. Going back now is easier than fixing a wrong entry after the installation.

vtiger crm installation confirm
vtiger crm installation confirm

On the next screen, create a user account and complete the installation. Then, choose what vTiger CRM features you want to install and continue.

The feature choices are the industry modules or extras you want to start with. You can leave the defaults if you are not sure. The installation can take a few minutes, so do not close the browser tab while it runs.

vTiger CRM installation features screen during setup on Ubuntu 24.04 server
vTiger CRM installation features screen during setup on Ubuntu 24.04 server

Your vTiger site should be set up and ready to use.

Sign in with the administrator account you created. From here you can add users, import contacts, and start building your sales and support workflow.

vtiger crm installation complete
vtiger crm installation complete

That should do it!

Conclusion

You've now successfully installed vTiger CRM on Ubuntu 24.04 using Nginx! We covered setting up Nginx, MariaDB, and PHP-FPM, creating the vTiger database, downloading the files, and securing your site with Let's Encrypt. Following these steps ensures your vTiger CRM is up and running securely.

Keep Ubuntu and your packages up to date, and back up the vtigerdb database and the vTiger folder regularly so you can recover your customer data if something goes wrong.

Have a question about this guide?

Answered by AI from this guide. Good questions may be added to this page — please don't include personal details.

Did this guide fix your problem?

Richard

About the Author

Richard

Tech Writer, IT Professional

Richard is a writer at Geek Rewind who turns complex IT tasks into clear, step-by-step guides. He draws on years of hands-on experience in system administration and enterprise IT operations, focusing on Windows, Linux and WordPress: the problems people actually run into, and the fixes that work. His server and WordPress guides come from systems he runs himself. Richard builds and maintains the platform behind Geek Rewind, from its Ubuntu servers and Nginx configuration to its custom WordPress plugins. Many new tutorials start with readers' questions, and he's always glad to answer them in the comments.

Advertisement

No comments yet — be the first to share your thoughts!

Leave a Comment

Your email address will not be published. Required fields are marked *