Представь, что тебе нужно развернуть надежную систему управления заявками для поддержки клиентов или IT-отдела. OTRS (Open-source Ticket Request System) — это мощное решение, которое справляется с этой задачей. Давай разберем, как выполнить установку OTRS на Ubuntu, настроить все компоненты и запустить систему в работу. Это руководство подойдет как для Ubuntu 22.04 LTS, так и для 24.04 LTS.
Предварительные требования и подготовка сервера
Перед началом установки OTRS на Ubuntu убедись, что у тебя есть:
- Сервер с Ubuntu 22.04/24.04 (минимум 2 ГБ RAM, 20 ГБ диска)
- Доступ с правами root или пользователя с sudo
- Статический IP-адрес или доменное имя, настроенное на сервер
- Базовые знания работы с терминалом Linux
adduser deploy и добавь его в группу sudo: usermod -aG sudo deploy.
Обновление системы и установка базовых пакетов
Первым делом обновим списки пакетов и установим необходимые зависимости для корректной работы OTRS на Ubuntu.
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget gnupg software-properties-common apt-transport-https ca-certificates
Установка и настройка базы данных для OTRS
OTRS поддерживает MySQL/MariaDB и PostgreSQL. Мы выберем PostgreSQL как более надежную и производительную СУБД для нашей системы управления заявками.
Установка PostgreSQL
sudo apt install -y postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
Создание базы данных и пользователя OTRS
Теперь создадим отдельную базу данных и пользователя для системы. Это важный шаг для безопасности и изоляции данных.
sudo -u postgres psql -c "CREATE USER otrs WITH PASSWORD 'StrongPassword123!';
CREATE DATABASE otrs OWNER otrs;
\c otrs
CREATE EXTENSION IF NOT EXISTS pg_trgm;
GRANT ALL PRIVILEGES ON DATABASE otrs TO otrs;"
Установка веб-сервера и PHP
OTRS требует веб-сервер и определенную версию PHP. Мы будем использовать Nginx как более производительную альтернативу Apache.
Установка PHP и необходимых модулей
sudo apt install -y php8.3-fpm php8.3-cli php8.3-common \
php8.3-curl php8.3-gd php8.3-intl php8.3-json php8.3-mbstring \
php8.3-mysql php8.3-pgsql php8.3-soap php8.3-xml php8.3-zip \
php8.3-bcmath php8.3-imap php8.3-ldap
Настройка PHP для OTRS
Отредактируем основные настройки PHP для оптимальной работы системы управления заявками:
sudo nano /etc/php/8.3/fpm/php.ini
Найди и измени следующие параметры:
memory_limit = 256M
max_execution_time = 300
upload_max_filesize = 50M
post_max_size = 55M
date.timezone = Europe/Moscow
timedatectl list-timezones.
Установка и настройка Nginx
sudo apt install -y nginx
sudo systemctl start nginx
sudo systemctl enable nginx
Установка OTRS на Ubuntu
Теперь перейдем к непосредственной установке системы управления заявками OTRS.
Скачивание и распаковка OTRS
cd /opt
sudo wget https://ftp.otrs.org/pub/otrs/otrs-latest.tar.gz
sudo tar -xzf otrs-latest.tar.gz
sudo mv otrs-* otrs
sudo rm otrs-latest.tar.gz
Создание пользователя и настройка прав
Для безопасности создадим отдельного системного пользователя для OTRS:
sudo useradd -d /opt/otrs -c 'OTRS user' otrs
sudo usermod -g www-data otrs
sudo chown -R otrs:www-data /opt/otrs
sudo chmod -R 755 /opt/otrs
Настройка конфигурации OTRS
Скопируем конфигурационный файл и отредактируем настройки подключения к базе данных:
cd /opt/otrs
sudo cp Kernel/Config.pm.dist Kernel/Config.pm
sudo nano Kernel/Config.pm
Найди и измени следующие параметры (пример для PostgreSQL):
$Self->{DatabaseHost} = 'localhost';
$Self->{Database} = 'otrs';
$Self->{DatabaseUser} = 'otrs';
$Self->{DatabasePw} = 'StrongPassword123!';
$Self->{DatabaseDSN} = "DBI:Pg:dbname=otrs;host=localhost";
Инициализация базы данных OTRS
sudo -u otrs /opt/otrs/bin/otrs.CheckModules.pl
sudo -u otrs /opt/otrs/bin/otrs.Console.pl Maint::Database::Check
sudo -u otrs /opt/otrs/bin/otrs.Console.pl Maint::Database::Create
Настройка Nginx для работы с OTRS
Создадим виртуальный хост для нашей системы управления заявками:
sudo nano /etc/nginx/sites-available/otrs
server {
listen 80;
server_name otrs.your-domain.com;
root /opt/otrs/var/httpd/htdocs;
index index.pl index.html;
location / {
try_files $uri @otrs;
}
location @otrs {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME /opt/otrs/bin/cgi-bin/index.pl;
fastcgi_param QUERY_STRING $query_string;
include fastcgi_params;
}
location ~ ^/(otrs|index.pl) {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME /opt/otrs/bin/cgi-bin/index.pl;
include fastcgi_params;
}
location ~ \.pl$ {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* \.(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires 1y;
add_header Cache-Control "public, immutable";
try_files $uri =404;
}
client_max_body_size 50M;
}
Активируем конфигурацию и перезапустим Nginx:
sudo ln -s /etc/nginx/sites-available/otrs /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Настройка Cron-заданий и системных служб
Для корректной работы OTRS необходимо настроить автоматические задачи (cron jobs):
sudo -u otrs /opt/otrs/bin/Cron.sh start
sudo cp /opt/otrs/var/cron/otrs /etc/cron.d/otrs
sudo systemctl restart cron
Запуск OTRS Daemon
Daemon OTRS отвечает за фоновые процессы, такие как отправка email и выполнение асинхронных задач:
sudo -u otrs /opt/otrs/bin/otrs.Daemon.pl start
sudo /opt/otrs/bin/otrs.Daemon.pl status
Завершение установки через веб-интерфейс
Теперь открой браузер и перейди по адресу твоего сервера (http://otrs.your-domain.com или IP-адрес). Ты увидишь мастер настройки OTRS. Выполни следующие шаги:
- Проверь системные требования (все должно быть зеленым)
- Настрой подключение к базе данных (данные уже в Config.pm)
- Создай административную учетную запись
- Настрой почтовый сервер для входящих/исходящих писем
- Заверши установку и войди в систему
Настройка SSL/TLS (HTTPS)
Для защиты данных обязательно настрой SSL-сертификат. Используем Let's Encrypt:
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d otrs.your-domain.com
Certbot автоматически обновит конфигурацию Nginx для использования HTTPS.
Оптимизация и мониторинг OTRS
Настройка кэширования
Для увеличения производительности системы управления заявками настрой кэширование:
sudo -u otrs /opt/otrs/bin/otrs.Console.pl Admin::Config::Update \
--setting-name 'Cache::Module' \
--value 'Kernel::System::Cache::Redis' \
--no-deploy
Мониторинг системы
Сравним основные параметры мониторинга для OTRS:
| Метрика | Нормальное значение | Критическое значение | Команда проверки |
|---|---|---|---|
| Загрузка CPU | < 70% | > 90% | top -bn1 |
| Использование RAM | < 80% | > 95% | free -h |
| Daemon статус | Running | Stopped | /opt/otrs/bin/otrs.Daemon.pl status |
| Дисковое пространство | < 85% | > 95% | df -h |
Часто задаваемые вопросы (FAQ)
Как обновить OTRS до новой версии?
Обновление OTRS выполняется через консоль. Сначала сделай полную резервную копию базы данных и файлов, затем скачай новую версию, распакуй в отдельную директорию, перенеси конфигурационные файлы и выполни миграцию базы данных через веб-интерфейс или консольные команды.
Почему не отправляются email из OTRS?
Проверь настройки почтового сервера в админ-панели OTRS (Admin → System Configuration → Sendmail). Убедись, что SMTP-сервер доступен, порты не заблокированы фаерволом, и правильно указаны учетные данные. Также проверь логи: /opt/otrs/var/log/otrs.log.
Как настроить резервное копирование OTRS?
Создай скрипт резервного копирования, который будет делать дамп базы данных и архивировать директорию /opt/otrs. Добавь задание в cron для ежедневного выполнения. Пример скрипта:
#!/bin/bash
BACKUP_DIR="/backup/otrs"
DATE=$(date +%Y%m%d_%H%M%S)
# Дамп базы данных
pg_dump -U otrs otrs > $BACKUP_DIR/otrs_db_$DATE.sql
# Архивирование файлов OTRS
tar -czf $BACKUP_DIR/otrs_files_$DATE.tar.gz /opt/otrs/
# Удаление старых бэкапов (старше 30 дней)
find $BACKUP_DIR -type f -mtime +30 -delete
Как увеличить производительность OTRS при высокой нагрузке?
Для оптимизации производительности системы управления заявками:
- Настройте кэширование через Redis или Memcached
- Оптимизируйте конфигурацию PostgreSQL (shared_buffers, work_mem)
- Увеличьте параметры PHP-FPM (pm.max_children, pm.start_servers)
- Включите сжатие gzip в Nginx
- Регулярно очищайте старые записи в базе данных
Как решить проблему с правами доступа к файлам?
Если возникают ошибки прав доступа, выполни команды:
sudo chown -R otrs:www-data /opt/otrs
sudo chmod -R 755 /opt/otrs
sudo find /opt/otrs -type f -exec chmod 644 {} \;
sudo find /opt/otrs -type d -exec chmod 755 {} \;
Заключение
Ты успешно установил и настроил OTRS на Ubuntu! Теперь у тебя есть полнофункциональная система управления заявками, готовая к работе. Помни о регулярном обновлении системы, мониторинге производительности и резервном копировании данных. OTRS — мощный инструмент, который при правильной настройке станет надежным помощником в организации работы службы поддержки или IT-отдела.