Como fazer a instalação do Bacula e do Baculum?
Para a In All Web eu optei por instalar o Bacula e o Baculum no AlmaLinux8 e funcionou muito bem.
Mas vocês podem escolher qualquer outro Sistema Operativo.
Segue o passo-a-passo para a instalação do sistema de backup Bacula.
Instalação passo-a-passo
Visto ser um servidor virgem começamos por instalar o essencial à instalação do Bacula.
Primeiro fazemos uma atualização:
dnf update
E de seguida a instalação dos pacotes essenciais:
dnf install nano vim wget curl net-tools lsof bash-completion -y
Depois disso, visto que só irei usar o ipv4 desativei o ipv6 por questões de segurança, assim é menos uma possibilidade de entrarem no servidor mais importante da In All Web.
Criando o ficheiro 70-ipv6.conf:
nano /etc/sysctl.d/70-ipv6.conf
E colocando as seguintes configurações:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
Depois deixaremos desde o início a firewall configurada para o Bacula, precisamos das portas 9095 e 9096 para a interface web e API respetivamente, e as portas 9101, 9102 e 9103 usadas para que os backups sejam bem executados.
firewall-cmd --permanent --zone=public --add-port=9095/tcp
firewall-cmd --permanent --zone=public --add-port=9096/tcp
firewall-cmd --permanent --zone=public --add-port=9101-9103/tcp
E reiniciamos a firewall.
firewall-cmd --reload
Neste passo iremos começar a instalar e configurar o Postgresql, o Bacula pode ser usado com o MySql ou MariaDB mas a os programadores do Bacula aconselham o Postgresql, então seguiremos os conselhos de quem desenvolve a ferramenta.
dnf install postgresql-server -y
Executamos a base de dados:
postgresql-setup initdb
E agora habilitamos a execução da base de dados à inicialização do servidor, caso tenhamos de reiniciar o servidor.
systemctl enable --now postgresql
Depois da primeira etapa do postgresql concluída iremos então fazer as configurações na base de dados, para isso fazemos login com o user do postgresql:
su - postgres
Criamos o user bacula:
createuser bacula
E entramos na base de dados:
psql
Depois de estarmos dentro da base de dados vamos configurar o nosso user:
Não se esqueçam de escolher uma password segura, nesse exempo a password é “bacula” mas devem imperativamente mudá-la.
ALTER USER bacula PASSWORD 'bacula';
ALTER USER bacula LOGIN SUPERUSER CREATEDB CREATEROLE;
E saímos da base de dados com o seguinte comando:
\q
De seguida voltamos ao nosso user root com o seguinte comando:
exit
As configurações com o Postgresql ainda não acabaram, agora vamos configurar o IP da base de dados no seguinte ficheiro:
nano /var/lib/pgsql/data/postgresql.conf
E modificamos a seguinte variável:
Podem deixar “localhost” caso estejam na vossa máquina física, mas se estiverem num servidor dedicado ou VPS devem colocar o IP da máquina em questão.
listen_addresses = 'localhost'
Depois vamos configurar um outro parâmetro, onde mais uma vez irão colocar o vosso IP ou deixar “localhost”, depende do vosso caso.
Então abrimos o seguinte ficheiro:
nano /var/lib/pgsql/data/pg_hba.conf
E adicionamos estas linhas no final do ficheiro:
local bacula bacula md5
host all all 5.189.150.57/32 md5
Agora vamos verificar se está tudo corretamente configurado relativamente ao nosso host com o seguinte comando:
nano /etc/hosts
E temos essa configurações:
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
Se estiverem numa VPS ou servidor dedicado adicionem a seguinte linha:
9.999.999.99 subdominio.dominio.com subdominio
E pronto, já estamos com tudo pronto para passar efetivamente à instalação do Bacula.
Primeiramente teremos de ir buscar a key do bacula diretamente no website oficial, Bacula 4096 Distribution Verification key
Depois de estar no site iremos ver o seguinte URL.
Iremos copiar a ligação do mesmo para que possamos fazer o download das chaves com o wget.
Exemplo:
Copiem sempre o URL diretamente da página oficial para que tenham sempre as chaves atualizadas.
wget https://bacula.org/downloads/Bacula-4096-Distribution-Verification-key.asc
De seguida fazemos o import das chaves:
rpm --import Bacula-4096-Distribution-Verification-key.asc
Agora iremos criar o repositório para instalar o Bacula de forma mais precisa.
Façam o seguinte comando:
nano /etc/yum.repos.d/bacula.repo
E dentro desse ficheiro vão copiar e colar as seguintes configurações:
[Bacula-Community]
name=CentOS - Bacula - Community
baseurl=https://www.bacula.org/packages/(a vossa chave que receberam por e-mail)/bacula/rpms/13.0.1/el8/x86_64/
enabled=1
protect=0
gpgcheck=1
gpgkey=https://bacula.org/downloads/Bacula-4096-Distribution-Verification-key.asc
[baculumrepo]
name=Baculum CentOS 8 repository
baseurl=https://www.bacula.org/downloads/baculum/stable-11/centos8
gpgcheck=1
gpgkey=https://bacula.org/downloads/baculum/baculum.pub
enabled=1
Se repararem no primeiro baseurl o URL tem uma pequena descrição para colocarem naquele espaço a chave que receberam por e-mail.
Vou ensinar nos seguintes passos.
Primeiro irão na seguinte página:
https://www.bacula.org/bacula-binary-package-download/
E preencham todos os campos pedidos no formulário.
De seguida irão receber um e-mail com a chave, o e-mail será assim:
Como podem ver nele é fornecido um URL que vos redirecionará diretamente para os pacotes do Bacula e a chave está nessa mesma URL logo depois da última “/”.
https://www.bacula.org/packages/a-vossa-chave
Ao aceder a essa URL irá vos abrir a seguinte página:
E já está, terão assim tudo para que façam a instalação oficial com sucesso.
Depois de criado o repositório vamos fazer os updates para atualizar o mesmo.
yum update
E de seguida vamos finalmente instalar o Bacula:
yum install bacula-postgresql.x86_64 -y
Depois de instalado com sucesso iremos entrar de novo com o nosso user postgres para criar a base de dados e fazer mais umas configurações:
su - postgres
/opt/bacula/scripts/create_postgresql_database
/opt/bacula/scripts/make_postgresql_tables
/opt/bacula/scripts/grant_postgresql_privileges
exit
/opt/bacula/scripts/bacula start
E verificamos se realmente se executou
/opt/bacula/scripts/bacula status
Depois de verificar que está bem em execução já podemos abrir o console do Bacula com o seguinte comando:
/opt/bacula/bin/bconsole
Com o comando ‘help’ terão todos os comandos que poderão executar com o Bacula pela linha de comandos.
\q
E parabéns acabaram de instalar o Bacula console com sucesso.
Os ficheiros de configuração estão no seguinte destino:
cd /opt/bacula/bin/bconsole
Desta forma já conseguem fazer os backups, restauros e tudo mais a partir da linha de comandos, mas não é muito apelativo.
Por isso que iremos instala a parte gráfica na web, o Baculum.
Deixem nos comentários todas as vossas dúvidas e o que gostariam de ver mais aqui para que possam manter todos os vossos servidores e dos vossos clientes seguros e atualizados.