GNU/Linux >> Belajar Linux >  >> Rocky Linux

Cara Menginstal Sistem Helpdesk UVdesk di Rocky Linux 8

UVdesk adalah sistem helpdesk berbasis Saas open-source bagi perusahaan untuk berinteraksi dengan pelanggan mereka dan menawarkan dukungan sepanjang waktu. Fitur-fiturnya termasuk manajemen tiket, dukungan basis pengetahuan, balasan kalengan, dan pembuatan tiket otomatis berdasarkan email. Kemampuan Uvdesk dapat diperluas menggunakan modul eksternal. Anda dapat mengotomatiskan tindakan tertentu berdasarkan pemicu tertentu untuk meningkatkan alur kerja Anda.

Dalam tutorial ini, Anda akan belajar cara menginstal Uvdesk di server berbasis Rocky Linux 8 menggunakan Nginx, MySQL dan PHP.

Prasyarat

  • Server yang menjalankan Rocky Linux 8.

  • Nama domain untuk meja bantuan yang menunjuk ke server. Untuk tutorial kita, kita akan menggunakan uvdesk.example.com domain.

  • Pengguna berbasis non-root dengan hak istimewa sudo.

  • Pastikan semuanya diperbarui.

    $ sudo dnf update
  • Instal paket utilitas dasar. Beberapa di antaranya mungkin sudah terpasang.

    $ sudo dnf install wget curl nano unzip yum-utils -y

Langkah 1 - Konfigurasi Firewall

Langkah pertama adalah mengkonfigurasi firewall. Rocky Linux menggunakan Firewalld Firewall. Periksa status firewall.

$ sudo firewall-cmd --staterunning

Firewall bekerja dengan zona yang berbeda, dan zona publik adalah zona default yang akan kita gunakan. Buat daftar semua layanan dan port yang aktif di firewall.

$ sudo firewall-cmd --permanent --list-services

Ini akan menunjukkan output berikut.

kokpit dhcpv6-client ssh

Izinkan port HTTP dan HTTPS.

$ sudo firewall-cmd --permanent --add-service=http$ sudo firewall-cmd --permanent --add-service=https

Periksa kembali status firewall.

$ sudo firewall-cmd --permanent --list-services

Anda akan melihat keluaran serupa.

kokpit dhcpv6-klien http https ssh

Muat ulang firewall untuk mengaktifkan perubahan.

$ sudo firewall-cmd --reload

Langkah 2 - Instal Nginx

Rocky Linux dikirimkan dengan versi Nginx yang lebih lama. Anda perlu mengunduh repositori Nginx resmi untuk menginstal versi terbaru.

Buat dan buka /etc/yum.repos.d/nginx.repo file untuk membuat repositori Nginx resmi.

$ sudo nano /etc/yum.repos.d/nginx.repo

Tempelkan kode berikut di dalamnya.

[nginx-stable]name=nginx stable repobaseurl=http://nginx.org/packages/centos/$releasever/$basearch/gpgcheck=1enabled=1gpgkey=https://nginx.org/keys/nginx_signing. keymodule_hotfixes=true[nginx-mainline]name=nginx mainline repobaseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/gpgcheck=1enabled=0gpgkey=https://nginx.org/keys/ nginx_signing.keymodule_hotfixes=true

Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.

Instal Nginx.

$ sudo dnf install nginx

Verifikasi penginstalan.

$ nginx -vnginx versi:nginx/1.20.2

Aktifkan layanan Nginx.

$ sudo systemctl aktifkan nginx

Langkah 3 - Instal PHP dan ekstensi

Untuk tutorial kita, kita perlu menginstal versi terbaru PHP menggunakan repositori Remi. Langkah pertama adalah mengambil repositori Epel.

$ sudo dnf install epel-release

Selanjutnya, instal repositori Remi.

$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Periksa aliran PHP yang tersedia.

$ dnf module list php -yLast metadata cek kedaluwarsa:0:00:12 yang lalu pada Jum 03 Des 2021 09:39:32 UTC.Rocky Linux 8 - AppStreamName Stream Profiles Summaryphp 7.2 [d] common [d], devel, minimal PHP scripting languagephp 7.3 umum [d], devel, minimal PHP scripting languagephp 7.4 umum [d], devel, minimal PHP scripting languageRemi's Modular repository for Enterprise Linux 8 - x86_64Name Stream Profiles Summaryphp remi-7.2 common [d], devel , bahasa skrip PHP minimalphp remi-7.3 umum [d], devel, bahasa skrip PHP minimalphp remi-7.4 umum [d], devel, skrip PHP minimal languagephp remi-8.0 umum [d], devel, bahasa skrip PHP minimalphp remi-8.1 umum [d], devel, bahasa skrip PHP minimalPetunjuk:[d]efault, [e]nabled, [x]disabled, [i]nstalled 

Versi defaultnya adalah 7.2. Aktifkan repositori PHP 8.0 Remi.

$ modul sudo dnf reset php$ modul sudo dnf mengaktifkan php:remi-8.0

Selanjutnya, instal PHP dan ekstensinya yang diperlukan oleh UVDesk.

$ sudo dnf install php-fpm php-mbstring php-xml php-curl php-mysqlnd php-zip php-cli php-intl php-bcmath php-gd php-tokenizer php-imap php-pear php-mailparse 

Verifikasi penginstalan.

$ php --versionPHP 8.0.16 (cli) (dibuat:Feb 15 2022 21:34:32) ( NTS gcc x86_64 )Hak Cipta (c) PHP GroupZend Engine v4.0.16, Hak Cipta (c) Zend Technologies 

Langkah 4 - Instal dan Konfigurasi Server MySQL

Kami akan menggunakan database MySQL untuk menyimpan data. Repositori Appstream Rocky Linux dikirimkan dengan MySQL versi terbaru.

Instal MySQL.

$ sudo dnf install mysql-server

Aktifkan dan mulai layanan MySQL.

$ sudo systemctl aktifkan mysqld --now

Instalasi MySQL aman.

$ sudo mysql_secure_installation

Untuk langkah pertama, Anda akan ditanya apakah Anda ingin mengatur Plugin Validasi Kata Sandi, yang dapat Anda gunakan untuk menguji kekuatan kata sandi MySQL Anda. Pilih Y untuk melanjutkan. Anda akan diminta untuk memilih tingkat validasi kata sandi di langkah berikutnya. Pilih 2 yang merupakan level terkuat dan akan mengharuskan sandi Anda setidaknya terdiri dari delapan karakter dan menyertakan campuran huruf besar, huruf kecil, angka, dan karakter khusus.

Mengamankan penyebaran server MySQL. Menghubungkan ke MySQL menggunakan kata sandi kosong. KOMPONEN SANDI VALIDASI dapat digunakan untuk menguji kata sandi dan meningkatkan keamanan. Ini memeriksa kekuatan kata sandi dan memungkinkan pengguna untuk mengatur hanya kata sandi yang cukup aman. Apakah Anda ingin menyiapkan komponen VALIDATE PASSWORD? Tekan y|Y untuk Ya, tombol lain untuk Tidak:YAda tiga tingkat kebijakan validasi kata sandi:RENDAH Panjang>=8MEDIUM Panjang>=8, numerik, huruf besar campuran, dan karakter khususSTRONG Panjang>=8, numerik, huruf besar campuran, karakter khusus, dan file kamusMasukkan 0 =RENDAH, 1 =SEDANG dan 2 =KUAT:2

Anda akan diminta untuk memilih kata sandi root pada langkah berikutnya. Pilih kata sandi yang kuat yang memenuhi persyaratan plugin validasi kata sandi. Pada langkah selanjutnya, Anda akan ditanya apakah akan melanjutkan dengan kata sandi yang dipilih. Tekan y untuk melanjutkan.

Silakan setel kata sandi untuk root di sini.Kata sandi baru:Masukkan kembali kata sandi baru:Perkiraan kekuatan kata sandi:100Apakah Anda ingin melanjutkan dengan kata sandi yang diberikan?(Tekan y|Y untuk Ya, tombol lain untuk Tidak) :Y

Tekan Y lalu ENTER kunci untuk semua perintah berikut untuk menghapus pengguna anonim dan database pengujian, menonaktifkan login root dan memuat aturan yang baru ditetapkan.

...Hapus pengguna anonim? (Tekan y|Y untuk Ya, tombol lain untuk Tidak):YSuccess....Larang login root dari jarak jauh? (Tekan y|Y untuk Ya, tombol lain untuk Tidak) :YSuccess....Hapus database pengujian dan akses ke sana? (Tekan y|Y untuk Ya, tombol lain untuk Tidak):Y - Menjatuhkan database uji...Berhasil. - Menghapus hak istimewa pada basis data pengujian...Berhasil.Memuat ulang tabel hak istimewa akan memastikan bahwa semua perubahan yang dibuat sejauh ini akan segera berlaku....Muat ulang tabel hak istimewa sekarang? (Tekan y|Y untuk Ya, tombol lain untuk Tidak) :YSuccess.All done!

Masukkan shell MySQL. Masukkan kata sandi root Anda untuk melanjutkan.

$ mysql -u root -p

Buat uvdesk pengguna. Pastikan sandi memenuhi persyaratan yang ditetapkan sebelumnya.

mysql> BUAT PENGGUNA 'uvdesk'@'localhost' DIIDENTIFIKASI DENGAN 'Your_password2';

Buat uvdeskdb basis data.

mysql> BUAT DATABASE uvdeskdb;

Berikan hak istimewa pengguna pada uvdeskdb basis data.

mysql> BERIKAN SEMUA HAK ISTIMEWA DI uvdeskdb.* KEPADA 'uvdesk'@'localhost';

Keluar dari Shell.

mysql> keluar

Langkah 5 - Unduh UVdesk

Unduh versi stabil terbaru dari UVdesk.

$ wget https://cdn.uvdesk.com/uvdesk/downloads/opensource/uvdesk-community-current-stable.zip

Buka zip file yang diunduh.

$ unzip uvdesk-*.zip

Pindahkan direktori hasil ekstrak ke /var/www/uvdesk lokasi.

$ sudo mv uvdesk-community-v1.0.18 /var/www/uvdesk

Beralih ke direktori UVdesk.

$ cd /var/www/uvdesk

Buka file lingkungan (.env ) untuk diedit.

$ sudo nano .env

Temukan baris APP_ENV=dev dan ubah menjadi berikut.

APP_ENV=prod

Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.

Ubah kepemilikan direktori root menjadi pengguna Nginx.

$ sudo chown -R nginx:nginx /var/www/uvdesk

Langkah 6 - Konfigurasi Izin SELinux

Gunakan chcon SELinux perintah untuk mengubah konteks keamanan file untuk konten web yang disajikan dari /var/www/uvdesk direktori.

$ sudo chcon -t httpd_sys_content_t /var/www/uvdesk -R$ sudo chcon -t httpd_sys_rw_content_t /var/www/uvdesk -R

Konfigurasikan SELinux untuk mengizinkan koneksi jaringan untuk UVDesk.

$ sudo setsebool -P httpd_can_network_connect on

Langkah 7 - Instal dan Konfigurasi SSL

Untuk menginstal sertifikat SSL menggunakan Let's Encrypt, kita perlu mengunduh alat Certbot. Kami membutuhkan repositori Epel untuk menginstal Certbot, tetapi kami dapat melewati langkah ini karena kami telah menginstalnya sebelumnya di tutorial.

Instal Certbot.

$ sudo dnf install certbot

Buat sertifikat SSL.

$ sudo certbot certonly --standalone --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d uvdesk.example.com

Perintah di atas akan mengunduh sertifikat ke /etc/letsencrypt/live/uvdesk.example.com direktori di server Anda.

Buat grup Diffie-Hellman sertifikat.

$ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Buat direktori root web tantangan untuk pembaruan otomatis Let's Encrypt.

$ sudo mkdir -p /var/lib/letsencrypt

Buat Pekerjaan Cron untuk memperbarui SSL. Ini akan berjalan setiap hari untuk memeriksa sertifikat dan memperbarui jika diperlukan. Untuk itu, buat dulu file /etc/cron.daily/certbot-renew dan buka untuk diedit.

$ sudo nano /etc/cron.daily/certbot-renew

Tempelkan kode berikut.

#!/bin/shcertbot perbarui --cert-name uvdesk.example.com --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"

Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.

Ubah izin pada file tugas agar dapat dieksekusi.

$ sudo chmod +x /etc/cron.daily/certbot-renew

Langkah 8 - Konfigurasi Nginx dan PHP

Konfigurasi PHP-FPM

Buka file /etc/php-fpm.d/www.conf .

$ sudo nano /etc/php-fpm.d/www.conf

Kita perlu mengatur pengguna/grup proses PHP Unix ke nginx . Temukan user=www-data dan group=www-data baris dalam file dan ubah menjadi nginx .

...; Pengguna/grup proses Unix; Catatan:Pengguna wajib. Jika grup tidak disetel, grup pengguna default; akan digunakan.; RPM:pengguna apache yang dipilih untuk menyediakan akses ke direktori yang sama dengan httpduser =nginx; RPM:Biarkan grup tetap diizinkan untuk menulis di log dir.group =nginx...

Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.

Aktifkan dan Mulai layanan PHP.

$ sudo systemctl aktifkan php-fpm --now

Ubah grup direktori sesi PHP ke Nginx.

$ sudo chgrp -R nginx /var/lib/php/session

Konfigurasi Nginx

Buat dan buka file /etc/nginx/conf.d/uvdesk.conf untuk diedit.

$ sudo nano /etc/nginx/conf.d/uvdesk.conf

Tempelkan kode berikut di dalamnya.

server { dengarkan 443 ssl http2; dengarkan [::]:443 ssl http2; nama_server uvdesk.example.com; access_log /var/log/nginx/uvdesk.access.log; error_log /var/log/nginx/uvdesk.error.log; # SSL ssl_certificate /etc/letsencrypt/live/uvdesk.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/uvdesk.example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/uvdesk.example.com/chain.pem; ssl_session_timeout 5m; ssl_session_cache dibagikan:MozSSL:10m; ssl_session_tickets mati; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers aktif; ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDALY -RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384; ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1; ssl_stapel aktif; ssl_stapling_verifikasi aktif; ssl_dhparam /etc/ssl/certs/dhparam.pem; penyelesai 8.8.8.8; root /var/www/uvdesk/public; indeks indeks.php; lokasi / { try_files $uri $uri/ /index.php?$args; } # Kirim Skrip PHP Ke lokasi Server FastCGI ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_pass unix:/run/php-fpm/www.sock; # Tergantung Pada Versi PHP fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; termasuk fastcgi_params; try_files $uri =404; } }# menegakkan HTTPSserver { mendengarkan 80; dengarkan [::]:80; nama_server uvdesk.example.com; kembalikan 301 https://$host$request_uri;}

Perhatikan direktori root yang akan digunakan dalam konfigurasi Nginx adalah /var/www/uvdesk/public/ dan bukan /var/www/uvdesk/ .

Simpan file dengan menekan Ctrl + X dan memasukkan Y ketika diminta setelah selesai.

Buka file /etc/nginx/nginx.conf untuk diedit.

$ sudo nano /etc/nginx/nginx.conf

Tambahkan baris berikut sebelum baris include /etc/nginx/conf.d/*.conf; .

server_names_hash_bucket_size 64;

Simpan file dengan menekan Ctrl + X dan memasukkan Y saat diminta.

Verifikasi sintaks file konfigurasi Nginx.

$ sudo nginx -tnginx:file konfigurasi /etc/nginx/nginx.conf sintaksnya oknginx:file konfigurasi /etc/nginx/nginx.conf tes berhasil

Mulai layanan Nginx.

$ sudo systemctl start nginx

Langkah 9 - Instal UVdesk

Luncurkan URL https://uvdesk.example.com di browser Anda, dan Anda akan mendapatkan layar berikut.

Klik tombol Mari Mulai tombol untuk memulai proses instalasi. Pemasang akan memeriksa pengaturan PHP dan izin file di halaman berikutnya.

Klik Lanjutkan untuk melanjutkan. Anda akan diminta untuk mengisi rincian database pada halaman berikutnya. Masukkan data seperti yang dikonfigurasi pada langkah 4.

Klik Lanjutkan untuk melanjutkan. Selanjutnya, Anda akan diminta untuk membuat akun administrator super. Isi detail Anda.

Klik Lanjutkan untuk melanjutkan. Selanjutnya, Anda akan diminta untuk mengkonfigurasi website dengan memberikan nama awalan Panel Anggota dan Pelanggan. Awalan ini digunakan di URL situs web.

Klik Lanjutkan untuk melanjutkan. Anda akan mencapai halaman penginstalan terakhir.

Klik Pasang Sekarang untuk memulai instalasi. Setelah selesai, Anda akan mendapatkan layar berikut.

Anda dapat mengakses panel admin dan situs web frontend melalui tautan yang diberikan. Instalasi UVDesk Anda siap digunakan.

Kesimpulan

Anda telah menginstal sistem Helpdesk UVdesk pada server berbasis Rocky Linux 8 menggunakan Nginx, MySQL dan PHP. Jika Anda memiliki pertanyaan, kirimkan di komentar di bawah.


Rocky Linux
  1. Cara Menginstal Nextcloud di Rocky Linux

  2. Cara Menginstal dan Menggunakan PostgreSQL 13 di Rocky Linux

  3. Cara menginstal PHP 8 di Alma Linux &Rocky Linux

  1. Cara Install PHP 8 Terbaru di Rocky Linux

  2. Cara Menginstal phpMyAdmin di Rocky Linux

  3. Cara Menginstal Python 3.9 di Rocky Linux 8

  1. Cara Menginstal Komposer PHP di Rocky Linux 8

  2. Cara Menginstal Joomla dengan Nginx di Rocky Linux

  3. Cara Memasang Sistem Tiket OTRS (CE) di Rocky Linux