Configurando o BackUpPC

De Wiki do Ouro Minas Palace Hotel
Revisão de 11h01min de 26 de janeiro de 2019 por 2532252>Jefferson
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

Ambiente de Implementação

# cat /etc/redhat-release 
CentOS release 5.8 (Final)
#
# uname -a
Linux xxxx.xxxxxx.br 2.6.18-274.3.1.el5PAE #1 SMP Tue Sep 6 20:56:05 EDT 2011 i686 i686 i386 GNU/Linux
#
# df -h
Sist. Arq.            Tam   Usad Disp  Uso% Montado em
/dev/sda2              19G  6,7G   12G  37% /
/dev/sda4             432G   24G  386G   6% /dados
/dev/sda1              99M   28M   67M  30% /boot
tmpfs                 2,0G     0  2,0G   0% /dev/shm
#
# yum info BackupPC
Name       : BackupPC
Arch       : i386
Version    : 3.2.1
Release    : 10.el5


Configuração do ambiente do Apache para acesso a interface do BackupPC

Configurando uma senha de acesso a interface de administracão

# htpasswd -c /etc/BackupPC/apache.users cancella
New password: 
Re-type new password: 
Adding password for user cancella

Ajustando a configuração do apache para aceitar conexões a partir de enderecos específicos

# vi /etc/httpd/conf.d/BackupPC.conf
<Directory       /usr/share/BackupPC/>
   AuthType Basic
   AuthUserFile /etc/BackupPC/apache.users
   AuthName "BackupPC"
   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAll>
       Require valid-user
       <RequireAny>
         Require local
       </RequireAny>
     </RequireAll>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     order deny,allow
     deny from all
     allow from 127.0.0.1
     allow from 201.XX.XXX.XX (Seu IP aqui)
     allow from ::1
     require valid-user
   </IfModule>
</Directory>

Alias           /BackupPC/images        /usr/share/BackupPC/html/
ScriptAlias     /BackupPC               /usr/share/BackupPC/sbin/BackupPC_Admin
ScriptAlias     /backuppc               /usr/share/BackupPC/sbin/BackupPC_Admin

Reinicie o serviço do apache

# service httpd restart
# chkconfig backuppc on
# service backuppc start
Starting BackupPC:                                         [  OK  ]

Acesso a interface WEB do BackupPC

http://189.115.142.251/BackupPC

Configuracão da resolucão de nomes do Linux

Configurar o /etc/hosts e /etc/resolv.conf para realizar a resolução de nomes de forma correta da rede

Configuração da resolução de nomes do BackupPC

Entradas adicionadas no arquivo hosts do BackupPC para este ambiente. Na interface gráfica basta realizar um refresh para refletir as alteracões (F5)

# vi /etc/BackupPC/hosts
localhost   0       cancella
tokio       0       cancella

Configurando o acesso remoto a servidores Linux/Unix

Os comandos podem ser o tar, gtar, e rsync com ssh, para isto deve ser gerada a chave pública com a conta local backuppc e distribuido para os servidores remotos permitindo a execução dos comandos com a permissão de root

Gerando a chave publica para a conta backuppc

Este procedimento deverá ser feito uma única vez, importante testar o acesso sem senha, se for gerada uma nova chave ela terá que ser redistribuida novamente em substituição a anterior

Acessando o Bash do backuppc

# su - -s /bin/bash backuppc
$ ssh-keygen -t rsa 


Distribuindo a chave gerada

# su - -s /bin/bash backuppc
$ scp -P 892 .ssh/id_rsa.pub root@10.25.10.4:/root/id_rsa.pub-backuppc
$ ssh -p 892 root@10.25.10.4 "cat /root/id_rsa.pub-backuppc >> /root/.ssh/authorized_keys"
$ ssh -p 892 root@10.25.10.4 "rm /root/id_rsa.pub-backuppc" 

Teste de acesso

$ ssh -p 892 root@10.25.10.4

Distribua a chave id_rsa.pub para os outros servidores

Personalização do ambiente

Todas as configurações do ambiente são feitas no arquivo /etc/BackupPC/config.pl

Localização dos dados - HOME do backuppc

Por padrão o BackupPC utiliza o diretório /var/lib/BackupPC como área de armazenamento e controle das cópias, se for necessário alterar

$Conf{TopDir}      = '/dados/BackupPC/';

Ajutando o ambiente e as permissões

# mkdir /dados/BackupPC
# mv /var/lib/BackupPC/* /dados/BackupPC
# chown -R backuppc:backuppc /dados/BackupPC
# vi /etc/updatedb.conf
PRUNEPATHS = "/afs /media /net /sfs /tmp /udev /var/spool/cups /var/spool/squid /var/tmp /var/lib/BackupPC /dados/BackupPC"


Conta com direitos administrativos e de login

--
$Conf{CgiAdminUserGroup} = 'admin';
$Conf{CgiAdminUsers}     = 'admin';
--

Para o acesso via interface web, crie a conta admin para login, descrito em /etc/httpd/conf.d/BackupPC

# htpasswd -c /etc/BackupPC/apache.users admin

Ajustando idioma

--
$Conf{Language} = 'pt_br';
--

Configurando o rsync para usar outra porta

--
$Conf{RsyncClientCmd} = '$sshPath -p 9282 -q -x -l root $host $rsyncPath $argList+';
--

Configurando a conta backuppc para cópias do servidor local

# visudo
...
#Defaults    requiretty
... 
backuppc ALL = NOPASSWD: /bin/tar, /bin/gtar
...
:x

Configurando o comando TAR para localhost - Interface WEB

XferMethod = tar
TarShareName = /etc
TarClientCmd = /usr/bin/sudo $tarPath -c -v -f - -C $shareName+ --totals
TarClientRestoreCmd = /usr/bin/sudo $tarPath -x -p --numeric-owner --same-owner -v -f - -C $shareName+

Definindo a área a ser copiada RSYNC

No menu do backuppc selecione o servidor a ser configurado no menu da lateral esquerda

  • Em HOSTS selecione o nome do servidor
  • Em Editar Configurações selecione o link "Transferência"
  • Em "Define RsyncShareName" selecione os diretórios a serem copiados
  • Clique no botão "Salvar" que fica na área superior "Editor de configurações do Host"

Configurando o ambiente para cópias de servidor Windows remoto

Neste exemplo para realizar backup de um compartilhamento administrativo "F$"

XferMethod = smb
SmbShareName = F$
SmbClientFullCmd = $smbClientPath \\$host\$shareName  -W DOMINIO -U Administrator%** -E -N -d 1 -c tarmode\ full -Tc$X_option - $fileList
SmbClientIncrCmd = $smbClientPath \\$host\$shareName  -W DOMINIO -U Administrator%** -E -N -d 1 -c tarmode\ full -TcN$X_option $timeStampFile - $fileList
SmbClientRestoreCmd = $smbClientPath \\$host\$shareName  -W DOMINIO -U Administrator%** -E -N -d 1 -c tarmode\ full -Tx -

Teste de autenticação: Windows 2003 Server

Neste ambiente o servidor Windows 2003 é membro de um domínio AD, aqui descrito como DOMINIO, a máquina Linux que irá executar o BackupPC não pertence a nenhum domínio específico.

Teste de conexão para listar conexões e compartilhamentos

# smbclient -L MAQUINA -W DOMINIO -U Administrator%***senha***

Conexão ao disco compartilhado administrativamente para execução do backup automático

# smbclient //MAQUINA/F$ -W DOMINIO -U Administrator%***senha***


Danton Cancella (31-8456-6829) (discussão)