Configurando o Bacula usar TLS para criptografar conexões

 


VERSÃO ARQUIVADA

Bacula é um sistema de backup poderoso, código-fonte aberto que pode ser instalado no CentOS, Fedora e Red Hat (RHEL).

O write-up melhor da configuração inicial. Se você é não ainda configurar Bacula, por favor visite o site e siga as instruções excelentes. Em seguida, volte para configurar uma conexão TLS segura para seu servidor e clientes de backup.

Nota: Por favor, certifique-se de que você pode executar com êxito um backup antes de que você tentar habilitar TLS. Isto irá assegurar que qualquer problema que você encontrar é relacionado exclusivamente para a configuração do TLS e não algum outro problema.

As etapas envolvidas incluem configuração opções através do Webmin e via linha de comando. Enquanto o Webmin torna muito fácil controle Bacula, nem todas as opções de TLS são expostos através do Webmin, e não há nenhuma maneira para obter TLS para funcionar sem o uso de linha de comando.

Exemplos de nomes de computador utilizados neste documento

Servidor do Bacula: server1.example.com

Cliente do Bacula: client1.example.com


A respeito de autoridades de certificação

Você deve ser capaz de assinar os certificados que você irá emitir para cada um dos seus servidores e clientes de backup. Isto pode ser feito também através do uso de uma autoridade de certificado real como CAcert.org, ou você pode configurar seu próprio, autoridade de certificação privada no seu servidor Bacula.

Se você já tem sua própria autoridade de certificado, pule para a próxima seção sobre como criar os certificados e chaves para seu servidor (es) e clientes.

Criação de sua própria, autoridade de certificação privada

Execute o seguinte comando:

  1. Pressione enter para criar uma autoridade de certificação.
  2. Introduza uma frase-chave.
  3. Preencha os nomes de país, estado, cidade e organização (opcional — você pode apenas pressione enter para aceitar os padrões).
  4. IMPORTANTE: Quando pedi o nome”comum”, digite o FQDN (nome de domínio totalmente qualificado) do servidor no qual você está executando este comando (o servidor que será a sua autoridade de certificação). Usando os nomes neste documento de exemplo, você iria preencher o seguinte: server1.example.com
  5. Digite um endereço de e-mail para o administrador do servidor (opcional).
  6. O desafio senha e nome da empresa opcional podem ser deixados em branco. (Apenas pressione enter para aceitar os padrões.)

Isso criará um arquivo chamado CAcert no /etc/pki/CA / (há também uma chave particular criada chamado cakey.pem armazenados em /etc/pki/CA/private/./). O arquivo CAcert é o que você usará quando pediu para o “arquivo de autoridade do certificado TLS PEM” no bacula.

Você pode criar um diretório de certificados sob /etc/bacula para armazenar uma cópia deste arquivo e os outros certificados e chaves que você irá criar.


Criar um arquivo de certificado e a chave para seu servidor e clientes

Execute o seguinte comando uma vez para cada um dos clientes e o seu servidor bacula:

  1. Digite uma senha para o arquivo de chave que será criado.
  2. Preencha os nomes de país, estado, cidade e organização (opcional — você pode apenas pressione enter para aceitar os padrões).
  3. IMPORTANTE: O nome”comum” é o FQDN (nome de domínio totalmente qualificado) do computador que destina-se este arquivo de certificado e a chave. Usando nossos exemplos de nomes de computador, a primeira vez que você executar esse comando, você digitaria server1.example.com enquanto a segunda vez que você digitaria client1.example.com.
  4. O desafio senha e nome da empresa opcional podem ser deixados em branco.

O comando cria dois arquivos — newreq.pem (um arquivo de solicitação) e newkey.pem (um arquivo de chave de senha protegida).

Assinar o pedido de certificado

Execute o seguinte comando para assinar o arquivo newreq.pem:

  1. Digitar a senha que você atribuiu a keyfile na etapa anterior e escolha Y para assinar.

O certificado autoassinado é chamado newcert.pem.

Tira a senha do arquivo de chave para que possa ser usado pelo Bacula

O arquivo newkey.pem não pode ser usado pelo Bacula daemon, desde que o daemon não suporta arquivos protegidos por senha de chave. Felizmente, existe um comando fácil para tirar a senha. Execute o seguinte:

Isso cria um outro arquivo de chave, desta vez sem uma senha, chamada newkey-daemon.pem.

Renomear o pedido, certificado e arquivos de chave

Você deve renomear esses arquivos para refletir o computador para o qual foram criados. Tecnicamente você não usará o arquivo de solicitação de novo, mas eu recomendo mantê-lo por aí.

Um bom procedimento é para nomear os arquivos com o FQDN do computador para o qual foram criados.

Para server1.example.com, renomeie os arquivos como este:

  • newreq.pem > server1.example.com.req
  • newCert.pem > server1.example.com.crt
  • newkey.pem > server1.example.com.key
  • newkey-daemon.pem > server1.example.com-daemon.key

 

Copie os arquivos de certificado e a chave em lugares apropriados no servidor e cliente (s)

Um lugar onde esses arquivos podem ser mantidos é no diretório /etc/bacula. Há três arquivos usados pelo Bacula:

  • O arquivo de autoridade de certificado cacert.
  • O arquivo de chave de máquina.
  • O arquivo de certificado de máquina.

Configuração do Bacula

Enquanto o Webmin pode ser usado para definir algumas dessas configurações, a interface não está completa e você não será capaz de definir todas as opções. Portanto, os seguintes comandos exigem que você editar os arquivos de configuração do Bacula diretamente.

/etc/Bacula/Bacula-dir.conf

Na seção de diretório, adicione o seguinte:

Diretor de seção:

Seção de clientes (repita para cada cliente que você definiu). Ambos os computadores de exemplo “client1” e “server1” são clientes de backup para em nossa instalação Bacula:

/etc/Bacula/bconsole.conf

Este arquivo é usado pelo utilitário de bconsole para se comunicar com o Bacula. Este arquivo não pode ser editado através do Webmin, mas se estas opções não são preenchidas, o Webmin já não será capaz de gerenciar o Bacula.

/etc/Bacula/Bacula-SD.conf

O daemon de armazenamento no servidor deve ser configurado para usar TLS.

/etc/Bacula/Bacula-FD.conf (no cliente)

Nota: Este é onde o Webmin estraga tudo. Não faz sentido as opções de TLS na seção de diretor. Em vez disso, ele apenas adiciona a seção FileDaemon. No entanto, as opções de TLS devem ser listadas em ambos os lugares para este trabalho!

É isso! Reiniciar os daemons do Bacula, e você deve ser bom de ir!

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s