ऑसकट एक ओपन-सोर्स कस्टमर सपोर्ट टिकटिंग सिस्टम है। osTicket स्रोत कोड सार्वजनिक रूप से पर होस्ट की है Github । इस ट्यूटोरियल में, आप सीखेंगे कि CentOS 7 पर osTicket कैसे स्थापित करें और कॉन्फ़िगर करें।
आवश्यकताएँ
	- HTTP सर्वर Nginx या Apache चलाने वाला। यह मार्गदर्शिका Nginx का उपयोग करेगी।
- PHP संस्करण 5.6 से 7.2, 7.2 अनुशंसित है
- mysqli,- gd,- gettext,- imap,- json,- mbstring, और- xmlPHP के लिए विस्तार
- MySQL डेटाबेस संस्करण 5.0 या उससे अधिक या MariaDB समकक्ष
शुरू करने से पहले
CentOS संस्करण की जाँच करें।
cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)
एक्सेस और स्विच के non-rootसाथ एक नया उपयोगकर्ता खाता बनाएं sudo।
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
नोट:  अपने उपयोगकर्ता नाम के साथ बदलें johndoe।
टाइमजोन सेट करें।
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
सुनिश्चित करें कि आपका सिस्टम पुराना है।
sudo yum update
आवश्यक पैकेज स्थापित करें।
sudo yum install -y socat git wget unzip vim
SELinux और Firewall अक्षम करें।
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
PHP स्थापित करें
Webtatic YUM रेपो सेटअप करें।
sudo yum install epel-release
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
PHP, साथ ही आवश्यक PHP एक्सटेंशन स्थापित करें।
sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-curl php72w-gd php72w-mysql php72w-json php72w-xml php72w-imap php72w-intl php72w-pecl-apcu php72w-opcache
संस्करण की जाँच करें।
php -v
# PHP 7.2.21 (cli) (built: Aug  4 2019 08:42:27) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
स्थापित PHP एक्सटेंशन की जाँच करें।
php -m
# mbstring
# curl
# gd
# PDO
# mysqli
# openssl
# . . .
PHP-FPM को प्रारंभ और सक्षम करें।
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
MariaDB स्थापित करें
MariaDB डेटाबेस रेपो स्थापित करें।
sudo vim /etc/yum.repos.d/MariaDB.repo
इसे /etc/yum.repos.d/MariaDB.repoफाइल में कॉपी / पेस्ट करें ।
[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
MariaDB डेटाबेस सर्वर स्थापित करें।
sudo yum install -y MariaDB-server MariaDB-client
संस्करण की जाँच करें।
mysql --version
# mysql  Ver 15.1 Distrib 10.2.26-MariaDB, for Linux (x86_64) using readline 5.1
मारियाडीबी को शुरू और सक्षम करें।
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
mysql_secure installationMariaDB सुरक्षा में सुधार करने के लिए स्क्रिप्ट चलाएँ और MariaDB rootउपयोगकर्ता के लिए पासवर्ड सेट करें।
sudo mysql_secure_installation
रूट उपयोगकर्ता के रूप में MariaDB शेल से कनेक्ट करें।
sudo mysql -u root -p
# Enter password
OsTicket के लिए एक खाली MariaDB डेटाबेस और उपयोगकर्ता बनाएं, और क्रेडेंशियल्स याद रखें।
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit
नोट:  बदलें dbnameऔर usernameअपने सेटअप के लिए उपयुक्त नामों के साथ। passwordएक मजबूत पासवर्ड से बदलें ।
Nginx स्थापित करें
Nginx स्थापित करें।
sudo yum install -y nginx
संस्करण की जाँच करें।
nginx -v
# nginx version: nginx/1.12.2
Nginx को प्रारंभ और सक्षम करें।
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
OsTicket के साथ उपयोग के लिए Nginx कॉन्फ़िगर करें।
sudo vim /etc/nginx/conf.d/osticket.conf
इसे /etc/nginx/conf.d/osticket.confफाइल में कॉपी / पेस्ट करें ।
server {
  listen 80;
  server_name example.com;
  root /var/www/osticket/upload;
  index index.php index.html;
  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;
  }
  if ($request_uri ~ "^/.*\.php(/[^\?]+)") {
    set $path_info $1;
  }
  location ~ ^/scp/ajax.php/.*$ {
    try_files $uri $uri/ /scp/ajax.php?$query_string;
  }
  location ~ ^/ajax.php/.*$ {
    try_files $uri $uri/ /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;
    fastcgi_param PATH_INFO $path_info;
    fastcgi_pass 127.0.0.1:9000;
  }
}
फ़ाइल और साथ बाहर निकलने को बचाने :+ W+ Q।
कॉन्फ़िगरेशन का परीक्षण करें।
sudo nginx -t
रीलोडेड नेग्नेक्स।
sudo service nginx restart
OsTicket स्थापित करें
डॉक्यूमेंट रूट डायरेक्टरी बनाएं।
sudo mkdir -p /var/www/osticket
/var/www/osticketनिर्देशिका का स्वामित्व बदलें johndoe।
sudo chown -R johndoe:johndoe /var/www/osticket
दस्तावेज़ रूट फ़ोल्डर में नेविगेट करें।
cd /var/www/osticket
डाउनलोड करें और osTicket की नवीनतम रिलीज़ को अनज़िप करें ।
wget https://github.com/osTicket/osTicket/releases/download/v1.14.1/osTicket-v1.14.1.zip
unzip osTicket-v1.14.1.zip
rm osTicket-v1.14.1.zip
नमूना कॉन्फ़िगरेशन फ़ाइल की प्रतिलिपि बनाएँ।
sudo cp upload/include/ost-sampleconfig.php upload/include/ost-config.php
/var/www/osticketनिर्देशिका का स्वामित्व बदलें nginx।
sudo chown -R nginx:nginx /var/www/osticket
sudo vim /etc/php-fpm.d/www.confउपयोगकर्ता और समूह को चलाएं और सेट करें nginx। प्रारंभ में, उन्हें अपाचे के लिए सेट किया जाएगा।
sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx
/var/lib/php/session/निर्देशिका बनाएं और स्वामित्व बदलें nginx।
sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php/session
PHP-FPM सेवा को पुनरारंभ करें।
sudo systemctl restart php-fpm.service
एक बार जब सब कुछ कॉन्फ़िगर हो जाता है, तो ओएसटीकेट वेब इंस्टॉलेशन विज़ार्ड तक पहुंचने का समय है। वेब ब्राउज़र में अपनी साइट खोलें और इंस्टॉलेशन को पूरा करने के लिए स्क्रीन पर दिए गए निर्देशों का पालन करें।
स्थापना के बाद, setupसुरक्षा के लिए निर्देशिका हटाएं ।
sudo rm -rf upload/setup
sudo chmod 0644 upload/include/ost-config.php