Instalação do Bacula-Web com PostgreSQL no Debian Wheezy
O Bacula-Web é uma ferramenta open source com licença (GPL v 2.0) que faz parte do projeto comunitário do Bacula.
A principal vantagem do Bacula-Web é a sua simplicidade de instalação e configuração e é instalação totalmente web sem a necessidade de instalação de um cliente local.
O Bacula-Web prove muitas informações a respeito dos seus últimos backups, restores, volumes pools e etc.
Se você estiver interresado em uma lista de todos os recursos disponíveis você vai conseguir mais informações na seção documentação do projeto em: Documentação
A única coisa que é necessário para o bacula-web trabalhar é configurar um servidor web com suporte ao banco de dados de catalogo do Bacula.
O Bacula-Web GUI (graphical user interface) é em sua maior parte escrita em PHP com isso é compativel com o seu SO favorito como Red Hat, Centos, Fedora, O Ubuntu, Debian, Gentoo, FreeBSD, etc.
Algumas telas de exemplo do Bacula-web.
DashBoard
Relatório de Job
Relatório de Cliente
Relatório de Jobs
Relatório de logs
Relatório de pool e volumes
Página de teste
Aqui vamos efetuar a instalação dessa ferramenta utilizando o banco de dados PostgreSQL.
O que vamos utilizar:
- Debian Wheezy: Servidor Bacula
- IP: 192.168.1.200
- Banco de dados: bacula
- Usuário do banco: bacula
- Host: localhost
- Senha do banco Bacula: YfDgtzJ2gxbCainCXzAstCinyUL1JeFncKI
Vamos fazer a instalaçao do servidor web e as dependências para o Bacula-web
aptitude install apache2 php5 php5-pgsql php5-gd -y
Agora vamos criar um diretório para armazenar o bacula-web
mkdir /var/www/bacula-web
Agora vamos acessar o diretório
cd /var/www/bacula-web
Agora vamos obter o bacula-web
wget http://wiki.douglasqsantos.com.br/Downloads/bacula/bacula-web-latest.tgz
Agora vamos desempacotar o bacula-web
tar -xvf bacula-web-latest.tgz
Agora vamos ajustar as permissões do bacula-web
chown -R www-data:www-data /var/www/bacula-web
Agora vamos remover o pacote do bacula-web
rm -rf bacula-web-latest.tgz
Agora vamos criar o arquivo de conexão com o banco de dados
vim /var/www/bacula-web/application/config/config.php <?php // Show inactive clients (false by default) $config['show_inactive_clients'] = true; // Hide empty pools (displayed by default) $config['hide_empty_pools'] = false; // Jobs per page (Jobs report page) $config['jobs_per_page'] = 25; // Translations $config['language'] = 'en_US'; // en_US -> English - maintened by Davide Franco (bacula-dev@dflc.ch) // es_ES -> Spanish - Mantained by Juan Luis Franc�s Jim�nez // it_IT -> Italian - Mantained by Gian Domenico Messina (gianni.messina AT c-ict.it) // fr_FR -> French - Mantained by Morgan LEFIEUX (comete AT daknet.org) // de_DE -> German - Mantained by Florian Heigl // sv_SV -> Swedish - Maintened by Daniel Nylander (po@danielnylander.se) // pt_BR -> Portuguese Brazil - Last updated by J. Ritter (condector@gmail.com) // nl_NL -> Dutch - last updated by Dion van Adrichem // PostgreSQL bacula catalog $config[0]['label'] = 'Prod Server'; $config[0]['host'] = 'localhost'; $config[0]['login'] = 'bacula'; $config[0]['password'] = 'YfDgtzJ2gxbCainCXzAstCinyUL1JeFncKI'; $config[0]['db_name'] = 'bacula'; $config[0]['db_type'] = 'pgsql'; $config[0]['db_port'] = '5432'; ?>
Agora vamos criar o virtualhost para o bacula-web
vim /etc/apache2/sites-available/bacula-web <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName bacula-web.douglasqsantos.com.br DocumentRoot /var/www/bacula-web <Directory /> Options +FollowSymLinks AllowOverride All </Directory> <Directory /var/www/bacula-web> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Order allow,deny allow from all AuthUserFile /etc/apache2/access/bacula-htpasswd AuthName "Bacula" AuthType Basic require valid-user </Directory> ErrorLog /var/log/apache2/bacula-web.douglasqsantos.com.br-error.log LogLevel warn CustomLog /var/log/apache2/bacula-web.douglasqsantos.com.br-access.log combined </VirtualHost>
Como o bacula-web não tem uma tela de login vamos criar um usuário e senha para autenticar via htaccess
Vamos criar o diretório para armazenar o usuário e senha
mkdir /etc/apache2/access/
Agora vamos criar o arquivo que vai armazenar o usuário e senha
htpasswd -cdb /etc/apache2/access/bacula-htpasswd bacula senha134*
Agora vamos desabilitar o virtualhost default
a2dissite default
Agora vamos habilitar o virtualhost do bacula-web
a2ensite bacula-web
Agora vamos reiniciar o apache
/etc/init.d/apache2 restart
Agora já podemos acessar o bacula-web em http://192.168.1.200 ou em http://bacula-web.douglasqsantos.com.br se você configurou o dns.
Vai ser solicitado um usuário:bacula e a senha: senha134*