Установка Zammad на Debian 11
Перед тем как выполнять какие либо действия, осознайте что и зачем вы делаете, любые последствия это ваш собственный риск, если не готовы взять на себя ответственность за решение возникших проблем - остановитесь!
I. Устанавливаем Elasticsearch
- apt install apt-transport-https sudo wget curl gnupg
- echo "deb [signed-by=/etc/apt/trusted.gpg.d/elasticsearch.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main"| tee -a /etc/apt/sources.list.d/elastic-7.x.list > /dev/null
- curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --dearmor | tee /etc/apt/trusted.gpg.d/elasticsearch.gpg> /dev/null
- apt update
- apt upgrade
- apt install elasticsearch
- /usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment
- systemctl start elasticsearch
- systemctl enable elasticsearch
- sed -i '$a http.max_content_length: 400mb indices.query.bool.max_clause_count: 2000' /etc/elasticsearch/elasticsearch.yml
II. Устанавливаем Zammad
- echo "deb [signed-by=/etc/apt/trusted.gpg.d/pkgr-zammad.gpg] https://dl.packager.io/srv/deb/zammad/zammad/stable/debian 11 main"| tee /etc/apt/sources.list.d/zammad.list > /dev/null
- curl -fsSL https://dl.packager.io/srv/zammad/zammad/key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/pkgr-zammad.gpg> /dev/null
- apt update
- apt install zammad
III. Настраиваем Elasticsearch для работы с Zammad
- zammad run rails r "Setting.set('es_url', 'http://localhost:9200')"
- zammad run rake searchindex:rebuild
IV. Настраиваем Nginx для работы с Zammad
- cp /opt/zammad/contrib/nginx/zammad_ssl.conf /etc/nginx/sites-enabled/zammad.conf
- nano /etc/nginx/sites-enabled/zammad.conf
- sed -i 's/server_name example.com/server_name yourdomain.com/g' /etc/nginx/sites-enabled/zammad.conf
V. Генерируем сертификаты SSL вручную для Nginx
- mkdir /etc/nginx/ssl
- wget -O /etc/nginx/ssl/lets-encrypt-x3-cross-signed.pem "https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem"
- openssl req -newkey rsa:4096 -nodes -x509 -days 1825 -keyout /etc/nginx/ssl/example.com-privkey.pem -out /etc/nginx/ssl/example.com-fullchain.pem
- openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
- systemctl restart nginx
- systemctl status nginx
VI. Автоматическое получение сертификата Let's Encrypt certbot для Nginx
- apt install python3-certbot-nginx
- certbot --nginx -d yourdomain.com
- выполняем требования интерактивного установщика сертификатов
- systemctl restart nginx
- По желанию можно удалить example.com-fullchain.pem и example.com-privkey.pem
- Бывает что открывается заглушка nginx тогда переместить или удалить /etc/nginx/sites-enabled/default