Cool Solution - Setting up Bugzilla with LDAP authentication

From Univention Wiki

Revision as of 13:23, 8 March 2016 by Rehberg (talk | contribs)
Jump to: navigation, search
Produktlogo UCS Version 4.1

Note: Cool Solutions are articles documenting additional functionality based on Univention products. Packages provided by a Cool Solutions Repository are built by Univention, but will not be maintained. Not all of the shown steps in the article are covered by Univention Support. For questions about your support coverage contact your contact person at Univention before you want to implement one of the shown steps.

Also regard the legal notes at Terms of Service.
Note: This article is not yet reviewed.


First things first prepare your system with the following packages:

univention-install mysql-server
univention-install make gcc libapache2-mod-perl2

The next step is, to create a database and a database user. It's necessary to create Bugzilla templates later on.

mysql -uroot -p$(cat /etc/mysql.secret)
mysql> CREATE USER 'bugs'@'localhost' IDENTIFIED BY  'your_own_passwd';
mysql> CREATE DATABASE `bugs`;
mysql> GRANT ALL PRIVILEGES ON  `bugs` . * TO  'bugs'@'localhost';
mysql> exit

Create a new file (e.g bugzilla) to setup a new website.

vim /etc/apache2/sites-available/bugzilla
<Directory /var/www/bugzilla/>
               AddHandler cgi-script .cgi
               Options +Indexes +ExecCGI
               DirectoryIndex index.cgi
               AllowOverride All
</Directory>

The following command enables the new website.

a2ensite bugzilla
service apache2 reload

Please download the latest version of bugzilla at: [1]. Unzip the file and move it to /var/www

wget https://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-5.0.2.tar.gz
tar xfz bugzilla-5.0.2.tar.gz
mv bugzilla-5.0.2 bugzilla
chown -R www-data.www-data bugzilla
mv bugzilla /var/www/
cd /var/www/bugzilla

Execute the following command to check, if every needed module is installed. After the check is done, run the displayed command, to install or upgrade all modules, which are necessary.

./checksetup.pl --check-modules
/usr/bin/perl install-module.pl --all

If the installation was succesfully, run the following script to create a bugzilla template.

./checksetup.pl

Chechsetup.pl create a new file named localconfig. Please open this file and change the values as follow:

vim ./localconfig
$webservergroup = 'www-data';
$db_driver = 'mysql';
$db_host = 'localhost';
$db_name = 'bugs';
$db_user = 'bugs';
$db_pass = 'your_own_passwd';

By default, words must be at least four characters in length in order to be indexed by MySQL's full-text indexes. This causes a lot of Bugzilla specific words to be missed, including "cc", "ftp" and "uri".

It's useful to add the following line in /etc/mysql/my.conf in the [mysqld] section

vim /etc/mysql/my.cnf

[mysqld]
 # Allow small words in full-text indexes
 ft_min_word_len=2

At least run the following command again and configure a Bugzilla administrator

cd /var/www/bugzilla
./checksetup.pl


Enter the e-mail address of the administrator: muster@example.com
Enter the real name of the administrator: mmuster
Enter a password for the administrator account:
Personal tools