Глоссарий
Zammad - бесплатная система для учета заявок с приятным, удобным и живым интерфейсом. В базовом функционале возможно интегрировать разные каналы коммуникации, такие как телефон, facebook, telegram, чат и электронная почта. Большое преимущество, это интеграция с Whatsapp. Правда реализация сложная, постараемся в скором будущем сделать инструкцию. Администрировать Zammad одно удовольствие. Все легко и понятно. Крутая альтернатива беспощадной и страшной OTRS.Elasticsearch - поисковый движок, который позволяет смотреть базовые отчеты в Zammad и в целом положительное влияет на производительность системы при большом потоке заявок. Без него аналитика не работает. Установка обязательна, но можно отключить на слабом железе.
- 2-х ядерный процессор
- 4 GB оперативной памяти (+4GB если планируете использовать Elasticsearch).
- Сколько требуется памяти на жестком диске, разработчики не говорят.
В качестве демо-стенда выступает виртуальная машина со следующими характеристиками:
- 2-х ядерный процессор
- 1 GB оперативной памяти
- 20 GB на жестком диске
- Ubuntu Server 18.04 LTS
Внимание!
Установить Zammad на Ubuntu Server 20.04 можно. Однако возможны проблемы в работе Zammad, так как установочный пакет находится в разработке. Но если вы любите сложности, то далее в процессе установки измените команду:https://dl.packager.io/srv/zammad/zammad/stable/installer/ubuntu/18.04.repo
на
https://dl.packager.io/srv/zammad/zammad/develop/installer/ubuntu/20.04.repo
sudo su

Обязательны шаг перед установкой Zammad, инсталляция Elasticsearch. Выполните команду:
apt-get install apt-transport-https sudo wget

Обновим список источников.
echo "deb <https://artifacts.elastic.co/packages/7.x/apt> stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

wget -qO - <https://artifacts.elastic.co/GPG-KEY-elasticsearch> | sudo apt-key add -

Обновим пакеты и установим Elasticsearch
apt-get update
apt-get install openjdk-8-jre elasticsearch


Для нормальной работы вложений (XLS, PDF и т.д) устанавливаем дополнительный плагин.
sudo /usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Снова соглашаемся, нажимая на этот раз маленькую y без кавычек и enter.

Перезагружаем службу elasticsearch
systemctl restart elasticsearch

Включаем службу elasticsearch
systemctl enable elasticsearch

Если установлено 4gb+ оперативной памяти, изменяем конфигурацию elasticsearch для лучшей производительности.
nano /etc/elasticsearch/elasticsearch.yml
Пролистываем в самый низ документа и вставляем следующие текст:
http.max_content_length: 400mb
indices.query.bool.max_clause_count: 2000

Если сервер содержит менее 4 GB оперативной памяти, рекомендуем внести следующие изменения в конфигурацию elasticsearch
nano /etc/elasticsearch/jvm.options

-Xms512m
-Xmx512m
В нашем случае, это помогло развернуть elasticsearch. После внесения изменений, нажимаем на сочетание кнопок ctrl+o и enter.

На данном этапе работы по установке и конфигурации elasticsearch выполнены, теперь требуется перейти к установке Zammad. Для начала требуется проверить кодировку Ubuntu. В терминале выполните команду
locale
Должно быть LANG=en_US.UTF-8

Если у вас другие данные, выполняем следующие команды, для решения проблемы с кодировкой.
apt-get install apt-transport-https locales sudo wget

locale-gen en_US.UTF-8

echo "LANG=en_US.UTF-8" > /etc/default/locale

wget -qO- <https://dl.packager.io/srv/zammad/zammad/key> | sudo apt-key add -

Добавляем репозиторий Zammad в Ubuntu
sudo wget -O /etc/apt/sources.list.d/zammad.list \\
https://dl.packager.io/srv/zammad/zammad/stable/installer/ubuntu/18.04.repo

Обновим пакеты
sudo apt-get update

Запустим установку zammad
sudo apt-get install zammad

Во время установки требуется принять изменения. Введите большую "Y" без кавычек и жмите enter. Процесс установки займет не более 10 минут. После откройте в браузере http://localhost и вы увидите...

Если сервер с белым IP-адресом, измените настройки nginx. Добавьте доменное имя или публичный IP-адрес в конфигурации веб-сервера. Редактируем файл zammad.conf
nano /etc/nginx/sites-enabled/zammad.conf

Вместо localhost укажите белый IP-адрес сервера или доменное имя. Сохраните изменения (ctrl+o)

Перезагрузите веб-сервер nginx.
service nginx restart


Повышаем безопасность с помощью Let's Encrypt.
По дефолту Zammad работает через HTTP, делаем HTTPS. Получим SSL сертификаты установим Certbot на сервер. Сначала добавим репозиторийsudo add-apt-repository ppa:certbot/certbot

Установим пакет Certbot для Nginx
sudo apt install python-certbot-nginx

Cоглашаемся, нажимая на "Y" без кавычек и enter.


Выполним команду для получения SSL сертификата
sudo certbot --nginx -d zd.fixcom.kz
Потребуется ввести email адрес для обновления сертификата и уведомлений о безопасности. После принять условия сервиса. Жмите A и Enter



Certbot установит сертификаты и будет автоматически обновлять их. Проверяем результат, пробуем зайти в Zammad по HTTPS.

Осталось дело за малым, произвести базовую настройку. Заполняем необходимые поля для создания административной учетной записи.

Укажите наименование вашей организации и загрузите логотип компании для имиджа. Проверьте "системный URL". Пропишите доменное имя сервера.

Пропустите настройку уведомлений по электронной почте. Настройку каналов коммуникации мы рассмотрим подробнее в другой статье.

...пропустить

Готово, Zammad успешно установлен. Далее мы выполним детальную настройку системы, подключим каналы коммуникации и т.д. Рекомендую ознакомиться с нашей видео инструкцией для пользователей по работе в Zammad.

Лично пользовался OTRS последние несколько лет, клиент попросил "что-то похожее" внедрить. Начали поиск свежего решения для учета заявок на рынке и случайно попробовали Zammad. Это была любовь с первого взгляда. Сегодня мы успешно мигрировали с OTRS на Zammad со всей информацией, подключили Binotel и в процессе Whatsapp. Остались вопросы, пишите на почту maimyshev@fixcom.kz и в телеграмм @maimyshev