GNU/Linux >> Belajar Linux >  >> Cent OS

Bagaimana cara menginstal Bugzilla 5.0 di CentOS 7

Di halaman ini

  1. Prasyarat untuk CentOS
    1. Koneksi Internet
    2. SELinux
      1. Nonaktifkan SELinux
    3. Akun yang digunakan untuk instalasi
    4. Repositori Tambahan
      1. Aktifkan repositori Epel
  2. Instal Apache dengan mod_ssl dan mod_perl
    1. Aktifkan dan mulai httpd.service
      1. Mulai httpd.service
      2. Periksa status httpd.service
      3. Aktifkan httpd.service secara permanen
      4. Buka port 80 di firewall lokal untuk mengizinkan permintaan HTTP
      5. Uji server web Apache
  3. Instal MariaDB
    1. Buat MariaDB memulai otomatis saat boot
    2. Setel sandi root MariaDB
    3. Setel max_allowed_packets untuk MariaDB
  4. Paket Tambahan
  • Instal Bugzilla
    1. Buat database untuk Bugzilla
    2. Unduh dan ekstrak Bugzilla
    3. Salin folder Bugzilla ke folder server web
    4. Pengaturan akhir menggunakan skrip instalasi Bugzilla
    5. Konfigurasikan Apache untuk meng-host instalasi Bugzilla kami
      1. Beralih kembali ke pengguna biasa
      2. Uji penginstalan Bugzilla dengan browser Anda
  • HowTo ini akan memandu Anda melalui instalasi Bugzilla 5.0 pada CentOS 7. Bugzilla adalah sistem pelacakan bug tingkat lanjut, yang dikembangkan oleh Mozilla Foundation (organisasi yang mengembangkan browser Firefox yang terkenal). Bugzilla memungkinkan Anda untuk melacak cacat dan perubahan kode dalam aplikasi Anda, memungkinkan Anda untuk berkomunikasi dalam tim pengembang Anda dengan mudah dan mengirimkan dan meninjau patch.

    Prasyarat untuk CentOS

    Koneksi Internet

    Anda harus memiliki instalasi CentOS 7 minimal dengan pembaruan terbaru dan alamat IP dan nama host yang ditetapkan. Mesin Anda harus dapat menjangkau internet. Jika Anda tidak dapat menjangkau internet secara langsung dan Anda harus menggunakan server proxy, Anda harus mengkonfigurasi yum untuk menggunakan proxy dengan mengedit /etc/yum.conf. Tambahkan baris berikut (ubah sesuai kebutuhan Anda):

    # Server proxy - server proxy:port
    proxy=http://192.168.178.1:8080
    # Detail akun untuk koneksi yum
    # proxy_username=yum-user
    # proxy_password=qwerty


    Saat kami menggunakan alat baris perintah, yang memerlukan akses internet dan Anda berada di belakang server proxy, pastikan Anda selalu menjalankan dua perintah berikut sebelum menggunakan perintah yang memerlukan koneksi internet:

    ekspor http_proxy=http://192.168.178.1:8080/
    ekspor https_proxy=http://192.168.178.1:8080/


    Dengan metode ini, Anda seharusnya dapat menggunakan Petunjuk ini meskipun Anda berada di belakang proxy.

    SELinux

    Security-Enhanced Linux (SELinux) adalah mekanisme keamanan kontrol akses wajib (MAC) yang diterapkan di kernel. Ini adalah mekanisme keamanan yang sangat baik tetapi akan merusak Bugzilla sampai paket resmi Bugzilla 5.0 rpm dirilis yang juga akan mengonfigurasi SELinux. Jadi pada titik ini kita akan mengatur SELinux ke mode permisif. Dalam mode ini, SELinux diaktifkan tetapi tidak akan menerapkan kebijakan keamanan.

    Nonaktifkan SELinux

    Jalankan perintah berikut untuk mengubah mode SELinux dari enforcing menjadi permissive.

    sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/g' /etc/selinux/config


    File sekarang akan terlihat seperti ini:

    # File ini mengontrol status SELinux pada sistem.
    # SELINUX=dapat mengambil salah satu dari tiga nilai berikut:
    #     enforcing - kebijakan keamanan SELinux diberlakukan.
    #     permissive - SELinux mencetak peringatan alih-alih menegakkan.
    #     dinonaktifkan - Tidak ada kebijakan SELinux yang dimuat.
    SELINUX=permissive
    # SELINUXTYPE=dapat mengambil salah satu dari tiga dua nilai:
    #     bertarget - Proses yang ditargetkan dilindungi ,
    #     minimum - Modifikasi kebijakan yang ditargetkan. Hanya proses tertentu yang dilindungi.
    #     mls - Perlindungan Keamanan Multi Level.
    SELINUXTYPE=targeted


    Setelah perubahan itu, boot ulang mesin Anda.

    Akun yang digunakan untuk instalasi

    Jika tidak secara eksplisit diberitahukan sebaliknya, semua perintah dalam How-to ini dijalankan sebagai 'installer' pengguna yang merupakan pengguna administratif pada mesin CentOS 7 dan diizinkan untuk mengeksekusi perintah dengan 'sudo'.

    Repositori Tambahan

    Kami akan membutuhkan banyak paket yang tidak ada di repositori resmi CentOS, oleh karena itu kami mengaktifkan repositori tambahan di kotak CentOS kami.

    Aktifkan repositori Epel

    Jalankan perintah berikut untuk mengaktifkan repositori epel.

    sudo yum install deltarpm epel-release
    sudo yum update


    Info:Anda harus menerima kunci GPG epel saat menginstal paket pertama dari repositori epel.

    Instal Apache dengan mod_ssl dan mod_perl

    sudo yum install httpd httpd-devel mod_ssl mod_ssl mod_perl mod_perl-devel


    Ini akan menginstal Apache, mod_ssl, mod_perl dan wget dengan semua dependensi yang diperlukan.

    Aktifkan dan mulai httpd.service

    CentOS 7 menggunakan systemd, jadi kami akan mengaktifkan dan memulai Apache 'systemd way'.

    Mulai httpd.service

    sudo systemctl start httpd.service

    Periksa status httpd.service

    sudo systemctl status httpd.service


    Perintah ini akan memberitahu Anda, bahwa httpd.service sedang berjalan (beberapa baris dihilangkan)

    httpd.service - Server HTTP Apache
       Dimuat:dimuat (/usr/lib/systemd/system/httpd.service; dinonaktifkan)
       Aktif:aktif (berjalan) sejak Selasa-08-04 11:18:03 CEST; 6 detik yang lalu
     PID Utama:11930 (/usr/sbin/httpd)
    ...

    Aktifkan httpd.service secara permanen

    Setelah memverifikasi output di atas, kami mengaktifkan httpd.service untuk memulai otomatis dengan:

    sudo systemctl aktifkan httpd.service


    Sistem akan secara otomatis membuat tautan simbolis untuk mengaktifkan http.service untuk memulai otomatis.

    Buka port 80 di firewall lokal untuk mengizinkan permintaan HTTP

    CentOS 7 menggunakan FirewallD, jadi kita harus menggunakan firewall-cmd untuk mengubah pengaturan firewall untuk mengizinkan koneksi masuk pada port 80 (HTTP).

    sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
    # sukses
    sudo firewall-cmd --reload
    # sukses

    Uji server web Apache

    Gunakan browser dan buka http://ip-of-your-server/ (ganti ip-of-your-server dengan alamat IP server Anda). Anda akan melihat Halaman Tes Apache. - Apache berfungsi!

    Instal MariaDB

    CentOS 7 hadir dengan MariaDB, bukan MySQL. MariaDB adalah open source yang setara dengan MySQL. Untuk menginstal MariaDB jalankan perintah berikut:

    sudo yum install mariadb-server mariadb mariadb-devel php-mysql

    Buat MariaDB mulai otomatis saat boot

    Untuk memulai otomatis MariaDB saat boot, kami mengaturnya sebagai layanan dengan cara yang sama seperti yang kami lakukan sebelumnya dengan httpd.service. Jalankan tiga perintah berikut untuk memulai, memeriksa status dan mengaktifkan MariaDB sebagai layanan permanen:

    sudo systemctl start mariadb.service
    sudo systemctl status mariadb.service
    sudo systemctl aktifkan mariadb.service

    Setel kata sandi root MariaDB

    Buka prompt SQL ke server MariaDB Anda dengan menjalankan perintah berikut:

    mysql -u root


    Anda harus membuka prompt MariaDB. Pada perintah berikut, Anda harus mengganti myrootpassword dengan kata sandi yang ingin Anda gunakan untuk pengguna root MariaDB Anda!

    MariaDB [ (none) ]> SET PASSWORD FOR 'root'@'localhost' =PASSWORD('myrootpassword');Query OK, 0 baris terpengaruh (0,00 detik)MariaDB [ (none) ]> \qBye


    Sekarang coba jika Anda dapat login dengan pengguna root

    mysql -u root -p
    Masukkan kata sandi:myrootpasswordSelamat datang di monitor MariaDB. Perintah diakhiri dengan; atau \g.
    Id koneksi MariaDB Anda adalah 5
    Versi Server:5.5.41-MariaDB MariaDB Server
    Hak Cipta (c) 2000, 2014, Oracle, MariaDB Corporation Ab, dan lainnya.
    Ketik 'bantuan;' atau '\h' untuk bantuan. Ketik '\c' untuk menghapus pernyataan input saat ini. MariaDB [ (none) ]> \qBye

    Setel max_allowed_packets untuk MariaDB

    Bugzilla membutuhkan ukuran minimum 'max_allowed_packet' yang dikonfigurasi dalam MariaDB. Jadi mari kita ubah konfigurasi MariaDB generik untuk mengatur ukuran 'max_allowed_packet' menjadi 4 MBytes.
    Buka '/etc/my.cnf' dengan editor Anda dan tambahkan baris berikut di bawah bagian '[mysqld]':

    # Bugzilla
    # ukuran maksimum yang diizinkan dari unggahan lampiran
    #ubah ini jika Anda membutuhkan lebih banyak!
    max_allowed_packet=4M


    Setelah itu ubah keseluruhan 'my.cnf' menjadi seperti ini:

    [mysqld]
    datadir=/var/lib/mysql
    socket=/var/lib/mysql/mysql.sock
    # Sebaiknya nonaktifkan tautan simbolik untuk mencegah berbagai risiko keamanan
    symbolic-links=0
    # Pengaturan pengguna dan grup diabaikan saat systemd digunakan.
    # Jika Anda perlu menjalankan mysqld di bawah pengguna atau grup yang berbeda,
    # sesuaikan file unit sistemd Anda untuk mariadb sesuai dengan
    # petunjuk di http://fedoraproject.org/wiki/Systemd

    # Bugzilla
    # ukuran maksimum yang diizinkan dari unggahan lampiran
    # ubah ini jika Anda membutuhkan lebih banyak!
    max_allowed_packet=4M

    [mysqld_safe]
    log-error=/var/log/mariadb/mariadb.log
    pid-file =/var/run/mariadb/mariadb.pid

    #
    # sertakan semua file dari direktori konfigurasi
    #
    !includedir /etc/my.cnf. d


    Perubahan akan berlaku setelah memulai ulang MariaDB.

    sudo systemctl restart mariadb.service

    Paket Tambahan

    Bugzilla membutuhkan banyak paket tambahan, terutama yang terkait dengan Perl, beberapa prasyarat untuk membuat modul perl berfungsi dan pengaturan untuk dapat mengunduh dan menginstal modul perl. Oleh karena itu kami menginstal semua dependensi yang diperlukan. Kami juga memastikan, bahwa kami

    JANGAN INSTAL paket perl-homedir, karena ini akan merusak instalasi Bugzilla.

    ('perl-homedir' akan menginstal modul Perl di folder pengguna yang tidak dapat diakses oleh Bugzilla jadi jangan menginstalnya!)

    Perintah berikut akan memastikan perl-homedir tidak diinstal dan akan menginstal paket lain yang diperlukan:

    sudo yum install gcc gcc-c++ graphviz graphviz-devel patchutils gd gd-devel wget perl* -x perl-homedir


    Sekitar 1300 paket akan diinstal!

    Instal Bugzilla

    Setelah semua persiapan selesai, kami siap mengunduh Bugzilla terbaru, membuat database untuknya, dan melakukan beberapa penyiapan terakhir.

    Buat database untuk Bugzilla

    Untuk membuat database Bugzilla di server MariaDB kami, kami harus membuka kembali prompt root MariaDB:

    mysql -u root -p
    Masukkan kata sandi:myrootpassword

    Selamat datang di monitor MariaDB. Perintah diakhiri dengan; atau \g.
    Id koneksi MariaDB Anda adalah 5
    Versi Server:5.5.41-MariaDB MariaDB Server
    Hak Cipta (c) 2000, 2014, Oracle, MariaDB Corporation Ab, dan lainnya.
    Ketik 'bantuan;' atau '\h' untuk bantuan. Ketik '\c' untuk menghapus pernyataan input saat ini.


    Pada prompt root MariaDB, masukkan perintah berikut untuk membuat 'bug' database dan mengizinkan 'bug' pengguna untuk mengaksesnya sepenuhnya. (Silakan ubah 'bugsuserpassword' menjadi kata sandi Anda!)

    MariaDB [ (none) ]> buat bug database;Kueri OK, 1 baris terpengaruh (0,00 detik)MariaDB [ (none) ]> berikan semua bug.* ke [dilindungi email] diidentifikasi oleh 'bugsuserpassword';Kueri OK, 0 baris terpengaruh (0,00 detik)MariaDB [ (tidak ada) ]> \qBye

    Unduh dan ekstrak Bugzilla

    Meskipun ada berbagai opsi untuk mendapatkan BugZilla, kami menggunakan wget untuk mengunduh tarball Kami ingin mendapatkan Rilis Stabil (5.0).

    cd
    wget 'https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.tar.gz'


    Setelah download selesai, kita ekstrak arsipnya:

    tar -xzvf bugzilla-5.0.tar.gz

    Salin folder Bugzilla ke folder server web

    Sekarang mari kita salin folder hasil ekstrak (bugzilla-5.0) ke lokasi targetnya (/var/www/html/bugzilla) dengan perintah berikut

    cd
    sudo cp -R ./bugzilla-5.0/ /var/www/html/bugzilla/

    Pengaturan akhir menggunakan skrip instalasi Bugzilla

    Perintah berikut harus dijalankan sebagai pengguna root, untuk itu kita membuka shell root dengan perintah berikut:

    sudo su
    [[pemasang dilindungi email]]#


    Prompt kami sekarang memiliki '#' di akhir, yang berarti kami adalah root. Harap berhati-hati dengan semua perintah sekarang! Howto sekarang akan selalu menampilkan prompt untuk memberitahu Anda bahwa Anda harus root untuk menjalankan perintah!

    Sekarang (sebagai root) kita ubah ke folder server web tempat bugzilla berada

    [[pemasang dilindungi email]]# cd /var/www/html/bugzilla
    [[dilindungi email] bugzilla]#


    Sekarang jalankan perintah berikut untuk membiarkan skrip instalasi Bugzilla memeriksa status pengaturan kami

    [[email protected] bugzilla]# ./checksetup.pl


    Biasanya output dari perintah di atas akan memberitahu kita, bahwa beberapa modul Perl hilang dari instalasi kita (opsional dan wajib) dan kita harus menginstal setidaknya yang diperlukan untuk dapat melanjutkan. Anda tentu saja dapat menginstal semua yang diperlukan (dan jika Anda suka) modul opsional dengan tangan menjalankan perintah yang akan ditunjukkan oleh skrip instalasi, tetapi dengan satu perintah ini Anda akan menginstal semua modul perl yang diperlukan sekaligus (wajib dan opsional). Jadi mari kita jalankan:

    [[email protected] bugzilla]# /usr/bin/perl install-module.pl --all


    Skrip setup sekarang akan mengatur konfigurasi CPAN sementara dan mencoba menginstal semua modul perl yang dibutuhkan Bugzilla (wajib dan opsional). Hanya beberapa peringatan kecil yang akan muncul selama proses.

    Pada akhirnya, mari kita verifikasi lagi status penginstalan dengan menjalankan checksetup.pl

    [[email protected] bugzilla]# ./checksetup.pl


    Semua dependensi seharusnya baik-baik saja sekarang, kecuali satu modul ( DBD-Oracle (v1.19)  yang tidak ditemukan. Ini tidak masalah karena modul ini hanya akan diinstal jika menemukan instalasi Oracle yang berfungsi yang tidak kita miliki!

    Script setup sekarang akan menampilkan teks berikut:

    Membaca ./localconfig...

    Versi Bugzilla ini berisi beberapa variabel yang mungkin ingin
    ubah dan sesuaikan dengan pengaturan lokal Anda. Variabel berikut ini
    baru di ./localconfig sejak terakhir kali Anda menjalankan checksetup.pl:

    create_htaccess, webservergroup, use_suexec, db_driver, db_host,
    db_name, db_user, db_pass, db_port , db_sock, db_check,
    db_mysql_ssl_ca_file, db_mysql_ssl_ca_path, db_mysql_ssl_client_cert,
    db_mysql_ssl_client_key, index_html, interdiffbin,
    diffpath. -jalankan checksetup.pl
    untuk menyelesaikan instalasi Anda.


    Jadi seperti yang dinyatakan di atas, kita buka ./localconfig dengan editor kita dan ubah sesuai kebutuhan kita. Ini yang saya gunakan (komentar dihapus), pastikan Anda mengubah nama database dan kata sandi sesuai kebutuhan Anda!

    $create_htaccess =1;
    $webservergroup ='apache';
    $use_suexec =0;
    $db_driver ='mysql';
    $db_host ='localhost';
    $db_name ='bug';
    $db_user ='bug';
    $db_pass ='bugsuserpassword';
    $db_port =0;
    $db_sock ='';
    $db_check =1;
    $db_mysql_ssl_ca_file ='';
    $db_mysql_ssl_ca_path ='';
    $db_mysql_ssl_client_cert ='';
    $db_mysql_ssl_client_key ='';$index_html =0;
    $interdiffbin ='/bin/interdiff';
    $diffpath ='/bin';
    $site_wide_secret ='ifKuihguW8nlxLcxeNU4whHzFbxDIGWSvtR6S7Ul38cFQn003


    Sekarang mari kita jalankan kembali skrip setup. Sekarang seharusnya mendeteksi konfigurasi database yang benar dan mulai mengakses server MariaDB untuk pengaturan akhir.

    [[email protected] bugzilla]# ./checksetup.pl


    Output (beberapa baris dihilangkan)

    ...
    ...
    Menambahkan tabel baru bz_schema...
    Menginisialisasi bz_schema...
    Membuat tabel...
    Mengonversi ukuran maksimum attach_data ke 100G. ..
    Menyiapkan pilihan untuk bidang tarik-turun standar:
       prioritas bug_status resolusi rep_platform bug_severity op_sys
    Membuat direktori ./data...
    ...
    . ..
    Prakompilasi template...selesai.
    Memperbaiki izin file...
    Menginisialisasi "Perubahan Pohon Ketergantungan" email_setting ...
    Menginisialisasi "Perubahan Produk/Komponen" email_setting . ..
    Menandai status bug tertutup seperti itu...
    Membuat klasifikasi default 'Tidak Terklasifikasi'...
    Menyiapkan kunci asing...
    Menyiapkan alur kerja status default. ..
    Membuat grup default...
    Menyiapkan preferensi pengguna...

    Sepertinya kami belum menyiapkan administrator. Mungkin ini
    pertama kali Anda menggunakan Bugzilla, atau hak istimewa administrator Anda
    mungkin tidak sengaja terhapus.

    Masukkan alamat email administrator:


    Sekarang ikuti petunjuknya dan selesaikan penyiapan Anda (gunakan nilai Anda untuk jawabannya di sini!):

    Masukkan alamat email administrator:[email protected]
    Masukkan nama asli administrator:Der PCFreak
    Masukkan kata sandi untuk akun administrator:kata sandi admin
    Ketik ulang kata sandi untuk verifikasi:adminpassword
    [email protected] sekarang disiapkan sebagai administrator.


    Ketika semuanya berjalan dengan baik, Anda akan melihat:

    Membuat produk tiruan awal 'TestProduct'...

    Sekarang Anda telah menginstal Bugzilla, Anda harus mengunjungi halaman 'Parameter'
    (tertaut di footer akun Administrator) untuk memastikannya
    diatur sesuai keinginan - ini termasuk menyetel opsi 'urlbase' ke
    URL yang benar.
    checksetup.pl selesai.


    Pada titik ini kita hampir selesai. Jalankan baris berikut untuk mengomentari baris dalam file .htaccess yang dibuat oleh skrip instalasi Bugzilla:

    [[email protected] bugzilla]# sed -i 's/^Options -Indexes$/#Options -Indexes/g' ./.htaccess

    Konfigurasikan Apache untuk meng-host instalasi Bugzilla kami

    Apache masih belum tahu apa-apa tentang Bugzilla. Jadi mari kita buat file /etc/httpd/conf.d/bugzilla.conf dengan konten berikut untuk memperkenalkan situs web Bugzilla kita ke httpd.service.

    #/etc/httpd/conf.d/bugzilla.conf
    <VirtualHost *:80>

    DocumentRoot /var/www/html/bugzilla/
    </VirtualHost>
    <Directory /var/www/html/bugzilla>
    AddHandler cgi-script .cgi
    Options +Indexes +ExecCGI
    DirectoryIndex index.cgi
    AllowOverride Limit FileInfo Indexes
    </Directory>


    Setelah file dibuat, kita restart Apache agar perubahan diterapkan:

    [[email protected] bugzilla]# systemctl restart httpd.service

    Beralih kembali ke pengguna biasa

    Bekerja sebagai root tidak lagi diperlukan, Anda dapat menggunakan Sudo sekarang jika Anda membutuhkan hak akses root. Jadi jalankan perintah berikut untuk keluar dari shell root:

    [[email protected] bugzilla]# exit
    [[email protected] ~]$

    Uji penginstalan Bugzilla dengan browser Anda

    Gunakan browser dan buka http://ip-of-your-server/ (ganti ip-of-your-server dengan alamat ip server Anda). Anda sekarang akan melihat halaman Bugzilla alih-alih Halaman Pengujian Apache default.
    Sekarang Anda dapat masuk dengan kredensial yang Anda berikan ke skrip instalasi Bugzilla. Dalam How-To ini adalah:

    Alamat Email:[email protected]
    Password     :adminpassword


    Wah! Anda sekarang memiliki instalasi Bugzilla 5.0 yang berfungsi di CentOS 7. Sekarang Anda dapat melanjutkan untuk mengatur detail Bugzilla dalam antarmuka web Bugzilla.


    Cent OS
    1. Cara Menginstal PHP 7, 7.2 &7.3 Pada CentOS 7

    2. Cara Menginstal Java 11 &12 di CentOS 7

    3. Cara Menginstal Bugzilla di CentOS 6

    1. Cara Menginstal Wine 4.0 di CentOS 7

    2. Cara Menginstal Vim 8.2 di CentOS 7

    3. Cara Menginstal VirtualBox di CentOS 7

    1. Cara Menginstal Git di CentOS 8

    2. Cara Menginstal Docker di CentOS 8

    3. Cara Menginstal Java 8 &11 di Centos 8