Issuu on Google+

Documentação do Sistema WATCHER

Augusto Ricardo Tin Pires – CNH347 Manpower Professional


Conteúdo

1. 2. 3. 4. 5. 6.

Entendendo o Watcher ........................................................................................................ 3 Estrutura do Sistema Watcher ............................................................................................. 3 Utilitários ............................................................................................................................. 4 Estrutura dos Scripts ........................................................................................................... 5 Configuração do acesso WEB ............................................................................................ 8 Utilizando o Sistema Watcher ........................................................................................... 10


1. Entendendo o Watcher O sistema Watcher tem como função principal monitorar e gerar informações sobre dispositivos  conectados   nas   portas   dos  switches,   incluindo   os   endereços   de   MAC   e   portas   de  switches  utilizadas que serão apresentadas via página WEB. Este   sistema   esta   instalado   em   um   servidor   Sun/Solaris   (Enterprise   E450)   com   a   seguinte  denominação:  http://watcher.jag.br.mot.com/infra  .   Os   aplicativos   e  scripts  que   fazem   as  atualizações e verificações do sistema Watcher utilizam arquivos de dados para as suas análises,  como   o   arquivo   com   a   lista   de  switches,   entre   outros   que   ficam   localizados   no   diretório  /watcher/static  e   as   saídas   e   arquivos   gerados   em   geral   são   enviados   para   o   diretório  /watcher/dynamic.

2. Estrutura do sistema Watcher

O sistema Watcher possui a seguinte estrutura de dados: •

Coleta de dados (Data Collection)

Nesta fase, o sistema lê as informações do roteadores, switches e das planilhas de  cabeamento que se encontram em um servidor Windows, utilizando alguns sistemas, tais como o  expect, de domínio público, e o samba, para conexão entre plataformas Unix e Windows.  Existe   um  crontab,   que   é   o  scheduler  do  Unix  onde   todos   os  scripts  de  atualizações são programados a rodar em determinado horário e na freqüência desejada. A seguir  o crontab do sistema watcher, para acessá­lo, basta digitar: crontab –l  e para modificá­lo digite:  crontab –e (Neste caso, os comandos de edição são os do editor vi, cujos comandos podem ser  encontrados na página web:  http://it­howto.jag.br.mot.com/Cursos/Apostilas/vim­ref.html

Crontab do watcher:


# # These are the main periodic executions (each calls all individual scripts) # 0 0,6,12 * * * [ ­x /watcher/update_all.ksh ] && /watcher/update_all.ksh > /dev/null 2>&1 >>  /watcher/logs/update_all.log # # This is the weekly log rotate # 0 0 1 * * [ ­x /watcher/update_watcher.ksh ] && /watcher/update_watcher.ksh > /dev/null 2>&1  > /watcher/logs/update_watcher.log # # Monitor for ports in 100 Mbps + Half Duplex 0 9 * * 1­5 /watcher/monitor/check_half100.ksh > /dev/null 2>&1 # # Monitor for ports in 100 Mbps + Half Duplex 0 9 * * 1­5 /watcher/monitor/check_hub.ksh > /dev/null 2>&1 # • Processamento dos Dados (Data Processing) Nesta fase, os dados coletados são consolidados, este procedimento também está incluído  na crontab e utiliza um maior processamento do servidor. Ele subscreve a tabela anterior, com a  seguinte localização e denominação: /watcher/htdocs/main_table.txt

Examinação dos Dados (Data Query)

Existe uma interface para o usuário baseado em WEB (Apache) para acesso aos dados  consolidados. Esta página é a seguinte: http://watcher.jag.br.mot.com/infra 3. Utilitários O   utilitário   mais   importante   que   é   utilizado   pelos  scripts  do   sistema  Watcher  é   o  readpass. Todas as informações são obtidas dos switches através do readpass que está instalado  no servidor, juntamente com o comando expect para acesso aos switches.


As senhas dos  switches são armazenadas de forma encriptada pelo sistema utilizando o  comando savepass ( /usr/local/bin/savepass) e podem ser acessadas com o readpass e o listpass.  Sómente o usuário que tiver armazenado as senhas poderá utilizá­las. Execução: watcher@watcher:/watcher:>readpass Usage: readpass <hostname> <identifier> watcher@watcher:/watcher:>readpass zbr05­sw­a1 readonly xxxxxxxx watcher@watcher:/watcher:> onde xxxxxxxx é a senha SEM encriptação. E para salvar uma senha o comando é o  seguinte: watcher@watcher:/watcher:>savepass Usage: savepass <hostname> <identifier> watcher@watcher:/watcher:>

O   campo  identifier  referenciado   aqui   é   utilizado   para   separarmos   as   senhas   utilizadas   nos  switches.     Aqui   utilizamos   o   identificador  readonly  para   acesso   aos  switches  sómente   para  execução de alguns comandos. Quando necessitamos utilizar algum comando que necessita do  acesso de enable do switch, usamos o identificar enable para quardar a senha de acesso. Neste  caso, para salvar a senha de enable do switch, utilizamos o comando da seguinte maneira: watcher@watcher:/watcher:>savepass zbr05­sw­j3 enable Type the password for "readonly" on "zbr05­sw­j3", from 3 to 16 chars. Avoid non­alphanumeric characters. Password: Type it again, to confirm. Password: xxxxxxx Password saved successfully. Use "readpass <hostname> <identifier>" to read it back. watcher@watcher:/watcher:>


4. Estrutura dos scripts

Coleta de Dados (Data Collection)

O sistema  Watcher  utiliza uma série de  scripts  na coleta dos dados dos   switches  e   roteadores,   e   das   planilhas   localizadas   em   servidor  Windows.   Os   scripts utilizados são os seguintes: 1. update_modules.ksh :  Este script faz a atualização de módulos dos switches listados na variável  $SWITCH_LIST (ver variáveis de ambientes configuradas nos scripts). O  resultado   é   armazenado   no   arquivo   apontado   por   /watcher/dynamic/modules/ <switch name>.modules Execução: /watcher/update_modules.ksh <switch> OBS: Se o parâmetro switch não for informado, o script irá fazer  uma   atualização   em   todos   os   switches   existentes   no   arquivo: /watcher/static/switch_list 2. update_ports.ksh: Atualiza a listagem com os parâmetros de configuração das portas para cada   módulo encontrado salvando a saída em /watcher/dynamic/ports/<switch  name>.port.<port>.current Execução: /watcher/update_ports.ksh <switch> Se o parâmetro switch for omitido, o Watcher irã fazer uma atualização em todos  os switches. 3. update_arp.ksh:  Atualiza a tabela ARP de cada switch (Endereço de MAC conectados  nas portas) e salva o resultado em /watcher/dynamic/arp/<switch name>.arp


Execução: /watcher/update_arp.ksh <switch> OBS: Se o parâmetro switch não for informado, o script irá fazer  uma atualização em todos os switches existentes no arquivo: /watcher/static/switch_list 4. update_rsm_arp.ksh: Atualiza a tabela RSM ARP dos roteadores zbr05­sr1 e zbr01­sr1 (Endereços de  MAC com IP) e salva o resultado em /watcher/rsm_arp.txt Execução: /watcher/update_rsm_arp.ksh 5. update_trunk.ksh: Atualiza a tabela de trunk dos switches para que estas portas não sejam  contabilizadas   na   tabela   final   e   salva   o   resultado   em   /watcher/dynamic/ports/ <switch name>.trunk Execução: /watcher/update_trunk.ksh <switch> OBS: Se o parâmetro switch não for informado, o script irá fazer uma atualização  em todos os switches existentes no arquivo: /watcher/static/switch_list 6. update_quadjack.ksh: Atualiza as informações dos quadjacks e descrições a partir das planilhas Excel e  gera a saída nos arquivos /watcher/dynamic/quadjacks.txt.<switch name>.  Atualmente esta informação é gerada também em um único arquivo localizado em  /watcher/dynamic/quadjacks.txt. Execução: /watcher/update_quadjack.ksh 7. create_main_table.ksh: Cria a tabela principal de localização de endereços de MAC (ARP x localização)  e também a tabela de “piratas” (não configurados pelo DHCP). As saídas são   geradas em /watcher/pirate.log e /watcher/htdocs/main_table.txt


Execução: /watcher/create_main_table.ksh •

Processamento dos Dados (Data Processing)

Nesta fase o sistema não solicita nenhuma autenticação, é onde o arquivo  create_main_table.ksh é processado e as saídas são os arquivos main_table.txt,   watcher.log e pirate.log •

Solicitação dos Dados (Data Query)

Existem alguns arquivos escritos em Perl (Criado por Larry Wall, em Dez/87, em  referência à  Parábola da Pérola, de Mateus   13) localizados no sub­diretório   /watcher/cgi­bin/watcher  e   são   usados   para   apresentar   na   interface   Web   os   dados gerados pelos scripts. 5. Configuração do acesso WEB

Para   que   um   usuário   possa   acessar   o   sistema   Watcher,   é   necessário   realizar   os   seguintes  procedimentos para este usuário ter acesso: ●

Alterar o arquivo /watcher/htdocs/infra/pwd adicionando uma linha ao final do arquivo  no seguinte formato: <userid>:x, veja abaixo: alc061:CpW47y/CednEA asm075:zhn3sk54DfjLA aer031:ueFq6TusVm8AY cnh347:ABskgs9CTQi8M tin:.AeCn7mm99Qc6 qjpc68:SxGr2gSr7Uop2 ams106:DZzntlEpsDR6. wgm031:Ie2RIOM2NhzUQ ahf013:0kbh2TlDPCtZ2 aab049:lyNHEbBAoKqCo acc046:8ZPCor7d.dNzM vhjb86:x

Como pode observar, a senha é salva criptografada. Alterar o arquivo /watcher/htdocs/infra/htaccess, adicionando o ID do usuário na lista  de Ids permitidos:


AuthType Basic AuthName "Password required" AuthUserFile /watcher/htdocs/infra/pwd require user alc061 asm075 aer031 cnh347 tin qjpc68 ams106 wgm031 ahf013 qab003  adm033 arb043 acn011 aab049 acc046 vhjb86 atf008 w12536 adb008 cgbw64

Após estes ajustes, o usuário deverá acessar a página do Watcher entrando na opção de  Esqueceu sua Senha (Forgot your Password) como figura abaixo:

Um email será enviado a conta do usuário com a nova senha. Após recebera senha, o  mesmo poderá alterá­la utilizando a opção Mudar sua Senha (Change your Password)


Basta entrar com a senha recebida pelo sistema via email e depois entrar com a nova  senha e com a confirmação (Repetir a senha). Se as senhas forem iguais, uma janela  mostrará   a   confirmação   de   alteração.   Este   email   é   sempre   enviado   pelo   usuário  noreply@motorola.com. 6. Utilizando o Sistema Watcher Para utilizar o  Watcher, basta entrar na página principal do sistema e realizar as consultas  desejadas. A página inicial é: http://wachter.jag.br.mot.com/cgi­bin/watcher/main_table.pl



Watcher Document