Zammad is a modern, open-source help desk and ticketing system designed to simplify customer support operations. It allows businesses to manage support tickets, emails, live chats, phone calls, and social media interactions from a centralized dashboard. With its intuitive web interface, automation capabilities, and powerful search functionality, Zammad is an excellent choice for IT teams, hosting providers, and customer support organizations.

This guide explains how to install Zammad on an AlmaLinux 9 server using the official package repository. By the end of this tutorial, you'll have a fully functional Zammad instance ready for initial configuration.

Prerequisites

Before you begin, ensure that you have:

  • AlmaLinux 9 VPS

  • Root or sudo privileges

  • Minimum 4 GB RAM (8 GB recommended for production)

  • At least 20 GB of free disk space

  • A Fully Qualified Domain Name (FQDN) (recommended)

  • Internet connectivity

Step 1: Update the System

Update all installed packages before starting the installation.

sudo dnf update -y

After the update completes, reboot the server if a new kernel was installed.

sudo reboot

Reconnect to the server after rebooting.

Step 2: Install Required Dependencies

Install EPEL along with the required libraries.

sudo dnf install epel-release curl nano -y

These packages are required during the installation of Zammad and its dependencies.

Step 3: Verify the Server Hostname

Zammad works best when the server has a valid hostname.

Check the current hostname:

Hostnamectl

If required, set a new hostname.

sudo hostnamectl set-hostname support.example.com

Replace support.example.com with your own domain name.

Step 4: Install Java

Elasticsearch requires Java.

Install OpenJDK:

sudo dnf install java-17-openjdk java-17-openjdk-devel -y

Verify the installation.

java -version

Step 5: Install Elasticsearch

Import the Elasticsearch GPG key.

Sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Create the Elasticsearch repository.

sudo nano /etc/yum.repos.d/elasticsearch.repo

Paste the following:

[elasticsearch]

name=Elasticsearch repository

baseurl=https://artifacts.elastic.co/packages/8.x/yum

gpgcheck=1

gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch

enabled=1

autorefresh=1

type=rpm-md

Save and exit.

Install Elasticsearch.

sudo dnf install elasticsearch -y

Step 6: Configure Elasticsearch

Open the configuration file.

sudo nano /etc/elasticsearch/elasticsearch.yml

Locate or add the following settings:

cluster.name: zammad-cluster

node.name: node-1

network.host: 127.0.0.1

http.port: 9200

Save the file.

Start Elasticsearch.

sudo systemctl daemon-reload

sudo systemctl enable --now elasticsearch

Verify its status.

sudo systemctl status elasticsearch

Step 7: Add the Official Zammad Repository

Import the repository signing key.

sudo rpm --import https://go.packager.io/srv/rpm/zammad/zammad/gpg-key.asc

Download the AlmaLinux/RHEL 9 repository.

sudo curl -fsSL https://go.packager.io/srv/zammad/zammad/stable/installer/el/9.repo \ 

-o /etc/yum.repos.d/zammad.repo

Refresh package metadata.

sudo dnf clean all

sudo dnf makecache

The official Zammad packages are distributed through the Packager repository.

Step 8: Install Zammad

Install the application.

sudo dnf install zammad -y

The installer automatically installs additional components, including:

  • PostgreSQL

  • Nginx

  • Zammad services

  • Ruby dependencies

Step 9: Start and Enable Services

Enable the required services.

sudo systemctl enable --now zammad

sudo systemctl enable --now postgresql

sudo systemctl enable --now nginx

sudo systemctl enable --now elasticsearch

Verify that Zammad is running.

sudo systemctl status zammad

Step 10: Configure the Firewall

Allow HTTP and HTTPS traffic.

sudo firewall-cmd --permanent --add-service=http

sudo firewall-cmd --permanent --add-service=https

sudo firewall-cmd --reload

Verify the firewall configuration.

sudo firewall-cmd --list-all

Step 12: Access the Zammad Web Interface

Open a web browser and visit:

http://your-server-ip

or

http://your-domain.com

The Zammad setup wizard appears.

Complete the initial configuration by:

  • Creating the administrator account

  • Configuring your organization details

  • Setting up inbound and outbound email

  • Adjusting system preferences

Step 13: Secure Zammad with SSL (Recommended)

Install Certbot.

sudo dnf install certbot python3-certbot-nginx -y

Obtain an SSL certificate.

sudo certbot --nginx

Follow the prompts to install the SSL certificate automatically.

Verify the Installation

Open your browser and navigate to:

https://your-domain.com

You should see the Zammad login page. Log in using the administrator credentials created during the initial setup.

Conclusion

You have successfully installed Zammad on AlmaLinux OS. Your server now includes Zammad, PostgreSQL, Elasticsearch, and Nginx, providing a complete self-hosted help desk platform. For a production deployment, consider enabling HTTPS, configuring automated backups, integrating your email accounts, and keeping the system updated to ensure optimal performance and security.

This version is original, follows the current official installation method (using the Packager repository for EL9), and is suitable for publishing as a technical knowledge base article.

Помог ли вам данный ответ? 0 Пользователи нашли это полезным (0 голосов)