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

Novamente volto com a proposta de apresentar à comunidade o resultado da catalogação de implantação de alguns serviços no meu ambiente de trabalho. Desta vez catalogamos aqui a implantação do serviço do Cacti, utilizado para a geração dos mais variados gráficos provenientes da área de TI e, na minha opinião, um ótimo substituto para o (tão bom quanto) MRTG.

[ Hits: 67.447 ]

Por: Rafael Bruno de Almeida em 11/09/2009


OpenSSL 0.9.8e



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

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

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 vou descrever os comandos que utilizei para gerar as chaves e certificados do site.

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 a serem gerados pela CA, que no nosso caso é este mesmo servidor onde o serviço do CACTI irá funcionar:

# 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.site
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 seguem as linhas de comandos necessárias para que isso 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 Cacti, com validade de um 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 graficos.seudominio.com.br.crt

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

# mv graficos.seudominio.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/graficos.seudominio.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 e demais pacotes
   4. RRDTOOL - Dependências e RRDTOOL 1.3.8
   5. MySQL
   6. Cacti 0.8.7e e Apache 2.2.13
   7. Cacti Spine 0.8.7e
   8. Finalizando
Outros artigos deste autor

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

Implantando o Nagios em HTTP Seguro (HTTPS)

Leitura recomendada

Ferramentas para edição musical com Linux

Packer - Instalando pacotes do AUR no Arch Linux

OneOrZero Helpdesk

Weechat - Conheçam este cliente peso-pena para IRC

Solução de PaaS Brasileiro - Docker, Shell Script e Golang

  
Comentários
[1] Comentário enviado por ntjbc em 23/09/2009 - 19:41h

Instalei mais nao esta gerando os graficos oq faço

[2] Comentário enviado por rafaelalmeida em 28/09/2009 - 18:35h

Cara vá na guia "Graph Management" clique em algum gráfico que vc tenha cadastrado, logo em seguida na página do gráfico em questão clique em "*Turn On Graph Debug Mode" deverá aparecer os motivos que o gráfico não está sendo gerado.. dai você posta aqui nos comentários que eu tento lhe ajudar...


[3] Comentário enviado por acauan.ribeiro em 04/01/2010 - 17:26h

O meu tambem nao esta gerando os graficos. Ja vi que pode ser porcauso do arquivo poller.php que nao esta configurado corretamente.
Porem o motivo que ele mostrou no Turn On Graph Debug Mode foi esse:

ERROR: opening '/var/lib/cacti/rra/localhost_5min_cpu_8.rrd': No such file or directory

Onde será que resolvo?

Abrigado

[4] Comentário enviado por acauan.ribeiro em 04/01/2010 - 17:31h

Ok resolvido, o meu problema era só alterar para ele mostrar em outro tempo no caso eu mudei para 1min.

[5] Comentário enviado por rafaelalmeida em 05/01/2010 - 13:09h

Cara, ia te falar pra você conferir as permissões na pasta também... o usuário do cacti precisa ter permissão de escrita na pasta... outra coisa é que demora um tempo pra que ele crie os arquivos dos gráficos, geralmente este tempo é o tempo que o poller roda ou seja.. se você gerou um gráfico agora ele será criado alguns minutos depois de acordo com o tempo do seu poller (5min... 1min...) Valeu!! bakana vc já ter resolvido tudo aê!.

[6] Comentário enviado por nurcwb em 10/03/2010 - 18:20h

Os graficos nao sao gerados.
ola, estou com o seguinte problema.

RRDTool Command:

/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="rprcta001 - Traffic - AT11/0/0 - ** Link ATM/155 - BrtNet - CTA-1 - 0462530" \
--rigid \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="bits per second" \
DEF:a="/var/www/cacti/rra/rprcta001_traffic_in_3423.rrd":traffic_in:AVERAGE \
DEF:b="/var/www/cacti/rra/rprcta001_traffic_in_3423.rrd":traffic_out:AVERAGE \
CDEF:cdefa=a,8,* \
CDEF:cdefe=b,8,* \
AREA:cdefa#00CF00:"Inbound" \
GPRINT:cdefa:LAST:" Current\:%8.2lf%s" \
GPRINT:cdefa:AVERAGE:"Average\:%8.2lf%s" \
GPRINT:cdefa:MAX:"Maximum\:%8.2lf%s\n" \
LINE1:cdefe#002A97:"Outbound" \
GPRINT:cdefe:LAST:"Current\:%8.2lf%s" \
GPRINT:cdefe:AVERAGE:"Average\:%8.2lf%s" \
GPRINT:cdefe:MAX:"Maximum\:%8.2lf%s"

RRDTool Says:

ERROR: This RRD was created on other architecture

[7] Comentário enviado por rafaelalmeida em 11/03/2010 - 09:10h

Opa, tudo bom?

Bom.. não passei por este problema, porém fiz uma pesquisa no fórum do Cacti e encontrei este link (http://forums.cacti.net/about12952.html&highlight=), tudo leva a crer que trata-se de um problema com a versões do RRDTool, você já possuia o Cacti em algum servidor e esta fazendo uma migração entre servidores? (servidor velho >> servidor novo).

Caso seja isso, achei um link interessante (confeso que não o li totalmente porém vale a pena dar uma olhada..)

http://www.rawiriblundell.com/?p=916

Outro link interessante é este abaixo que fala sobre migrações de servidores 32bits para 64bits..

http://slog.carlheaton.co.uk/index.php/2009/10/converting-32bit-rrd-to-64bit-rrd-moving-cacti-betwee...

Enfim espero ter ajudado, e caso consiga resolver o problema, crie uma dica e poste aqui um link com a resolução ou até mesmo a poste aqui para ajudar os demais que velham passar pelo mesmo problema...

[8] Comentário enviado por nurcwb em 16/03/2010 - 15:50h

Ola pessoal, resolvi meu problema colocando a versão 32 bits do rdtool e do perl-rdtool também.

[9] Comentário enviado por flavioeduardo em 04/05/2010 - 11:01h

Olá, estou utilizando este tutorial passo-a-passo, instalando o Cacti, até agora tudo bem mas esta dando um erro no arquivo httpd.conf:

O erro - AddHandler requires at least two arguments, a handler name followed by one or more file extensions

A linha no arquivo - AddHandler php5-script.php

Aguardo resposta breve, estou com instalação parada.

Obrigado....

[10] Comentário enviado por rafaelalmeida em 04/05/2010 - 14:36h

Opa;

Acredito que seja devido a falta de um "espaço" na linha, veja como a linha deve estar no arquivo httpd.conf:

AddHandler php5-script .php

**note há um espaço entre php5-script e .php .

Dê uma olhada caso não seja isto continuo tentando te ajudar...

[11] Comentário enviado por flavioeduardo em 04/05/2010 - 16:22h

Rafael, era isso mesmo valeu a dica, ja esta ok, vou proseguir no passo-a-passo, qualquer duvida pergunto de novo.

[12] Comentário enviado por flavioeduardo em 05/05/2010 - 15:33h

Onde encontro estes pacotes?


# installpkg libX11-1.1.1-i486-4.tgz
# installpkg libXau-1.0.3-i486-1.tgz
# installpkg libXdmcp-1.0.2-i486-1.tgz
# installpkg libXpm-3.5.6-i486-1.tgz
# installpkg libjpeg-6b-i486-5.tgz
# installpkg libpng-1.2.37-i486-1_slack12.0.tgz
# installpkg libxcb-1.0-i486-2.tgz
# installpkg libxml2-2.6.28-i486-1.tgz
# installpkg zlib-1.2.3-i486-2.tgz
# installpkg fontconfig-2.4.2-i486-2.tgz
# installpkg libXrender-0.9.2-i486-1.tgz

[13] Comentário enviado por flavioeduardo em 05/05/2010 - 17:12h

Opa! Não precisa mais, ja resolvi!!!!
Mesmo assim obrigado.

[14] Comentário enviado por rafaelalmeida em 05/05/2010 - 17:31h

Beleza!! Qualquer coisa posta aqui!

[15] Comentário enviado por xdcc80 em 13/05/2010 - 08:31h

Bom dia,

Assim como alguns colegas estou com problemas com os gráficos no Cacti, no meu caso as imagens aparecem porém os dados são substituídos por "nan". Realizei o "*Turn On Graph Debug Mode" e não foi acusado nenhum problema, como vocês podem conferie abaixo:

-
RRDTool Command:

/usr/bin/rrdtool graph - \
--imgformat=PNG \
--start=-86400 \
--end=-300 \
--title="Localhost - Memory Usage" \
--rigid \
--base=1000 \
--height=120 \
--width=500 \
--alt-autoscale-max \
--lower-limit=0 \
--vertical-label="kilobytes" \
--slope-mode \
--font TITLE:12: \
--font AXIS:8: \
--font LEGEND:10: \
--font UNIT:8: \
DEF:a="/var/lib/cacti/rra/localhost_mem_buffers_3.rrd":mem_buffers:AVERAGE \
DEF:b="/var/lib/cacti/rra/localhost_mem_swap_4.rrd":mem_swap:AVERAGE \
AREA:a#FF4105FF:"Free" \
GPRINT:a:LAST:"Current\:%8.2lf %s" \
GPRINT:a:AVERAGE:"Average\:%8.2lf %s" \
GPRINT:a:MAX:"Maximum\:%8.2lf %s\n" \
AREA:b#FFC73BFF:"Swap":STACK \
GPRINT:b:LAST:"Current\:%8.2lf %s" \
GPRINT:b:AVERAGE:"Average\:%8.2lf %s" \
GPRINT:b:MAX:"Maximum\:%8.2lf %s\n"

RRDTool Says:

OK
-

Alguém que já passou pelo problema "nan" tem alguma sugestão?

[16] Comentário enviado por rafaelalmeida em 14/05/2010 - 13:38h

Opa;

Aqui também acontece isto .. porém só no momento em que eu crio os gráficos, pois, ele demora um tempo pra poder buscar as informações no cliente onde o SNMP roda.

No seu caso, parece que o serviço SNMP do cliente (servidor ou roteador etc. que vc pretende gerar gráficos) está parado ou a comunidade snmp não está funcionando ou o não há informações pro tipo de gráfico que você esta tentando gerar.

Para testar se o SNMP está funcionando rode o comando no seu servidor do CACTI:

snmpwalk -v 2c -c comunidade ip.do.cliente.monitorado

Ele deve retornar uma série de informações sobre o cliente, caso contrário o SNMP está com problemas e você terá de rever estas configurações "no cliente".

[17] Comentário enviado por jotac em 27/06/2010 - 19:48h

Olá,

Gostaria de saber se é possível criar um único gráfico com o tráfego de várias interfaces de rede? Sei que é possível criar o link consolidado no Weathermap com várias interfaces.

[18] Comentário enviado por rafaelalmeida em 05/07/2010 - 12:25h

Opa;

Olha.. acredito que dê sim pelo que vi no cacti você consegue customizar ou criar novos tipos de gráficos etc. Porém confesso ser um tanto quanto avançado pra mim, infelizmente não vou conseguir te entregar um passo a passo de como fazer isto.

Vlw.

[19] Comentário enviado por stooned em 03/08/2010 - 11:38h

xdcc80, para solucionar o problema de não estar gerando gráficos no cacti é só você fazer o seguinte:

Na aba console do cacti
Vá em Settings
Na primeira aba General
No meio da página, em Required Tool Version
Em RRDtool Utilily Version, possívelmente vai estar como 1.0x
É só mudar para 1.2x
e depois salvar e possívelmente os gráficos já vão estar sendo gerados.

Testa aí e verificar se vai funcionar para você, eu estava com o mesmo problema.. e depois de uma dica de um amigo... fiz isso e o problema foi solucionado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts