[Tutorial] Bacula no Fedora 32

Vamos Criar um servidor de backup com o Bacula no Fedora 32

Pra começar vamos iniciar a instalação do Fedora Server 32

Bora lá

Escolha o idioma que desejar , no caso vou em Português do Brasil

Vamos particionar nosso disco

Vá em "Destino de Instalação "
Após marque a opção "Personalizada" e click em "Pronto" bem a acima

Selecione o ponto de Montagem pra usar o esquema de particionamento no seguinte :
" Partição Padrão "

E Vamos Criar o nosso particionamento

Criamos uma Partição /boot com 500MB

Sempre é criar o sistema de arquivos em xfs eu sempre uso ext4 , só alterar
e escolher a seu gosto

Vamos adicionar o / com 50GB

Eu sempre gosto de usar sistema de arquivos em ext4 , mas tu podes usar da sua preferencia

Vamos adicionar uma partição para os backups com 450GB
no caso vamos criar um /backup

bom ele não criou do tamanho que eu gostaria

Vamos ajustar o sistema de arquivos e a Capacidade que desejamos

só clickar no sinal de mais ( + ) que ele atualiza pra ti

E por ultimo a partição swap

Bom nesse caso não precisa definir a capacidade , deixa em branco pra usar toda a capacidade de sobrou

Pronto , e nosso layout de particionamento esta pronto

Agora vamos para a configuração de rede Vá em
"Rede & nome de host"

Vá em configurar , onde vamos definir um endereço ip fixo , servidor sempre é recomendável ter um endereço ip fixo

Vá na guia "Configuração IPv4" selecione "Método" para Manual
e adicione o endereço ip e dns como mostra a imagem a baixo

e click em salvar

Agora juste no nome do seu servidor e click em "Aplicar"

No menu principal vá em "Configuração do Usuário"
Vamos definir a senha de root

Como é um servidor de backup eu sempre uso o usuário root

e Pronto

só iniciar a instalação

Após finalizar a instalação só reiniciar e pronto
já podes logar , temos a alternativa de usar o console , conectar via ssh ou melhor ainda podemos acessar via web o nosso servidor

Agora vamos logar no servidor , eu vou usar via interface web
acesso pelo endereço
http://:9090

Vamos acessar agora o terminal

Bom podemos agora efetuar tudo no terminal , vamos lá

Primeira coisa vamos efetuar o update do Fedora

# dnf update -y

antes de reiniciar caso não saiba usar o SELinux , podes desativar

# vim /etc/selinux/config

e Mude

de SELINUX=enforcing

Para SELINUX=disabled

só reiniciar o Servidor agora .

Bom Vamos inciar a instalação do bacula onde vamos instalar a útima versão que no caso vamos baixar o código fonte e compilar o bacula

Vamos desativar o firewalld . caso saiba usar pode usar sem problemas

# systemctl stop firewalld

# systemctl disable firewalld

Vamos instalar os pacotes para compilar o bacula

# dnf install vim make gcc gcc-c++ openssl-devel perl \
mc mtx readline-devel lzop lzo lzo-devel zlib-devel \
sudo gawk gdb libacl-devel lsscsi drpm wget -y

Vamos instalar agora o banco de dados MariaDB , tu podes usar o Postgresql se desejar

# dnf install mariadb-server mariadb-devel mariadb-server-utils \
 mariadb-embedded -y

Agora vamos iniciar o serviço do Mariadb e ativar na inicialização

# systemctl start mariadb.service
# systemctl enable mariadb.service

Vamos definir a senha de root , desativar usuário anonimo

Execute o comando

# mysql_secure_installation

e Vá respondendo Y ou N

# mysql_secure_installation

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] Y
Enabled successfully!
Reloading privilege tables..
 ... Success!


You already have your root account protected, so you can safely answer 'n'.

Change the root password? [Y/n] Y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n
 ... skipping.

By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] Y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Vamos baixar a última versão do bacula que no caso é a versão 9.6.3

# wget --no-check-certificate 
https://sourceforge.net/projects/bacula/files/bacula/9.6.3/bacula-9.6.3.tar.gz

Descompacte e acesse o diretório:

# tar xvzf bacula-9.6.3.tar.gz
# cd bacula-9.6.3

Agora vamos para os comandos de compilação
onde já podemos definir o usuário do banco e também a senha, diretório onde irá ficar as conf do Bacula, plugins etc.

# ./configure --enable-smartalloc --with-mysql --with-db-user=root --with-db-password=fedora --with-db-port=3306 --with-openssl --with-readline=/usr/include/readline --sysconfdir=/etc/bacula --bindir=/usr/bin --sbindir=/usr/sbin --with-scriptdir=/etc/bacula/scripts --with-plugindir=/etc/bacula/plugins --with-pid-dir=/var/run --with-subsys-dir=/etc/bacula/working --with-working-dir=/etc/bacula/working --with-bsrdir=/etc/bacula/bootstrap --with-systemd --disable-conio --disable-nls --with-logdir=/var/log/bacula

# make -j 8

# make install

Acesse o diretório de scripts do Bacula pra configurar o banco de dados:

# cd /etc/bacula/scripts

E execute os scripts:

# ./create_mysql_database -u root -p
# ./make_mysql_tables -u root -p
# ./grant_mysql_privileges -u root -p

inicia o bacula

# bacula start

só digitar bconsole

# bconsole

Feito agora esta instalado o bacula no fedora

Vamos instalar o bacula-gui , uma versão web e vamos instalar via repositório mesmo

Importe a chave

# rpm --import http://bacula.org/downloads/baculum/baculum.pub

Vamos adicionar o repositório

echo "
[baculumrepo]
name=Baculum Fedora repository
baseurl=http://bacula.org/downloads/baculum/stable/fedora
gpgcheck=1
enabled=1" > /etc/yum.repos.d/baculum.repo

Vamos instalar

# dnf install baculum-common baculum-api baculum-api-httpd baculum-web baculum-web-httpd

Vamos adicionar o arquivo baculum no sudoers

echo "Defaults:apache "'!'"requiretty
apache  ALL=NOPASSWD:  /usr/sbin/bconsole
apache  ALL=NOPASSWD:  /usr/sbin/bdirjson
apache  ALL=NOPASSWD:  /usr/sbin/bsdjson
apache  ALL=NOPASSWD:  /usr/sbin/bfdjson
apache  ALL=NOPASSWD:  /usr/sbin/bbconsjson" > /etc/sudoers.d/baculum

Inicia o apache e ative na inicialização

# systemctl start httpd
# systemctl enable httpd

Primeiro configure a API através da URL http://:9096/ (admin, admin). É possível utilizar o idioma Português e testar cada uma das configurações feitas. Será definida uma credencial exclusiva de acesso à API (usuário e senha ou oauth), de acordo com as telas seguintes.

Então, acesse a interface Baculum (http://localhost:9095/ – admin, admin) e configure também o idioma, acesso ao banco de dados do Bacula, à API Baculum e credencial da Interface Baculum, conforme a seguir:

Pronto , podes administrar pela web

Guia de referencia :
bacula.lat/

Comentários