Установка Zammad · 5 min read · Oct 26, 2025

Как установить систему поддержки клиентов Zammad на Rocky Linux 9

Zammad — это решение для поддержки клиентов/системы тикетов с открытым исходным кодом, основанное на Ruby и PostgreSQL. Оно помогает организациям управлять коммуникациями через различные каналы электронной почты, чата и социальных сетей.

В этом руководстве вы узнаете, как установить систему тикетов Zammad на сервер Rocky Linux. Вы будете запускать Zammad с PostgreSQL, Nginx и Elasticsearch.

Предварительные требования

Перед тем как начать, убедитесь, что у вас есть следующее:

  • Сервер Rocky Linux 9.
  • Непривилегированный пользователь с правами администратора.
  • Доменное имя, указывающее на IP-адрес сервера.
  • SELinux в состоянии permissive.

Установка зависимостей

В этом разделе вы установите зависимости для Zammad, включая репозиторий EPEL, базу данных PostgreSQL, веб-сервер Nginx, Redis и Node.js.

Прежде всего, добавьте репозиторий EPEL в вашу систему Rocky Linux с помощью следующей команды.

sudo dnf install epel-release -y

Теперь установите локаль по умолчанию на en_US.UTF-8 с помощью команды ниже.

sudo localectl set-locale LC_CTYPE=en_US.UTF-8

Теперь выполните команду ниже, чтобы включить репозиторий Node.js для версии 18.

sudo dnf module enable nodejs:18 -y

Затем выполните команду dnf ниже, чтобы установить зависимости для Zammad, включая Nginx, PostgreSQL, Redis и Node.js.

sudo dnf install imlib2 nginx postgresql-server postgresql-contrib libpq-devel redis nodejs

Введите y, чтобы подтвердить и продолжить.

установка зависимостей

После завершения установки выполните команду ниже, чтобы инициализировать сервер PostgreSQL.

sudo postgresql-setup initdb

Запустите и включите службы для Nginx, PostgreSQL и Redis с помощью команды ниже.

sudo systemctl start nginx postgresql redis  
sudo systemctl enable nginx postgresql redis

Наконец, проверьте версию Node.js, используя команду ниже. Убедитесь, что у вас установлена версия Node.js 18.0+.

node --version

запуск служб и проверка nodejs

Установка Elasticsearch

После установки зависимостей вам нужно будет установить Elasticsearch. В этом разделе вы установите Elasticsearch 7.x для Zammad.

Теперь выполните команду ниже, чтобы добавить GPG-ключ для репозитория Elasticsearch.

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

Добавьте репозиторий Elasticsearch для сервера Rocky Linux с помощью следующей команды.

echo "[elasticsearch-7.x]  
name=Elasticsearch repository for 7.x packages  
baseurl=https://artifacts.elastic.co/packages/7.x/yum  
gpgcheck=1  
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch  
enabled=1  
autorefresh=1  
type=rpm-md"| tee /etc/yum.repos.d/elasticsearch-7.x.repo

Затем установите Elasticsearch в вашу систему с помощью следующей команды. Введите y, чтобы подтвердить установку и принять GPG-ключ, когда будет предложено.

sudo dnf install elasticsearch

установка elasticsearch

После завершения установки установите плагин ingest-attachment для вашей установки Elasticsearch, используя команду ниже.

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Введите y, чтобы подтвердить установку.

установка плагина

Теперь перезагрузите менеджер systemd и запустите службу elasticsearch, используя команду ниже.

sudo systemctl daemon-reload  
sudo systemctl start elasticsearch

После запуска проверьте Elasticsearch с помощью команды curl ниже. Если ваша установка успешна, вы получите подробную информацию о вашей версии Elasticsearch.

curl -X GET 'http://localhost:9200'

проверка elasticsearch

Увеличение максимальных подключений в PostgreSQL

Для PostgreSQL вам нужно увеличить значение по умолчанию max_connections в файле postgresql.conf. Это необходимо для Zammad.

Поэтому войдите как пользователь postgres с помощью команды ниже.

su - postgres

Откройте конфигурацию PostgreSQL data/postgresql.conf с помощью редактора nano.

nano data/postgresql.conf

Измените значение по умолчанию max_connections на 2000, как показано ниже:

max_connections = 2000

Сохраните файл и выйдите.

Теперь выполните команду systemctl ниже, чтобы перезапустить службу PostgreSQL и применить ваши изменения.

sudo systemctl restart postgresql

Настройка Firewalld

По умолчанию firewalld включен на Rocky Linux. Теперь вам нужно открыть службы HTTP и HTTPS и разрешить трафик для Zammad.

Добавьте обе службы HTTP и HTTPS в firewalld, используя следующую команду.

sudo firewall-cmd --zone=public --add-service=http --permanent  
sudo firewall-cmd --zone=public --add-service=https --permanent

Теперь перезагрузите firewalld, чтобы применить новые правила для HTTP и HTTPS.

sudo firewall-cmd --reload

Проверьте список правил в firewalld, используя команду ниже. Вы увидите, что обе службы HTTP и HTTPS доступны в firewalld.

sudo firewall-cmd --list-all

настройка firewalld

Установка системы поддержки клиентов Zammad

Теперь, когда у вас установлены и настроены зависимости, вы можете начать установку Zammad, которая может быть выполнена через менеджер пакетов DNF.

Добавьте GPG-ключ для репозитория Zammad, используя команду ниже.

sudo rpm --import https://dl.packager.io/srv/zammad/zammad/key

Теперь добавьте репозиторий Zammad на ваш сервер Rocky Linux с помощью следующей команды.

sudo wget -O /etc/yum.repos.d/zammad.repo \  
https://dl.packager.io/srv/zammad/zammad/develop/installer/el/9.repo

Затем установите zammad с помощью команды dnf ниже. Когда будет предложено, введите y, чтобы подтвердить GPG-ключ и установку Zammad.

sudo dnf install zammad

установка zammad

После завершения установки выполните следующую команду, чтобы проверить службы для Zammad, включая zammad, zammad-web, zammad-worker и zammad-websocket.

sudo systemctl status zammad  
sudo systemctl status zammad-web  
sudo systemctl status zammad-worker  
sudo systemctl status zammad-websocket

Убедитесь, что каждая служба для Zammad работает.

zammad работает

Наконец, выполните следующую команду, чтобы настроить интеграцию между Zammad и Elasticsearch.

zammad run rails r "Setting.set('es_url', 'http://localhost:9200')"  
zammad run rake zammad:searchindex:rebuild

После выполнения команды будет создан индекс elasticsearch для Zammad.

Настройка Nginx как обратного прокси

Теперь, когда вы установили Zammad, вы настроите Nginx как обратный прокси, и по умолчанию Zammad предоставляет пример конфигурации, который доступен в каталоге /opt/zammad/contrib.

Скопируйте конфигурацию Nginx для Zammad в /etc/nginx/conf.d/zammad.conf и откройте ее с помощью команды редактора nano.

cp /opt/zammad/contrib/nginx/zammad.conf /etc/nginx/conf.d/zammad.conf  
sudo nano /etc/nginx/conf.d/zammad.conf

В параметре server_name измените его на ваше доменное имя.

server_name zammad.howtoforge.local;

Сохраните и выйдите из файла.

Теперь проверьте вашу конфигурацию Nginx, чтобы убедиться, что у вас правильный синтаксис. Если все успешно, вы должны получить вывод ‘syntax is ok‘.

sudo nginx -t

Наконец, выполните команду ниже, чтобы перезапустить службу Nginx и применить новую конфигурацию блока сервера для Zammad.

sudo systemctl restart nginx

настройка nginx

С этим ваша установка Zammad должна быть готова и доступна.

Защита Zammad с помощью HTTPS

Теперь, когда Nginx настроен, давайте защитим Zammad с помощью SSL/TLS сертификатов. Вы установите Certbot и сгенерируете SSL сертификаты, используя certbot от Letsencrypt.

Установите Certbot и плагин Nginx, используя команду dnf ниже. Введите y, чтобы подтвердить установку.

sudo dnf install certbot python3-certbot-nginx

После завершения установки выполните команду certbot ниже, чтобы сгенерировать SSL/TLS сертификаты и защитить вашу установку Zammad. Убедитесь, что вы изменили информацию о адресе электронной почты и доменном имени на вашу информацию.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d zammad.howtoforge.local

После завершения ваши SSL/TLS сертификаты будут доступны в каталоге /etc/letsencrypt/live/domain.com, и ваша Zammad также будет защищена с помощью HTTPS автоматически.

Настройка установки Zammad

Запустите ваш веб-браузер и посетите https://zammad.hwomdian.io/. Если ваша установка успешна, вам будет предложено следующее:

Нажмите Настроить новую систему, чтобы начать конфигурацию Zammad.

настройка zammad

Введите данные вашего администратора и пароль для Zammad, затем нажмите Создать.

настройка пользователя

Введите название вашей организации, загрузите ваш логотип и нажмите Далее, чтобы продолжить.

настройка организации

Для настроек электронной почты нажмите Пропустить. Вы можете настроить это после завершения установки.

пропустить электронную почту

Теперь вы увидите панель управления Zammad, как показано ниже.

панель управления

Заключение

Поздравляем! Вы завершили установку системы тикетов Zammad на сервер Rocky Linux 9. У вас работает Zammad с базой данных PostgreSQL, Nginx в качестве обратного прокси, Elasticsearch, а также защищенный с помощью HTTPS через Certbot.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.