FreeBSD Cara Install Bugzilla dengan Apache24 dan SSL
· 2 min read · Label UnixBSD
Bugzilla yang ditulis oleh Terry Weissman pada tahun 1998 dalam bahasa pemrograman TCL dirasa sangat membantu para pengembang web dan administrator sistem untuk melacak berbagai masalah bug dalam program aplikasi. Minat yang luar biasa tersebut mendorong Terry Weissman untuk menyempurnakan kemampuan Bugzilla dan mengubahnya menjadi bahasa PERL serta menggunakan basis data MYSQL.
Yang lebih hebat lagi, Bugzilla akan memberikan laporan saat kita telah selesai melacak bug tersebut. Laporan Bugzilla ditulis dalam berbagai format seperti Atom, format iCalendor, dan lainnya. Format iCalendor digunakan saat Anda menggunakan fitur pelacakan waktu di Bugzilla. Ada lebih banyak format yang tersedia di Bugzilla seperti format yang dapat dicetak yang berisi rincian semua bug, format CSV yang dapat digunakan untuk mengimpor daftar bug ke dalam spreadsheet.
Artikel ini akan menjelaskan prosedur instalasi dan konfigurasi Bugzilla di FreeBSD. Dalam artikel ini, kita akan mengonfigurasi Bugzilla dengan Apache24 mod perl dan basis data server MySQL.
Dalam artikel ini, kami akan fokus pada konfigurasi Apache24 untuk pengaturan Bugzilla, dan kami akan berasumsi bahwa Anda telah mengaktifkan Apache24 dengan mod perl. Pertama, aktifkan modul Apache24 yang dibutuhkan oleh Bugzilla. Buka file /usr/local/etc/httpd.conf dan hapus tanda "#" pada modul berikut.
Kita lanjutkan dengan membuat direktori ssl, yang akan digunakan untuk menyimpan file-file ssl. Berikut cara membuat sertifikat SSL untuk Bugzilla.
Setelah sertifikat SSL berhasil dibuat, lanjutkan dengan mengedit berkas /usr/local/etc/apache24/extra/httpd-vhosts.conf. Hapus semua isi berkas di /usr/local/etc/apache24/extra/httpd-vhosts.conf dan ganti dengan skrip berikut.
Nama server sesuai dengan domain pada server FreeBSD Anda. Kemudian Anda mengaktifkan mod vhost di berkas /usr/local/etc/apache24/httpd.conf. Hapus tanda "#" pada skrip berikut.
Agar Bugzilla dapat digunakan bersama dengan MySQL Server bagi pengguna MySQL baru, hal ini juga dimaksudkan untuk meningkatkan keamanan pengguna Bugzilla, karena jika Bugzilla menggunakan user root MySQL maka akan sangat rentan terhadap penyusup.
Kita akan menggunakan perintah SQL GRANT untuk membuat user "Bugzilla". Perintah ini juga membatasi user "Bugzilla" untuk beroperasi di dalam database, dan hanya mengizinkan akun untuk terhubung dari "localhost". Berikut ini adalah cara membuat database Bugzilla dengan MySQL Server versi 8.
Skrip di atas adalah untuk membuat basis data "bugzilla_database", dan router adalah kata sandi root Server MySQL pada mesin FreeBSD saya. Setelah basis data Bugzilla dibuat, lanjutkan dengan skrip berikut.
Skrip di atas membuat pengguna Bugzilla dengan nama pengguna 'userzilla'@'localhost' dan kata sandi 'userzilla@123'.
Setelah itu, kita lanjutkan dengan menginstall p5-DBD-mysql.
Setelah itu buka file /usr/local/www/bugzilla/localconfig lalu edit skrip berikut sesuai dengan basis data Bugzilla yang telah kita buat dengan MySql Server di atas.
Untuk skrip lain di berkas /usr/local/www/bugzilla/localconfig, biarkan saja default, jangan ubah apa pun kecuali skrip di atas. Kemudian Anda menginstal modul Bugzilla, berikut cara menginstalnya.
Berikutnya adalah program pengujian modul perl untuk Bugzilla.
The final step is to reboot/restart the computer.
Bugzilla adalah utilitas web yang sangat efisien dan efektif yang digunakan untuk pelacakan bug. Namun, masih ada beberapa hal yang perlu ditingkatkan. Alat ini banyak digunakan oleh banyak pengembang dan administrator sistem di seluruh dunia. Bahkan banyak perusahaan terkenal menggunakan alat pelacakan bug berbasis web ini seperti Wikipedia dan Mozilla. Namun, ada juga banyak kekurangannya. Dengan meningkatnya persaingan di antara alat pengembangan web, bugzilla sudah lama hilang. Dengan antarmuka pengguna yang sudah lama, pengembang dan insinyur perangkat lunak tidak lagi menyukainya. Banyak fitur baru yang mudah diakses oleh alat pelacakan bug lainnya, tidak ada di bugzilla.
Yang lebih hebat lagi, Bugzilla akan memberikan laporan saat kita telah selesai melacak bug tersebut. Laporan Bugzilla ditulis dalam berbagai format seperti Atom, format iCalendor, dan lainnya. Format iCalendor digunakan saat Anda menggunakan fitur pelacakan waktu di Bugzilla. Ada lebih banyak format yang tersedia di Bugzilla seperti format yang dapat dicetak yang berisi rincian semua bug, format CSV yang dapat digunakan untuk mengimpor daftar bug ke dalam spreadsheet.
Artikel ini akan menjelaskan prosedur instalasi dan konfigurasi Bugzilla di FreeBSD. Dalam artikel ini, kita akan mengonfigurasi Bugzilla dengan Apache24 mod perl dan basis data server MySQL.
1. Konfigurasi Apache24 mod perl
Untuk menjalankan Bugzilla dengan server web Apache24, Anda harus menggunakan mod Perl. Untuk pembahasan lengkap tentang cara menginstal Apache24 dalam mode Perl, Anda dapat membaca artikel kami sebelumnya, tentang prose instalasi Apache24 di FreeBSD.Dalam artikel ini, kami akan fokus pada konfigurasi Apache24 untuk pengaturan Bugzilla, dan kami akan berasumsi bahwa Anda telah mengaktifkan Apache24 dengan mod perl. Pertama, aktifkan modul Apache24 yang dibutuhkan oleh Bugzilla. Buka file /usr/local/etc/httpd.conf dan hapus tanda "#" pada modul berikut.
LoadModule authn_socache_module libexec/apache24/mod_authn_socache.so
LoadModule socache_shmcb_module libexec/apache24/mod_socache_shmcb.so
LoadModule expires_module libexec/apache24/mod_expires.so
LoadModule ssl_module libexec/apache24/mod_ssl.so
LoadModule cgi_module libexec/apache24/mod_cgi.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
root@ns1:~ # cd /usr/local/etc/apache24/
root@ns1:/usr/local/etc/apache24 # mkdir ssl && cd ssl
root@ns1:/usr/local/etc/apache24/ssl # openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /usr/local/etc/apache24/ssl/bugzilla.key -out /usr/local/etc/apache24/ssl/bugzilla.crt
Generating a RSA private key
.....................................................................................+++++
...................................+++++
writing new private key to '/usr/local/etc/apache24/ssl/bugzilla.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:id
State or Province Name (full name) [Some-State]:jawa barat
Locality Name (eg, city) []:bekasi
Organization Name (eg, company) [Internet Widgits Pty Ltd]:mediatama
Organizational Unit Name (eg, section) []:networking
Common Name (e.g. server FQDN or YOUR name) []:unixexplore.com
Email Address []:datainchi@gmail.com
root@ns1:/usr/local/etc/apache24/ssl # chmod 600 *
Setelah sertifikat SSL berhasil dibuat, lanjutkan dengan mengedit berkas /usr/local/etc/apache24/extra/httpd-vhosts.conf. Hapus semua isi berkas di /usr/local/etc/apache24/extra/httpd-vhosts.conf dan ganti dengan skrip berikut.
<VirtualHost *:80>
ServerName unixexplore.com
ServerAlias www.unixexplore.com
DocumentRoot /usr/local/www/bugzilla
Redirect permanent / https://unixexplore.com/
</VirtualHost>
Listen 443
<VirtualHost _default_:443>
ServerName unixexplore.com
DocumentRoot /usr/local/www/bugzilla
ErrorLog "/var/log/mybugzilla.me-error_log"
CustomLog "/var/log/mybugzilla.me-access_log" common
SSLEngine On
SSLCertificateFile /usr/local/etc/apache24/ssl/bugzilla.crt
SSLCertificateKeyFile /usr/local/etc/apache24/ssl/bugzilla.key
<Directory "/usr/local/www/bugzilla">
AddHandler cgi-script .cgi
Options +ExecCGI
DirectoryIndex index.cgi index.html
AllowOverride Limit FileInfo Indexes Options
Require all granted
</Directory>
</VirtualHost>
Nama server sesuai dengan domain pada server FreeBSD Anda. Kemudian Anda mengaktifkan mod vhost di berkas /usr/local/etc/apache24/httpd.conf. Hapus tanda "#" pada skrip berikut.
LoadModule vhost_alias_module libexec/apache24/mod_vhost_alias.so
Include etc/apache24/extra/httpd-vhosts.conf
2. Cara Membuat Database Bugzilla
Setelah selesai mengonfigurasi Apache24, lanjutkan dengan membuat basis data Bugzilla. Dalam artikel ini kita akan membuat basis data Bugzilla dengan MySQL Server 8, dalam artikel ini kita tidak akan menjelaskan cara menginstal MySQL Server 8. Anda dapat membaca artikel sebelumnya yang menjelaskan cara mengonfigurasi MySQL Server di FreeBSD, yaitu "Membangun MySQL dan MariaDB di OpenBSD - Instalasi dan Konfigurasi".Agar Bugzilla dapat digunakan bersama dengan MySQL Server bagi pengguna MySQL baru, hal ini juga dimaksudkan untuk meningkatkan keamanan pengguna Bugzilla, karena jika Bugzilla menggunakan user root MySQL maka akan sangat rentan terhadap penyusup.
Kita akan menggunakan perintah SQL GRANT untuk membuat user "Bugzilla". Perintah ini juga membatasi user "Bugzilla" untuk beroperasi di dalam database, dan hanya mengizinkan akun untuk terhubung dari "localhost". Berikut ini adalah cara membuat database Bugzilla dengan MySQL Server versi 8.
root@ns1:~ # mysql -u root -p -e "create database bugzilla_database"
Enter password: router
root@ns1:~ # mysql -u root -p -e "show databases"
Enter password: router
+--------------------+
| Database |
+--------------------+
| bugdb |
| bugzilla_database |
| bugzilla_demo |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
root@ns1:~ # mysql -u root -p
Enter password: router
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 14
Server version: 8.0.33 Source distribution
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
root@localhost [(none)]> create user 'userzilla'@'localhost' IDENTIFIED BY 'userzilla@123';
Query OK, 0 rows affected (0.05 sec)
root@localhost [(none)]> grant all privileges on bugzilla_database.* to 'userzilla'@'localhost';
Query OK, 0 rows affected (0.04 sec)
root@localhost [(none)]> flush privileges;
Query OK, 0 rows affected (0.01 sec)
root@localhost [(none)]> \q
Bye
3. Proses Instalasi dan Konfigurasi Bugzilla
Apache24 telah dikonfigurasi dan kita telah membuat basis data Bugzilla, kemudian kita lanjutkan dengan menginstal dan mengonfigurasi program Bugzilla. Berikut cara menginstal Bugzilla di FreeBSD.root@ns1:~ # cd /usr/ports/devel/bugzilla50
root@ns1:/usr/ports/devel/bugzilla50 # make install clean
====> Compressing man pages (compress-man)
===> Installing for bugzilla50-5.0.4_3
===> Checking if bugzilla50 is already installed
===> Registering installation for bugzilla50-5.0.4_3
Installing bugzilla50-5.0.4_3...
Bugzilla has now been installed. To quick setup you have to:
1. Create database user who has rights on bugs database manipulation
by following mysql commands (for MySQL 4.0 or later):
GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
CREATE TEMPORARY TABLES, DROP, REFERENCES
ON <database>.* TO <dbuser>@<host>
IDENTIFIED BY '<password>';
FLUSH PRIVILEGES;
where <database> is a bugs database name; <dbuser> is a bugs database
owner; <host> is a host there bugzilla is being setup;
<password> is a database owner's password;
2. Change working directory to /usr/local/www/bugzilla
3. Run "./checksetup.pl" script as root user
4. Read output carefully and follow all instructions
For more complete database setup and post-installation instructions
and security tips/notes please read "Bugzilla Guide" in
/usr/local/share/doc/bugzilla/en/html/ (chapter 2: "Installing Bugzilla")
For upgrades:
0. Back up your data.
1. Run the command inside /usr/local/www/bugzilla
find . -mindepth 2 -name .htaccess -exec rm -f {} \;
2. Run "./checksetup.pl" inside /usr/local/www/bugzilla. You may need to
run it several times.
3. Restart your Web server, especially if you're using mod_perl: this
will save you from a number of troubles.
root@ns1:~ # cd /usr/ports/databases/p5-DBD-mysql
root@ns1:/usr/ports/databases/p5-DBD-mysql # make install clean
Setelah itu buka file /usr/local/www/bugzilla/localconfig lalu edit skrip berikut sesuai dengan basis data Bugzilla yang telah kita buat dengan MySql Server di atas.
$db_host = 'localhost';
$db_name = 'bugzilla_database';
$db_user = 'userzilla'@'localhost';
$db_pass = 'userzilla@123';
root@ns1:~ # cd /usr/local/www/bugzilla
root@ns1:/usr/local/www/bugzilla # /usr/local/bin/perl install-module.pl --all
Berikutnya adalah program pengujian modul perl untuk Bugzilla.
root@ns1:/usr/local/www/bugzilla # ./checksetup.pl
root@ns1:~ # reboot
Silahkan Berkomentar, Kakak...! Bunda...!
Posting Komentar