Implantando o Nagios em HTTP Seguro (HTTPS)

Prezados, no trabalho resolvemos catalogar a implantação de alguns serviços para assegurar o funcionamento destes e aumentar a produtividade na recuperação de desastres e ou migração de hardware. Enfim, segue abaixo a documentação que fiz e adaptei para postar como artigo aqui na comunidade.

[ Hits: 56.757 ]

Por: Rafael Bruno de Almeida em 12/08/2009


OpenSSL 0.9.8e



Utilizaremos o OpenSSL para nos gerar os certificados e chaves para que o site do Nagios funcione em http seguro (https), no meu cenário isto é extremamente necessário, recomendo a todos, porém caso não veja necessidade, pule esta parte do processo.

É importante falar também que como é um sistema de utilização interna, eu não possuo a necessidade de compra de um certificado válido, portanto eu mesmo decidi gerá-lo por conta própria.

Descompacte os arquivos e entre no diretório:

# tar -zxf openssl-0.9.8e.tar.gz
# cd openssl-0.9.8e


Compilando:

# ./config --prefix=/usr/local/open-ssl
# make
# make install


Abaixo estão descritos os passos para a geração das chaves e certificados que o Apache necessita para trabalhar em http seguro (https), não possuo amplos conhecimentos em certificados e chaves para a WEB, portanto, me referenciei em um artigo encontrado na própria comunidade:
E também na documentação do site dos próprios desenvolvedores do serviço:
Abaixo vou descrever os comandos que utilizei e se necessitarem de mais detalhes por favor visualizem o artigo ou a documentação acima, pois lá o nível de detalhes no que diz respeito a certificação na WEB são maiores.

Entre no diretório onde criaremos as chaves:

# cd /etc/ssl/private/

Gerando a chave para a criação dos certificados:

# openssl genrsa -des3 -out nome_chave.key 2048

Resultado:

Generating RSA private key, 2048 bit long modulus
...................+++
...................+++
e is 65537 (0x10001)
Enter pass phrase for nome_chave.key: senha
Verifying - Enter pass phrase for nome_chave.key: senha

Gerando a "requisição de certificado" - arquivo onde estarão os dados dos certificados gerados por este servidor:

# openssl req -new -key nome_chave.key -out req.cert.csr

Resultado:

Enter pass phrase for nome_chave.key: senha
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:BR
State or Province Name (full name) [Some-State]:Minas Gerais
Locality Name (eg, city) []:Belo Horizonte
Organization Name (eg, company) [Internet Widgits Pty Ltd]: Nome da Empresa Responsável
Organizational Unit Name (eg, section) []: Organização
Common Name (eg, YOUR name) []: Nome do Servidor
Email Address []:responsável@exemplo.com.br

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: Lembrete para senha
An optional company name []: Sigla do nome da empresa

Necessitamos agora fazer com que a chave funcione sem a necessidade da digitação de sua senha, pois sem esta configuração, a senha utilizada na criação da chave deverá ser fornecida toda vez que iniciarmos o nosso servidor WEB. Abaixo segue as linhas de comandos necessárias para que isto seja possível.

Gerando um arquivo com senha embutida:

# openssl rsa -in nome_chave.key -out nome_chave.key.insecure

Resultado:

Enter pass phrase for nome_chave.key: senha
writing RSA key

Realize um backup da chave original:

# mv nome_chave.key nome_chave.backup

Faça com que a chave com senha embutida passe ser a chave principal:

# mv nome_chave.key.insecure nome_chave.key

Gerando o certificado para o site do Nagios, com validade de 1 ano, com base nas informações do arquivo de "requisição de certificados" (req.cert.csr) e na nossa chave com senha embutida (nome_chave.key):

# openssl x509 -req -days 365 -in req.cert.csr -signkey nome_chave.key -out nagios.exemplo.com.br.crt

Mova o certificado para o diretório de certificados do servidor:

# mv nagios.exemplo.com.br.crt /etc/ssl/certs/

Enfim, com a(s) chave(s) e certificado(s) gerado(s), podemos passar para o próximo passo, que será a configuração do servidor http (Apache), abaixo seguem os caminhos dos nossos arquivos gerados para recapitularmos.
  • Certificado do site: /etc/ssl/certs/nagios.exemplo.com.br.crt
  • Chave: /etc/ssl/private/nome_chave.key
  • Arquivo de requisição: /etc/ssl/private/req.cert.csr

Página anterior     Próxima página

Páginas do artigo
   1. Pré-instalação
   2. OpenSSL 0.9.8e
   3. Apache 2.2.13 - Instalação, GD Library 2.0.35 e PHP 5.2.10
   4. Apache 2.2.13 - Virtualhost
   5. NAGIOS 3.1.2 e Apache 2.2.13
   6. Nagios plugins 1.4.13
   7. Finalizando
Outros artigos deste autor

Implantando o Cacti (gerador de gráficos) em HTTP Seguro (HTTPS)

Backup de roteadores Cisco com o TFTP + Pancho - Slackware 13

Corrigindo a falha "WARNING! Your cache is running out of filedescriptors" - Squid2.7STABLE9 Slackware 12

Leitura recomendada

Utilizando o Protheus em estações Linux

Considerações sobre medição de JITTER em operadoras VOIP no Wireshark

Configurando Jmeter em modo Recording

Monitorando seu servidor Jabber

VirtualBox no modo texto com gerenciador Web

  
Comentários
[1] Comentário enviado por hugovja em 12/08/2009 - 16:50h

Muito bom o artigo, ajudou bastante. Parabéns.

[2] Comentário enviado por magnolinux em 12/08/2009 - 18:58h

Otimo a didadica utilizada no artigo. Mais acho que perdeu a oportunidade de explicar a funcionalidade e a confi dos arquivos do proprio nagios.

Parabens..!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts