Как установить osTicket с Nginx на Ubuntu 18.04 LTS
osTicket — это система продажи билетов с открытым исходным кодом на платформе Linux, написанная на PHP. Он поддерживает различные типы баз данных, такие как MySQL, PostgreSQL, и может интегрироваться с каталогом LDAP/Active для центральной аутентификации.
Это простое и легкое веб-приложение. OsTicket позволяет вам управлять, организовывать и архивировать ваш запрос на поддержку. Он легко направляет запросы, созданные по электронной почте, веб-формам и телефонным звонкам, в простую, удобную в использовании многопользовательскую веб-платформу поддержки клиентов.
В этом руководстве я покажу вам, как установить osTicket на Ubuntu 18.04, используя Nginx в качестве веб-сервера, MySQL/MariaDB в качестве сервера базы данных и PHP.
Предпосылки
- Убунту 18.04
- Пользователь sudo с привилегиями root.
Шаг 1: Начало работы
Сначала войдите на свой сервер с привилегиями sudo и обновите систему до последней стабильной версии, используя следующую команду:
sudo apt update && sudo apt upgrade -y
Шаг 2: Установите сервер LEMP
OsTicket требует, чтобы на вашем сервере были установлены веб-сервер, PHP и сервер базы данных.
Установите веб-сервер Nginx
Вы можете установить веб-сервер Nginx с помощью следующей команды:
sudo apt install nginx -y
Теперь давайте проверим службу Nginx. Чтобы запустить службу вручную, выполните следующие команды:
sudo systemctl status nginx
sudo systemctl start nginx
Теперь включите службу nginx для запуска во время загрузки, выполнив следующую команду:
sudo systemctl enable nginx
Установите PHP и PHP-FPM
Затем вам необходимо установить PHP, PHP-FPM и некоторые дополнительные модули PHP, необходимые для правильной работы OsTicket:
sudo apt install php php-mysql php-cgi php-fpm php-cli php-curl php-gd php-imap php-mbstring php-xml-util php-intl php-apcu php-common php-gettext php-bcmath
Команда выше установит php-7.2
Теперь отредактируйте файл php.ini, выполнив следующую команду в терминале.
sudo vim /etc/php/7.2/fpm/php.ini
Раскомментируйте переменную cgi.fix_pathinfo и измените ее значение на 0.
cgi.fix_pathinfo=0
Теперь сохраните и закройте файл.
Затем перезапустите службу php7.2-fpm и включите ее при запуске с помощью следующей команды:
sudo systemctl restart php7.2-fpm
sudo systemctl enable php7.2-fpm
Установите и настройте сервер базы данных MySQL для OsTicket
В окне терминала введите следующую команду, чтобы установить сервер базы данных MySQL.
sudo apt install mysql-server
Теперь запустите службу MySQL и включите ее запуск во время загрузки, затем проверьте состояние службы MySQL с помощью следующей команды:
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl status mysql
Затем защитите установку MySQL с помощью следующей команды:
sudo mysql_secure_installation
Ответьте на все вопросы, как показано ниже:
Set root password? [Y/n] Y
New password:
Re-enter new password:
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y
Затем войдите в консоль MySQL, как показано ниже:
sudo mysql -u корень -p
Введите здесь пароль root.
Теперь вам нужно создать базу данных для osTicket.
run following command
mysql> create database osticket_db;
mysql> grant all privileges on osticket_db.* to osticket_user identified by '';
mysql> flush privileges;
Создана база данных для osTicket.
Шаг 3: Загрузите и настройте osTicket
Создайте новый каталог для osTicket, а затем перейдите в этот каталог.
sudo mkdir -p /var/www/osticket/
cd /var/www/osticket/
Затем загрузите последнюю версию osTicket с помощью wget и распакуйте ее с помощью следующей команды:
sudo apt-get install wget unzip
sudo wget https://github.com/osTicket/osTicket/releases/download/v1.14.1/osTicket-v1.14.1.zip
sudo unzip osTicket-v1.14.1.zip
После распаковки вы получите скрипты и каталог загрузки.
Затем создайте файл конфигурации osTicket из файла ost-sampleconfig.php, используя следующую команду:
sudo su -
cd upload/
cp ost-sampleconfig.php ost-config.php
Затем вам нужно изменить владельца веб-каталога osTicket на пользователя и группу www-data.
sudo chown -R www-data:www-data /var/www/osticket/
Шаг 4 — Создайте виртуальный хост OsTicket
Теперь создайте новую конфигурацию виртуального хоста для OsTicket, выполнив следующую команду:
sudo vim /etc/nginx/sites-available/osticket.conf
Вставьте конфигурацию, как показано ниже:
server {
listen 80;
server_name 13.52.217.10; ## change server_name as per your domain name.
root /var/www/osticket/upload;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
index index.php index.html index.htm;
# Enable gzip
gzip on;
gzip_min_length 1000;
gzip_types text/plain application/x-javascript text/xml text/css application/xml;
set $path_info "";
location ~ /include {
deny all;
return 403;
}
if ($request_uri ~ "^/api(/[^\?]+)") {
set $path_info $1;
}
location ~ ^/api/(?:tickets|tasks).*$ {
try_files $uri $uri/ /api/http.php?$query_string;
}
if ($request_uri ~ "^/scp/.*\.php(/[^\?]+)") {
set $path_info $1;
}
location ~ ^/scp/ajax.php/.*$ {
try_files $uri $uri/ /scp/ajax.php?$query_string;
}
location / {
try_files $uri $uri/ index.php;
}
location ~ \.php$ {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}
}
Здесь вам нужно изменить server_name 13.52.217.10 в соответствии с вашим доменным именем.
Сохраните файл конфигурации Nginx и выйдите.
Теперь активируйте виртуальный хост и проверьте конфигурацию.
ln -s /etc/nginx/sites-available/osticket.conf /etc/nginx/sites-enabled/
nginx -t
Это покажет вывод, как показано ниже
Теперь перезапустите службу nginx
sudo systemctl restart nginx
Шаг 5: Установите и настройте osTicket
Теперь давайте введем ваше доменное имя, чтобы получить пользовательский интерфейс osTicket в любом веб-браузере, вы увидите страницу, как показано ниже:
Далее Нажмите Продолжить, и вы будете перенаправлены в раздел конфигурации osTicket.
Заполните всю необходимую информацию и нажмите кнопку \Установить сейчас.
В настройках базы данных введите данные в виде имени базы данных, имени пользователя и пароля, которые вы создали во время установки mysql.
Наконец, нажмите кнопку «Установить сейчас», когда установка будет завершена, появится скриншот, как показано ниже:
Затем измените разрешение ost-config.php, чтобы удалить доступ на запись, выполнив следующую команду:
cd /var/www/osticket/upload/
chmod 0644 include/ost-config.php
Для администратора osTicket введите свой IP/доменное имя в веб-браузере:
Для входа администратора/панели агента/панели администратора введите следующую конфигурацию.
- Вход администратора osTicket –
- Панель агента osTicket –
- Конфигурация панели администратора osTicket — http://имя_домена/scp/settings.php
Наконец, вы успешно установили osTicket на сервер Ubuntu 18.04.