Projeto Integrador - 2010.2 - Equipe TechSpot

De MediaWiki do Campus São José
Ir para: navegação, pesquisa

'''Techspot'''

Projeto Integrador - TechSpot

22/11: Iniciando o Projeto Integrador (Segunda-Feira)

  • Início do Projeto com auxílio do Professor Ederson (Gerência)
  • Primeiro contato com os integrantes do Projeto Integrador.
    • Os integrantes do grupo são: Diony, Karine, Leonardo, Ronaldo.
  • Apresentação do Problema do Cliente.
  • Sugestões de nomes para o projeto. Como a equipe encontrou dificuldades na escolha, ficou de tarefa para todos, pensar em idéias para apresentar na próxima reunião.

Planejamento

23/11: 2º Dia (Terça-Feira)

  • Definição do nome para nosso projeto: TechSpot. (Local Tecnologia)
  • Análise da topologia, reunião para definir escopo, planejamento de execução do projeto.
  • Professor Ederson esclareceu desenho que foi repassado para equipes. Segue abaixo, anotações:
    • DSLAM - Gerenciador de porta. Será usado apenas 1 dslam, sendo ele compartilhado para as 3 equipes. A sugestão dada é a divisão de portas. Até o dslam consideramos a camada de enlace.
    • Será preciso 1 enlace de modens (1 no cliente e outro na operadora). Se não tiver 1 enlace para cada equipe, será compartilhado esse enlace.
    • Cabeamento entre computador e modem, modem1 e modem2, modem 2 e DSLAM será feito com cabo UTP.
    • Conexão do DSLAM com servidor (Gateway) será feito pelo meio de rede sem fio (wi-fi)
    • No servidor (Gateway) será configurados serviços, como: Autenticador (radius), DHCP (esse funciona apenas em rede local, por isso deve estar na mesma rede que o DSLAM para haver comunicação), WEB, entre outros.
    • Abaixo segue 1° esboço.

<graphviz> graph Rede { rankdir="LR"

subgraph clusterOperadora { label="Operadora" DSLAM ModemOperadora }

subgraph clusterCasa { label="Casa" ModemCasa PC }

DSLAM -- ModemOperadora ModemOperadora -- ModemCasa ModemCasa -- PC } </graphviz>

  • Planejamento:
    • 1º Efetuar levantamento do projeto
      • salas
      • materiais
      • serviços a instalar
      • problema e duvida dos clientes
  • Cenário do Projeto: Serviços finais a serem entregues
  1. 1ª Torre (Salas comerciais) será construída na Sala de Meios.
  2. 2ª Torre (Sala Equipamentos) será construída na Sala de Redes I.
  3. Será realizada a conexão das duas torres através do meio de Rede Sem Fio (WI-FI).
    • Essa ligação será realizada com um Computador possuindo 3 placas de rede sem fio em cada sala.
  4. Cada sala comercial deverá ter acesso a um link de ADSL individual.
    • Por falta de equipamentos e espaço liberado para execução do projeto ser limitado, será representada apenas 1 sala comercial. Essa sala, deverá ter no mínimo 3 pontos de acesso para conexão com a rede. Os pontos devem estar distribuídos da seguinte maneira:
      • Ponto no Chão: Poderá ser utilizado para ligação de computador na rede ou ponto de telefone;
      • Ponto Horizontal: Poderá ser utilizado para conexão do modem ADSL, ligação de computador na rede ou ponto telefônico;
      • Ponto no alto (2 metros mais ou menos): Poderá ser utilizado para conexão de câmera de vigilância; roteador WI-FI;
    • Salas comerciais serão ligadas a um Switch, e este será ligado a um DSLAM.

'Descrição Equipamentos'

  1. Equipamentos utilizados para 1ª Torre:
    1. Modem ADSL:
      • ADSL para funcionários
      • Configuração: DLINK DSL 500B - ADSL 2+ Router Geration II
    2. DSLAM:
      • DSLAM (ADSL) 8 portas por equipe
      • Configuração: DLINK DAS 3334 - ADSL IP DSLAM
    3. Placa de Rede WiFI:
      • Configuração: Atheros Communications AS 500 1X Plus
    4. Webcam:
      • Configuração: 4Tech - pk333mb
    5. Computador para simular cliente:
      • Configuração do Sistema Operacional:
        cat /etc/lsb-release 
        DISTRIB_ID=Ubuntu
        DISTRIB_RELEASE=10.04
        DISTRIB_CODENAME=lucid
        DISTRIB_DESCRIPTION="Ubuntu 10.04.1 LTS"
        
      • Para verificar a configuração do Hardware:
        • Memória (Total 2Gb):
          free -m
                       total       used       free     shared    buffers     cached
          Mem:          2013        763       1249          0        169        331
          -/+ buffers/cache:        262       1750
          Swap:         1906          0       1906
          
          cat /proc/meminfo
          MemTotal:        2061372 kB
          MemFree:         1279152 kB
          Buffers:          173272 kB
          Cached:           339836 kB
          SwapCached:            0 kB
          Active:           316828 kB
          Inactive:         376192 kB
          Active(anon):     180204 kB
          Inactive(anon):     5052 kB
          Active(file):     136624 kB
          Inactive(file):   371140 kB
          
        • Processador:
          cat /proc/cpuinfo
          processor	: 0
          vendor_id	: AuthenticAMD
          cpu family	: 15
          model		: 44
          model name	: AMD Sempron(tm) Processor 3000+
          stepping	: 2
          cpu MHz		: 1000.000
          cache size	: 128 KB
          
        • HD (total: 80Gb):
          df -h
          Sist. Arq.            Tam   Usad Disp  Uso% Montado em
          /dev/sda5              35G  2,8G   31G   9% /
          none                 1003M  264K 1003M   1% /dev
          none                 1007M  240K 1007M   1% /dev/shm
          none                 1007M   88K 1007M   1% /var/run
          none                 1007M     0 1007M   0% /var/lock
          none                 1007M     0 1007M   0% /lib/init/rw
          /dev/sda1              38G   15G   23G  40% /media/661C3DAD1C3D795F
          
  2. Na 2ª Torre ficará o Servidor ligado a um Switch, onde esse estará conectado no placa de rede WI-FI para fazer a ligação com a 1ª Torre. Além de ser configurado um Servidor para serviços gerais, deverá ter um servidor para Câmera de vigilância.
  3. Equipamentos liberados para 2ª Torre:
    1. Swtich:
      • Configuração: Cisco 1700
    2. Placa de Rede WiFI:
      • Configuração: Atheros Communications AS 500 1X Plus
    3. Configurações do computador utilizado para o Servidor:
      • Para verificar a configuração do Hardware:
        • Processador:
          cat /proc/cpuinfo 
          processor: 0
          vendor_id: AuthenticAMD
          model name: AMD Sempron(tm) Processor 3000+
          cpu MHz: 1000.000
          cache size: 128 KB
          
        • Para verificar a memória podemos utilizar o comando free -m ou cat /proc/meminfo (Total 1Gb)
          free -m
                       total       used       free     shared    buffers     cached
          Mem:          1001        961         40          0        145        551
          -/+ buffers/cache:        265        736
          Swap:         1921          0       1921
          
          cat /proc/meminfo
          MemTotal:        1025944 kB
          MemFree:           39584 kB
          Buffers:          149148 kB
          Cached:           564400 kB
          SwapCached:            0 kB
          Active:           297520 kB
          Inactive:         484412 kB
          Active(anon):      28220 kB
          Inactive(anon):    40504 kB
          Active(file):     269300 kB
          Inactive(file):   443908 kB
          
        • HD(Total 80Gb):
          df -h
          Filesystem            Size  Used Avail Use% Mounted on
          /dev/sda1             4,6G  381M  4,0G   9% /
          udev                  501M  200K  501M   1% /dev
          none                  501M     0  501M   0% /dev/shm
          none                  501M   64K  501M   1% /var/run
          none                  501M     0  501M   0% /var/lock
          none                  501M     0  501M   0% /lib/init/rw
          /dev/sda2              19G  175M   18G   1% /home
          /dev/sda3              19G  813M   17G   5% /usr
          /dev/sda5              19G  4,7G   13G  27% /var
          /dev/sda6              12G  191M   12G   2% /tmp
          
        • Sistema Operacional:
          cat /etc/lsb-release 
          DISTRIB_ID=Ubuntu
          DISTRIB_RELEASE=9.10
          DISTRIB_CODENAME=karmic
          DISTRIB_DESCRIPTION="Ubuntu 9.10"
          
  1. Serviços finais que deverão ser apresentados:
    1. Cabeamento Estruturado para salas comerciais;
    2. Conexão entre as 2 torres;
    3. Redes separadas para cada equipe(VLAN);
    4. Serviço para monitoração com Câmera de Vigilância;
      • Vigilância IP (web com usb);
      • Webcam - captura e alguem envia para rede;
      • ferramenta de streaming;
      • sistema de controle de autenticação (aulas de programação);
    5. Salas comerciais com ADSL exclusivas;
    6. Gateway;
    7. Servidor Web;
    8. Serviço de Monitoramento de contabilização;
    9. Sistema de Backup;
      • 1 admin + 1 por cada cliente ADSL;
    10. Firewall;
      • Filtro de conteúdo (pacotes / conteúdos web);
      • Filtro de Conteúdo/pacotes - para se proteger e proteger os outros;
    11. Acesso a Internet;
    12. DHCP;
      • DHCP - fornecimento de IP - DHCP com VLAN,
    13. DNS;
    14. Autenticação de site com Radius;
    15. Site da empresa;
    16. SNMP;
    17. NTP;

24/11: 3º Dia (Quarta-Feira)

  • Solução utilizada para implementar serviço de Câmera de Vigilância.
    1. Zonemeider.

Fonte:[1]

  • Professor Tiago, explicou o que devemos apresentar para ele no projeto.

Topologiapi.png

  • As equipes se juntaram, uma parte da sala começou a fazer o Cabeamento Estruturado, outra parte deu início a instalação do Sistema Operacional dos Servidores.

Passagem do cabo principal, cabos dos pontos: 1 localizado no piso, 1 na parede e outro no alto para câmeras de vigilância.

  • Recebemos o modem ADSL e a máquina para nosso servidor
    • Modelo Modem:
    • Configuração Servidor: HD 80Gb
  • Formatado servidor. Foi dado início a instalação do Sistema Operacional
    • Sistema escolhido: Ubunto Server 9.10

-> Servidor com problema, conseguimos trocar a máquina.

Observações do Dia

- Máquina fornecida para servidor não funcionava o drive de CD para boot do sistema operacional - Tentativa sem sucesso de boot pelo USB, processa mento muito lento, chegou a travar o USB - CD que conseguimos com o sistema operacional estava com problema - Não possuíamos a senha do computador para ativar a placa de rede.

'Cabeamento Estruturado'

Cabeamento.JPG Cabeamento2.JPG
Cabeamento3.JPGCrimpando.JPG

25/11: 4º Dia (Quinta-Feira)

Aula com o Marcelo Sobral..

  • Recebemos o DSLAM.
  • Distribuímos as atividades
    • Leonardo ficou estudando o equipamento;
    • Ronaldo terminando a configuração do sistema operacional;
    • Diony fez a conectorização dos cabos e certificação dos mesmos;
    • Karine ficou com documentação e início do site;


Resumo de Atividades do dia..

  • Configurando o Servidor:
    • Configuração Rede
So2.JPG
  • Desvendando o DSLAN:
Desvendando dslan.JPG

Configuração Estática

Arquivo de configuração das interfaces Externa e Interna, o caminho do arquivo é: /etc/network/interfaces.

Configuramos a placa de rede para o IP externo. Para os Ips internos, foram configuradas interfaces virtuais.

cd /etc/network/
vi interfaces
 
# Interfaces de rede do servidor TechSpot do Laboratório de Redes I
# Configuração de auto-teste da placa de rede
auto lo
iface lo inet loopback

# Configuração estática da interface (real) de rede externa (IP público)  
auto eth0
iface eth0 inet static
      address 200.135.37.101
      netmask 255.255.255.192
      gateway 200.135.37.126

# Configuração estática da VLAN 1010 para rede interna de câmeras (elimina necessidade de eth0:0) 
auto vlan1010
iface vlan1010 inet static
      address 192.168.30.101
      netmask 255.255.255.0
      vlan_raw_device eth0

# Configuração estática da VLAN 1011 para rede interna de câmeras (elimina necessidade de eth0:1) 
auto vlan1011
iface vlan1011 inet static
      address 192.168.31.101
      netmask 255.255.255.0
      vlan_raw_device eth0

# Configuração estática da VLAN 1012 para rede interna de câmeras (elimina necessidade de eth0:2) 
auto vlan1012
iface vlan1012 inet static
      address 192.168.32.101
      netmask 255.255.255.0
      vlan_raw_device eth0

#Configuração estática da placa de rede (virtual) interna (lab redes1) 
#auto eth0:2
#iface eth0:2 inet static
#  address 192.168.1.101
#  netmask 255.255.255.0
#  broadcast 192.168.1.255
#  network 192.168.1.0
#  gateway 192.168.1.1
#  dns-nameservers 127.0.0.1 ns.techspot.sj.ifsc.edu.br 
#  dns-search techspot.sj.ifsc.edu.br

OBS: Interface eth0:2 foi configurada apenas para conseguirmos acessarmos o servidor via ssh dentro do lab de redes1 enquanto o ip externo estava sendo configurado.

  • Atualizando a lista de Pacotes
 root@tecspot:~# aptitude update
  • Instalando o pacote DNS
 root@techspot:~# aptitude install bind9

DNS

  • Criando o dominio DNS

Configuramos o domínio no arquivo: /etc/resolv.conf

 root@techspot:/etc# vi resolv.conf

search techspot.sj.ifsc.edu.br nameserver 127.0.0.1 </syntaxhighlight>

  • Configurando o DNS

Configurado no arquivo /etc/bind/name.conf.options

root@techspot:/etc# cd bind/ root@techspot:/etc/bind# vi name.conf.options </syntaxhighlight> options {

  directory "/var/cache/bind";
 # Não exibe versão do bind
  version "N/A";
  listen-on-v6 { any; };
  listen-on { any; };
 
 # Define quem poderá fazer consultas recursivas ao servidor DNS
   allow-recursion { 127.0.0.0/8; 192.168.30.0/24; 192.168.31.0/24 };
 
 # Define quem poderá consultar o servidor DNS
   allow-query { any; };
   allow-query-cache { any; };

};

</syntaxhighlight>

  • Colocando o domínio e domínio reverso no ar.

Esta configuração encontra-se em /etc/bind/named.conf.local

 root@techspot:/etc/bind# vim named.conf.local

//Configuração do domínio //domínio zone "techspot.sj.ifsc.edu.br" {

 type master;
 file "/etc/bind/techspot.sj.ifsc.edu.br";

}

//DNS reverso zone "100.64-101.37.135.200.in-addr.arpa {

 type master;
 file "/etc/bind/db100.64-101.37.135.200.in-addr.arpa";

}

</syntaxhighlight>

Arquivo /etc/bind/techspot.sj.ifsc.edu.br

Configurações específicas para o domínio techspot.sj.ifsc.edu.br

$TTL 86400 @ IN SOA dns1.techspot.sj.ifsc.edu.br. admin.techspot.sj.ifsc.edu.br. (

       2010112501  ; serial
               1d  ; refresh
               1h  ; retry
               1w  ; expire
               1d  ; negative cache ttl

) @ IN NS dns1 @ IN A 200.135.37.101 @ IN MX 0 mail.techspot.sj.ifsc.edu.br. dns1 IN A 200.135.37.101 ns1 IN A 200.135.37.101 mail IN A 200.135.37.101 www IN A 200.135.37.101 smtp IN CNAME mail.techspot.sj.ifsc.edu.br. pop IN CNAME mail.techspot.sj.ifsc.edu.br. imap IN CNAME mail.techspot.sj.ifsc.edu.br. ssl IN CNAME www.techspot.sj.ifsc.edu.br. cacti IN CNAME www.techspot.sj.ifsc.edu.br.

prevenção contra SPAM usando pacote spf1

techspot.sj.ifsc.edu.br. IN TXT "v=spf1 mx -all"

</syntaxhighlight>

  • Reiniciando o DNS

root@techspot:/etc/bind# /etc/init.d/bind9 restart </syntaxhighlight>

  • Testando o DNS
    • Teste Local - perguntando direto para o SOA

root@techspot:/etc/bind# dig @127.0.0.1 soa techspot.sj.ifsc.edu.br </syntaxhighlight>

    • Teste Local - perguntando quem é o endereço www.techspot.sj.ifsc.edu.br

root@techspot:/etc/bind# dig @127.0.0.1 a www.techspot.sj.ifsc.edu.br </syntaxhighlight>


    • Testar para ver ser DNS está funcionando

root@techspot:/etc/bind# dig +trace soa techspot.sj.ifsc.edu.br </syntaxhighlight>


  • Instalação SSH

Com o SSH instalado, conseguiremos acessar o servidor remotamente.

root@techspot:~# aptitude install ssh-server


  • Diony ficou fazendo cabeamento e conectorização dos pontos do lab de Meios.

Obs: Luiz Francisco, Everton, Diony se juntaram e fizeram o cabeamento das 3 equipes em conjunto...


  • Karine instalou o Mysql, PHP5, phpmyadmin, cacti
  • Instalando Mysql

root@techspot:~# aptitude install mysql-server </syntaxhighlight>

  • Configurando Mysql


No cacti falta fazer a configuração gráfica, pois ip externo ainda está com problemas.

O site não deu para começar ainda, pois fiquei pesquisando sobre o Radius que teremos que fazer para autenticação do site, conforme pede a nossa tarefa.


Obs: Os IPs Externos ainda não estão funcionando. Professor Sobral tentou solucionar o problema.

26/11: 5º Dia (Sexta-Feira)

OBS: Sexta feira sem aula.. Estamos sem conseguir acessar os servidores via ssh devido a problemas no lab de Redes..

29/11: 6º Dia (Segunda-Feira)

1ª semana se foi....

  • Solicitamos ajuda do professor Boi para solucionar problema do Lab Redes, pois agora o problema está pior, não temos acesso a internet, os Ips continuam fora, até ping pro gw está dando perda de pacote.

OBS: Até as 22hs problema não solucionado.

Enquanto isso... A equipe do cabeamento (Luis Francisco, Everton, Diony) terminaram o cabeamento do laboratório de meios, com a certificações de todos os cabos e registrado em documento(fotos) está certificação, faltando apenas o cabo que liga o ponto do chão com o Modem(das 3 equipes).

  • O cabeamento da nossa empresa sai do armário TechSpot efetuando um Jumper no armário do Luis, por motivo de não termo cabo de tamanho suficiente entre o nosso armário e o armário principal, e está marcado com uma fita “vermelha” em todos os cabos que são de uso da TechSpot, desde o armário principal passando pelo armário do Luis até chegar no nosso armário, onde a porta principal e os cabos e pontos estão marcados.

Finalização do Cabeamento Estruturado

  • Galera do Cabeamento
Equipe cabeamento.JPG DSC00425.JPG
DSC00424.JPG DSC00435.JPG
SDC12838.JPG DSC00451.JPG
  • Pontos Cabeados
Chao.JPG Ponto.JPG
  • Certificando Pontos
Certificação ponto.JPG Site.png
DSC00426.JPG
  • Finalização Rack Techspot e Rack Principal
Rack ok.JPG Rack principal Torre 1.JPG
350px

30/11: 7º Dia (Terça-Feira)

  • Finalização do cabeamento da Sala de Meios...
  1. Diagrama De Rede

Computador do Cliente -> Modem ADSL -> Cabeamento Horizontal -> Patch Panel do Armário Techspot -> Jumper no Armário Celtics -> Patch Panel do Armário Principal -> Ligação com DSLAM -> Liga com Rede Ah doc da Torre 1 -> Ligação ponto a ponto com Rede Ah doc da Torre 2 -> Liga com Switch -> Ligação com Servidor (Está ligado no servidor a Web Cam para Monitoramento)

  • Verificando e corrigindo configurações do Servidor... (Configurações estão sendo apresentadas no 4º dia de projeto).


Observação do dia: IP externo ainda não está liberado; cabo do dslan ainda não concluído para fazer ligações das torres, e do adsl.

01/12: 8º Dia (Quarta-Feira)

'Servidor Techspot no ar (Laboratório de Meios)'

Bunda serv.JPG Serv ligado.JPG
  • Rach do Laboratório de meios
Serv ok.JPG
  • Aviso para não desligar o Painel de Energia para manter os servidores ligados
Painel.JPG
  • SSH com IP externo funcionando

Comando para acessar servidor via SSH

 aluno@m8:~$ ssh techspot@200.135.37.101

Confirmação SSH

The authenticity of host '200.135.37.101 (200.135.37.101)' can't be established. RSA key fingerprint is 57:a0:5e:19:be:d6:66:f8:a4:07:c9:c6:58:03:2a:6d. Are you sure you want to continue connecting (yes/no)? yes techspot@techspot:~$ sudo su - [sudo] password for techspot: ********* root@techspot:~# </syntaxhighlight>

  • Auxílio do Professor Boi para implementar o Radius


  • Instalando Pacote Vlan

root@techspot:~# aptitude install vlan </syntaxhighlight>

  • Instalando DHCP

root@techspot:~#aptitude install dhcp3-server </syntaxhighlight>

Configurando DHCP

configurando no arquivo /dhcp/dhcp3/dhcpd.conf ddns-update-style none;

  1. criar subnet

subnet 192.168.30.0 netmask 255.255.255.0 {

 range 192.168.30.1. 192.168.30.100; 
 options routers 192.168.30.101;
 options domain-name "tecspot.sj.ifsc.edu.br";
 options domain-name-servers "192.168.30.101;
 default-lease-time 3600;
 max-lease-time 86400;

} </syntaxhighlight>

  • Auxílio do Professor Boi para melhor entendimento do RADIUS.

Radius serve para: > autenticação > autorização > auditoria

Funcionamento: catalogação de usuários quando catalogados, eles ganham privilégios Quando ganham privilégios, são monitorados

02/12: 9º Dia (Quinta-Feira)

Tarefas passada pelo Sobral para hoje:
  1. Ativar o link sem-fio (modo adhoc) -> Pensar em como passar a informação sobre VLANs através do link.
  2. Configurar as VLANS nos swtiches, para estruturar as LANs (camêras, servidores/DSL)
  3. Ativar os links DSL -> Decifrar o DSLAM!

'Cacti'

Logo cacti.png

Gerenciamento de contabilização Para gerenciar nossa rede, escolhemos a ferramenta Cacti.

  • Ferramenta Cacti: Cacti é uma ferramenta administrativa de rede, que recolhe e exibe informações sobre o estado de uma rede de computadores através de gráficos. Permitindo o monitoramento e gerenciamento de redes simples até redes complexas, com centenas de dispositivos. O Cacti monitora o estado de elementos de rede e programas bem como largura de banda utilizada,uso de CPU, uso de memória entre outros.

Trata-se de uma interface e uma infra-estrutura para o RRDTool, que é responsável por armazenar os dados recolhidos e por gerar gráficos em um banco de dados MySQL. A interface é completamente orientada à PHP. As informações são repassadas para a ferramenta através de scripts ou outros programas escolhidos pelo usuário os quais devem se encarregar de obter os dados. Pode-se utilizar também o protocolo SNMP para consultar informações em elementos de redes e/ou programas que suportam tal protocolo. Sua arquitetura prevê a possibilidade de expansão através de plugins que adicionam novas funcionalidades. Um destes plugins é o PHP Network Weathermap que mostra um mapa da rede e o estado de cada elemento. O Cacti é liberado sob a licença GNU (General Public License), ou seja,completamente livre. No entanto, é possível contribuir através de doações pelo site da ferramenta promovendo o desenvolvimento do projeto.

  • Programa RRDtool: RRDtool é um programa que armazena os dados coletados em aquivos ".rrd". O número de registros em um arquivo ".rrd" nunca aumenta, significando que antigos registros são frequentementes removidos. Isto implica que ele obtem figuras precisas para dados recentemente logados, onde as figuras baseadas em dados muito antigos possuem valores aproximados. Por padrão, você pode obter gráficos diários, semanais, mensais e anuais.

Algumas das vantagens do RRDtool sobre o MRTG são as seguintes: - Ele é muito mais rápido. - Ele pode usar valores negativos. - Ele pode usar mais de uma fonte de dados em um gráfico. - Os gráficos gerados são muito customizáveis. - Ele pode ser usado por uma grande variedade de front-ends, como o Cacti. - Os registros do RRDtool armazenados nos arquivos “.rrd” mantem o mesmo tamanho e não aumentam.


  • Foi preciso instalar algumas ferramentas para o Cacti funcionar. Segue alguma delas: Cacti,apache2, php5, mysql-server, php5-mysql, php5-cli, rrdtool

Procedimento de instalação do Cacti Instalando pacotes

  1. Instalamos a ferramenta baixando a versão mais atualizada do próprio site, pois o pacote que possui na lista de atualização não é uma das versões mais atualizadas. O Site é [2])
    • Geralmente instalamos a ferramenta no diretório /usr/local/src
      wget http://www.cacti.net/downloads/cacti-0.8.7g.tar.gz
      

Obs: Instalação do cacti continua até o final deste dia.

Mysql-Server / PHP / PHP5-cli / Apache2

    • Se já tiver o banco de dados instalado, pode seguir para o próximo passo, se ainda não tiver feito a instalação, baixar os aplicativos: apache2, php5, mysql-server, php5-mysql, php5-cli.
      • Baixa os aplicativos com o comando
        aptitude install <aplicativo>
        
  1. Instalar o aplicativo para armazenamento de gráfico em texto
    aptitude install rrdtool
    
  2. Descompactar a ferramenta do cacti em /var/www
     tar xzf /usr/local/src/cacti-0.8.7g.tar.gz
    
    • Para ficar mais fácil de localizar o diretório trocar o nome de cacti-0.8.7g para cacti
  3. Reinicar o Apache em
    /etc/init.d/apache2 restart
    
    • Aconselhamos a acompanhar os logs para verificar se está tudo certo
      tail var/log/apache
      
  4. Instalar o SNMPD e configurar o arquivo /etc/snmp/snmpd.conf
    aptitude install snmpd
    
rocommunity techspot
syslocation TechSpot
syscontact cactiadmin@techspot.sj.ifsc.edu.br
sysservices 72
  1. Acessar o cacti pela interface web, utilizamos o navegador Firefox: [3]
    • Caso apareça o erro: FATAL: Cannot connect to MySQL server on 'localhost'. Please make sure you have specified a valid MySQL database name in 'include/config.php' Você deve: Verificar o banco de dados, se o Mysql está rodando, verificar senha/usuário.
    • Para criar a base do cactus no Mysql:
      • acessar o mysql: Lembrando de colocar o "-p" para inserir a senha após executar o comando abaixo:
        mysql -u root -p
        
      • Criar uma base para o Cacti
        create database cacti;
        
      • Verificar se base foi criada
        show databases;
        
      • Liberar todos os privilégios para o usuário modificar a base
        grant all privileges on cacti.* to 'cactiadmin'@localhost identified by '********';
        
      • Aplicar os valores para ter efeito imediato
        flush privileges;
        
      • Sair do Mysql
        quit
        
  2. Voltar para o servidor e configurar o arquivo config.php no diretório /var/www/cacti/include. Ir mais ou menos até a linha 26 e editar os parâmetros:
    $database_type = "mysql";
    $database_default = "cacti";
    $database_hostname = "localhost";
    $database_username = "cactiadmin";
    $database_password = "********";
    $database_port = "3306";
    
    • Lembrandro que não precisa reiniciar o apache, pois mechemos apenas no código php.
  3. Procurar o arquivo no diretório /var/www/cacti com o final "SQL"
    find . -iname \*sql
    
  4. Povoar a base de dados que criamos.
    mysql -u <usuario> -h localhost -p cacti < cacti.sql
    
  5. Sair do Mysql, e instalar os aplicativos (gerenciador) php5-snmp e snmp.
    aptitude install php5-snmp snmp
    
  6. Reiniciar o apache
    /etc/init.d/apache2 restart
    
  7. Devemos aplicar permissões nos arquivos do cacti, para isso volte para o servidor e execute o comando, as permissões devem ser aplicadas para os arquivos dentro da pasta /var/www/cacti
    chown -R www-data:www-data .
    
    • Aplicar permissão total para o arquivo cacti.log em /var/www/cacti/log
      chmod 777 cacti.log
      
  1. Após permissões devemos acrescentar no /etc/crontab um agendamento para o servidor começar a contabilizar e fazer os gráficos. Nosso agendamento será programado para de 5 em 5 minutos o cacti irá fazer uma coleta dos dados.
    vi /etc/crontab
    # agendamento para aplicativo web cacti (http://192.168.2.108/cacti)
    */5 * * * * www-data php /var/www/cacti/poller.php > /dev/null 2>&1
    
    • Logar com o usuário "www-data" e colocar o arquivo poller.php para rodar, se funcionar, o cacti estará funcionando.
       
      su www-data -c "php poller.php"
      

Configuração Cacti - Via WEB

  1. Acessar a página do cacti em seu navegador : [4]
  • Clicar em avançar "next"

Cacti1.JPG

  • Clicar em avançar "next" novamente

Cacti2.JPG

  • Irá aparecer uma lista, como mostra a figura, tudo que tiver em verde está funcionando. Se tudo estiver OK, clique em finalizar "finish".

Cacti3.JPG

  • Conferir a versão do SNMP e a versão do rrdtool, no servidor. Utilizando o comando
    aptitude show snmp
    aptitude show rrdtool
    
  • Voltar para a página do cacti e logar no sistema. O primeiro login e senha são respectivamente, admin e admin.

Cacti4.JPG

  • Insira uma nova senha

Cacti5.JPG

  • Ir no menu create > New grafic > Create New Host e configurar os itens conforme mostra as imagens:

Cacti6.JPG

  • Ir em: Create Graphs for this Host
  • Ir na aba Grafics e selecionar o seu servidor, após realizar configuração.

Cacti7.JPGCacti8.JPG

  • Fonte de Dados:

Cacti9.JPG

  • Ir na aba Grafics e agora é só aguardar os gráficos.

Graficos.JPG Graficos2.JPG

03/12: 10º Dia (Sexta-Feira)

Configuração Rede SEM FIO

Refinamos a configuração das interfaces de rede no servidor TechSpot (IP 200.135.37.101) conforme segue: root@techspot:~# vi /etc/network/interfaces </syntaxhighlight>

  1. Interfaces de rede do servidor TechSpot do Laboratório de Redes I
  1. 20101130 Ronaldo Lages [2 linhas] Configuração de auto-teste da placa de rede

auto lo iface lo inet loopback

  1. 20101130 Ronaldo Lages [9 linhas] configuração estática da interface (real) de rede externa (IP público)

auto eth0 iface eth0 inet static

     address 200.135.37.101
     netmask 255.255.255.192
     gateway 200.135.37.126
  1. 20101201 Ronaldo Lages [2 linhas] endereços broadcast e network são automáticos (linhas comentadas)
  2. broadcast 200.135.37.127
  3. network 200.135.37.64
  4. 20101201 Ronaldo Lages [2 linhas] configurações abaixo são feitas no servidor DNS (linhas comentadas)
  5. dns-nameservers 127.0.0.1 dns1.techspot.sj.ifsc.edu.br
  6. dns-search techspot.sj.ifsc.edu.br
  1. 20101201 Ronaldo Lages [5 linhas] configuração estática da VLAN 1010 para rede interna de câmeras (elimina necessidade de eth0:0)

auto vlan1010 iface vlan1010 inet static

     address 192.168.30.101
     netmask 255.255.255.0
     vlan_raw_device eth0
  1. 20101201 Ronaldo Lages [5 linhas] configuração estática da VLAN 1011 para rede interna de servidores (elimina nessidade de eth0:1)

auto vlan1011 iface vlan1011 inet static

     address 192.168.31.101
     netmask 255.255.255.0
     vlan_raw_device eth0
  1. 20101204 Ronaldo Lages [5 linhas] configuração estática da VLAN 1012 para rede interna de ADSL (elimina nessidade de eth0:2)

auto vlan1012 iface vlan1012 inet static

     address 192.168.32.101
     netmask 255.255.255.0
     vlan_raw_device eth0

</syntaxhighlight> Continuamos a configuração das interfaces de rede nos computadores cedidos pelo Prof. Sobral que farão a conectividade sem-fio entre as duas torres (Laboratórios de Meios de Transmissão e de Redes I). Seguem as características de cada um:

  • Computador do Laboratório de Meios de Transmissão
    • identificação: semfio1
    • gabinete: branco)
    • dispositivos de rede: 3 placas PCI internas
    • interface TechSpot: wlan2
    • IP da interface: 10.1.2.1
    • máscara de rede: 255.255.255.251
    • ESSID da Interface: TechSpot
    • modo de conectividade: Ad-Hoc (sem Access-Point)
    • canal/frequência do sinal: 6 / 2437 MHz
    • chave de acesso WEP: wlan2 (testado OK apenas)
    • chave de acesso WPA-PSK: wlan2 (por testar ainda)
    • chave de acesso WPA-EAP: wlan2 (implementar se possível)
    • arquivo de configuração em /etc/network/interfaces

root@techspot:~# vi /etc/network/interfaces </syntaxhighlight>

  1. Interfaces de rede do computador semfio1 (gabinete branco) do Laboratórios de Meios de Transmissão
  1. 20101202 Ronaldo Lages [2 linhas] configuração de auto-teste da placa de rede

auto lo iface lo inet loopback

  1. 20101202 Ronaldo Lages [5 linhas] configuração estática da interface (real) de rede externa (IP público)

auto eth0 iface eth0 inet static

     address 192.168.1.210
     netmask 255.255.255.0
     gateway 192.168.1.1
  1. 20101204 Ronaldo Lages [1 linha] quando estrutura pronta o IP será fornecido pelo servidor DHCP (comentar 4 linhas acima)
  2. iface eth0 inet dhcp
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede Celtics sem-fio em modo Ad-Hoc (IP privado)

auto wlan0 iface wlan0 inet static

     address 10.1.0.1
     netmask 255.255.255.252
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede Ritz sem-fio em modo Ad-Hoc (IP privado)

auto wlan1 iface wlan1 inet static

     address 10.1.1.1
     netmask 255.255.255.252
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede TechSpot sem-fio em modo Ad-Hoc (IP privado)

auto wlan2 iface wlan0 inet static

     address 10.1.2.1
     netmask 255.255.255.0

</syntaxhighlight>

    • configuração da rede sem-fio através de linha de comando (console):

root@semfio1:~# ifconfig wlan2 down root@semfio1:~# iwconfig wlan2 mode Ad-Hoc root@semfio1:~# ifconfig wlan2 up root@semfio1:~# iwconfig wlan2 essid TechSpot root@semfio1:~# iwconfig wlan2 channel 6 root@semfio1:~# ifconfig wlan2 key s:wlan2

root@semfio1:~# ping 10.1.2.2 PING 10.1.2.2 (10.1.2.2) 56(84) bytes of data. 64 bytes from 10.1.2.2: icmp_req=1 ttl=64 time=7.34 ms 64 bytes from 10.1.2.2: icmp_req=2 ttl=64 time=1.62 ms 64 bytes from 10.1.2.2: icmp_req=3 ttl=64 time=7.49 ms 64 bytes from 10.1.2.2: icmp_req=4 ttl=64 time=1.61 ms </syntaxhighlight>

  • Computador do Laboratório de Redes I
    • identifcação: semfio2
    • gabinete: preto
    • dispositivos de rede: 3 adaptadores USB externos
    • IP da interface: 10.1.2.2
    • ESSID da interface: TechSpot
    • modo de conectividade: Ad-Hoc (sem Access-Point)
    • máscara de rede: 255.255.255.252
    • canal/frequência do sinal: 6 / 2437 MHz
    • chave de acesso WEP: wlan2 (testado OK apenas)
    • chave de acesso WPA-PSK: wlan2 (por testar ainda)
    • chave de acesso WPA-EAP: wlan2 (implementar se possível)
    • arquivo de configuração em /etc/network/interfaces

root@techspot:~# vi /etc/network/interfaces </syntaxhighlight>

  1. Interfaces de rede do computador semfio2 (gabinete preto) do Laboratórios de Redes I
  1. 20101202 Ronaldo Lages [2 linhas] configuração de auto-teste da placa de rede

auto lo iface lo inet loopback

  1. 20101202 Ronaldo Lages [5 linhas] Configuração estática da interface (real) de rede externa (IP público)

auto eth0 iface eth0 inet static

     address 192.168.1.211
     netmask 255.255.255.0
     gateway 192.168.1.1
  1. 20101204 Ronaldo Lages [1 linha] quando estrutura pronta o IP será fornecido pelo servidor DHCP (comentar 4 linhas acima)
  2. iface eth0 inet dhcp
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede Celtics sem-fio em modo Ad-Hoc (IP privado)

auto wlan0 iface wlan0 inet static

     address 10.1.0.2
     netmask 255.255.255.252
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede Ritz sem-fio em modo Ad-Hoc (IP privado)

auto wlan1 iface wlan1 inet static

     address 10.1.1.2
     netmask 255.255.255.252
  1. 20101202 Ronaldo Lages [4 linhas] configuração estática da interface de rede TechSpot sem-fio em modo Ad-Hoc (IP privado)

auto wlan2 iface wlan0 inet static

     address 10.1.2.2
     netmask 255.255.255.252

</syntaxhighlight>

    • configuração da rede sem-fio através de linha de comando (console):

root@semfio2:~# ifconfig wlan2 down root@semfio2:~# iwconfig wlan2 mode Ad-Hoc root@semfio2:~# ifconfig wlan2 up root@semfio2:~# iwconfig wlan2 essid TechSpot root@semfio2:~# iwconfig wlan2 channel 6 root@semfio2:~# ifconfig wlan2 key s:wlan2

root@semfio2:~# ping 10.1.2.1 PING 10.1.2.1 (10.1.2.1) 56(84) bytes of data. 64 bytes from 10.1.2.1: icmp_req=1 ttl=64 time=1.98 ms 64 bytes from 10.1.2.1: icmp_req=2 ttl=64 time=1.90 ms 64 bytes from 10.1.2.1: icmp_req=3 ttl=64 time=1.91 ms 64 bytes from 10.1.2.1: icmp_req=4 ttl=64 time=2.04 ms </syntaxhighlight>

    • Ontem tivemos a orientação do Prof. Sobral que não existe arquivo de configuração para a rede sem-fio, ou seja, para os comando iwconfig que realizamos na linha de comando, então a solução é criar-se um script em bash para efetivar as alterações pois a cada desligamento dos computadores tudo é perdido. Então criamos um script para ser executado nos computadores semfio1 e semfio2, e foi provisoriamente salvo no diretório /etc/init.d/networking pois tem a ver com a inicialização das interfaces de rede. São eles:
      • Computador semfio1 (branco) do Laboratório de Meios de Transmissão

root@semfio2:~# vi /etc/init.d/networking/semfio1.sh </syntaxhighlight>

  1. !/bin/bash
  1. Script para configuração das interfaces das redes sem-fio no computador semfio1 (branco) do Laboratório de Meios de Transmissão
  2. Lembrando: wlan0 = Equipe Celtics, wlan1 = Equipe Ritz, wlan2 = Equipe TechSpot (todas configuradas conjuntamente)
  1. 20101203 Ronaldo Lages [3 linhas] derruba as interfaces de rede sem-fio e mostra

ifconfig wlan0 down ifconfig wlan1 down ifconfig wlan2 down ifconfig

  1. 20101203 Ronaldo Lages [3 linhas] coloca as interface em modo Ad-Hoc (conectividade direta sem APs) e mostra

iwconfig wlan0 mode ad-hoc iwconfig wlan1 mode ad-hoc iwconfig wlan2 mode ad-hoc

  1. 20101203 Ronaldo Lages [3 linhas] levanta as interfaces de rede sem-fio conforme /etc/network/interfaces e mostra

ifconfig wlan0 up ifconfig wlan1 up ifconfig wlan2 up ifconfig

  1. 20101203 Ronaldo Lages [3 linhas] define identificação (ESSID) para cada rede sem-fio (conforme nomes das Equipes) e mostra

iwconfig wlan0 essid "Celtics" iwconfig wlan1 essid "Ritz" iwconfig wlan2 essid "TechSpot" iwconfig

  1. 20101203 Ronaldo Lages [3 linhas] define canal/frequência para cada rede sem-fio (conforme http://atalho.to/IFSC_PI2010-2) e mostra

iwconfig wlan0 channel 1 iwconfig wlan1 channel 11 iwconfig wlan2 channel 6 iwconfig

  1. 20101203 Ronaldo Lages [3 linhas] define chave/senha para criptografia WEP para cada rede sem-fio (exatos 5 caracteres) e mostra

iwconfig wlan0 key s:wlan0 iwconfig wlan1 key s:wlan1 iwconfig wlan2 key s:wlan2 iwconfig

  1. 20101203 Ronaldo Lages [1 linha] mostra finalmente configuração das interfaces de rede

ifconfig -a </syntaxhighlight>

      • Computador semfio2 (preto) do Laboratório de Redes I

root@semfio2:~# vi /etc/init.d/networking/semfio2.sh </syntaxhighlight>

  1. !/bin/bash
  1. Script para configuração das interfaces das redes sem-fio no computador semfio2 (preto) do Laboratório de Redes I
  2. Lembrando: wlan0 = Equipe Celtics, wlan1 = Equipe Ritz, wlan2 = Equipe TechSpot (todas configuradas conjuntamente)
  1. 20101203 Ronaldo Lages [3 linhas] derruba as interfaces de rede sem-fio e mostra

ifconfig wlan0 down ifconfig wlan1 down ifconfig wlan2 down ifconfig

  1. 20101203 Ronaldo Lages [3 linhas] coloca as interface em modo Ad-Hoc (conectividade direta sem APs) e mostra

iwconfig wlan0 mode ad-hoc iwconfig wlan1 mode ad-hoc iwconfig wlan2 mode ad-hoc

  1. 20101203 Ronaldo Lages [3 linhas] levanta as interfaces de rede sem-fio conforme /etc/network/interfaces e mostra

ifconfig wlan0 up ifconfig wlan1 up ifconfig wlan2 up ifconfig

  1. 20101203 Ronaldo Lages [3 linhas] define identificação (ESSID) para cada rede sem-fio (conforme nomes das Equipes) e mostra

iwconfig wlan0 essid "Celtics" iwconfig wlan1 essid "Ritz" iwconfig wlan2 essid "TechSpot" iwconfig

  1. 20101203 Ronaldo Lages [3 linhas] define canal/frequência para cada rede sem-fio (conforme http://atalho.to/IFSC_PI2010-2) e mostra

iwconfig wlan0 channel 1 iwconfig wlan1 channel 11 iwconfig wlan2 channel 6 iwconfig

  1. 20101203 Ronaldo Lages [3 linhas] define chave/senha para criptografia WEP para cada rede sem-fio (exatos 5 caracteres) e mostra

iwconfig wlan0 key s:wlan0 iwconfig wlan1 key s:wlan1 iwconfig wlan2 key s:wlan2 iwconfig

  1. 20101203 Ronaldo Lages [1 linha] mostra finalmente configuração das interfaces de rede

ifconfig -a </syntaxhighlight>

06/12: 11º Dia (Segunda-Feira)

2º semana se foi ..

  • Configuração do Link Ponto-a-Ponto Sem Fio entre os laboratórios.

Estava um computador no laboratório de meios com 3 placas Wi-Fi. Essas placas vão se comunicar com o laboratório de redes

  • Começamos a fazer a criação do Site.
  • Problema em Link Sem fio...
  • Ping estava muito baixo, comunicação com atraso, prejudicando na comunicação.
WIFI.JPG WIFI2.JPG
  • Imagens do nosso Link SEM FIO - Ponto a Ponto
    • O protocolo utilizado é o IEEE802.11
Torres.JPG Toore1.JPG

07/12: 12º Dia (Terça-Feira)

Continuação do Site.

08/12: 13º Dia (Quarta-Feira)

  • Configuração da Web Can
  • Criar um arquivo para fazer rodar a Web Cam.
    #!/bin/bash
    # Script que cria um stream do video da webcam na porta 8080
    # utilizando a aplicação mjpg_streamer
    depmod -a
    modprobe uvcvideo
    cd /usr/bin
    ./mjpg_streamer -i "input_uvc.so -d /dev/video0 -fps 24 -r 320x240"
    #./mjpg_streamer -i "input_uvc.so -d /dev/video0 -fps 24 -r CIF"
    
    # Para assistir ao video digite isso no navegador
    # http://127.0.0.1:8080/?action=stream
    
    # Para ver uma imagem da camera digite isso
    # http://127.0.0.1:8080/?action=screenshot
    


  • Rodar o arquivo ./StreamWebCam1.sh, ele está em /home/techspot/documentacao/zm
    ./StreamWebCam1.sh
    MJPG Streamer Version.: 2.0
     i: Using V4L2 device.: /dev/video0
     i: Desired Resolution: 320 x 240
     i: Frames Per Second.: 24
     i: Format............: MJPEG
     o: www-folder-path...: disabled
     o: HTTP TCP port.....: 8080
     o: username:password.: disabled
     o: commands..........: enabled
    


  • Entrar no site para acessar o monitoramento. Precisa fazer o login.

Login: Techspot Senha: *********

Techspot


  • Após estar logado, precisa escolher a sua web cam.

Acesso a Cam

Captura de tela.png
  • Depois disso, basta ficar monitorando.
    • Podemos fazer vídeo, capturar imagem, gravar imagem em backup.
Cam.png

09/12: 14º Dia (Quinta-Feira)

10/12: 15º Dia (Sexta-Feira)

13/12: 16º Dia (Segunda-Feira)

Ultima semana...

  • Estamos com problema na comunicação Sem fio entre os Laboratórios.
  • Instalação do Autenticador Radius

RADIUS

  • Instalando o pacote
    aptitude install freeradius
    
  1. Configuração do arquivo /etc/freeradius/radiusd.conf
  2. Descomentar as linhas que aparece "authorize" e "accounting".
  3. Configurando o arquivo /etc/freeradius/sql.conf
    sql{ 
    database = "mysql"
    server = "localhost"
    login = "radius"
    password = "********"
    radius_db = "radius"
    }
    
  4. Configurando o arquivo /etc/freeradius/clients.conf
    cliente dslan {
    ipaddr = 127.0.0.1
    secret= ********
    shortname=techspot
    nastype = other
    }
    
  5. Criar base de dados Radius no Banco de Dados Mysql.
    create database radius;
    
    • Verificar se foi criada a tabela
      mysql> show databases;
      +--------------------+
      | Database           |
      +--------------------+
      | information_schema |
      | cacti              |
      | mysql              |
      | radius             |
      | zm                 |
      +--------------------+
      5 rows in set (0,00 sec)
      
    • Dar total permissão a base radius e definir identificação
      GRANT ALL privileges ON radius.* TO 'radius'@localhost IDENTIFIED BY '********';
      FLUSH privileges;
      
    • Povoar Base de dados
      mysql -u radius -p radius < /etc/freeradius/sql/mysql/schema.sql
      
    • Usar a base radius
      use radius;
      show tables;
      +------------------+
      | Tables_in_radius |
      +------------------+
      | radacct          |
      | radcheck         |
      | radgroupcheck    |
      | radgroupreply    |
      | radpostauth      |
      | radreply         |
      | radusergroup     |
      +------------------+
      7 rows in set (0,00 sec)
      
    • Criar usuário na tabela radcheck
      INSERT INTO radcheck (UserName, Attribute, op, Value) VALUES ('tech', 'Cleartext-Password', ':=', '******');
      
    • Listar usuários
      mysql> select * from radcheck;
      +----+----------+--------------------+----+--------+
      | id | username | attribute          | op | value  |
      +----+----------+--------------------+----+--------+
      |  1 | tech     | Cleartext-Password | := | blabla |
      +----+----------+--------------------+----+--------+
      1 row in set (0,00 sec)
      
  6. Configurando conexão com banco de dados no arquivo /etc/freeradius/sql.conf
    sql {
            database = "mysql"
            driver = "rlm_sql_${database}"
     
            # Connection info:
            server = "localhost"
            login = "radius"
            password = "********"
            radius_db = "radius"
            # Allow for storing data after authentication
            postauth_table = "radpostauth"
            authcheck_table = "radcheck"
            authreply_table = "radreply"
            groupcheck_table = "radgroupcheck"
            groupreply_table = "radgroupreply"
    }
    
  7. Adicionar no final do arquivo /etc/freeradius/radiusd.conf
    # Autoriza a seção
    authorize {
              preprocess
              chap
              mschap
              suffix
              eap
              sql
              pap
    }
    # Armazena registros contáveis
    accounting {
              detail
              sql
     }
    
  8. Verificar integridade das configurações realizadas

14/12: 17º Dia (Terça-Feira)

  • Continuidade ao Site;
  • Tentando solucionar o problema do Link e do Radius;

Backup do Servidor

  • Nosso backup foi programado na Crontab para rodar a Meia Noite, de todos os dias, meses, anos.
  • O backup deve ser criado em /etc/init.d/backup.sh pois, toda vez que o servidor inicia, ele faz a leitura dos arquivos que estão na crontab.
  • Segue script de backup:
    #!/bin/bash
    #
    # 20101110 Ederson Torresini: rotina de backup de diretórios importantes
    
    ORIGEM="/etc /home /var"
    DESTINO="/backup"
    DIA=`date +%Y%m%d`
    DIA_DA_SEMANA=`date +%A`
    EMAIL=root@servidor
    
    # Criar o diretório de destino
    mkdir -p ${DESTINO}
    chmod 700 ${DESTINO}
    chown root ${DESTINO}
    
    # Função: backup completo
    completo()
    {
            tar cvzf ${DESTINO}/${DIA}.tar.gz ${ORIGEM} \
            > ${DESTINO}/${DIA}.txt \
            2> /dev/null
    }
    
    # Função: backup incremental (somente último dia)
    incremental()
    {
            tar cvzf ${DESTINO}/${DIA}.tar.gz `find ${ORIGEM} ! -type d -mtime -1`
     \
            > ${DESTINO}/${DIA}.txt \
            2> /dev/null
    }
    
    # Função principal
    if [ "${DIA_DA_SEMANA}" = "sunday" -o "${DIA_DA_SEMANA}" = "domingo" ]
    then
            completo
    else
            incremental
    fi
    mysqldump -uroot -proot --all-databases > ${DESTINO}/${DIA}.sql
    cat ${DESTINO}/${DIA}.txt | mail -s "[Backup]: ${DIA}" ${EMAIL}
    find ${DESTINO} -type f -mtime +7 -exec rm -f {} \;
    exit 0
    

15/12: 18º Dia (Quarta-Feira)

É hoje..

Começam as apresentações do projeto.... Parte Física e Enlace..

Boa sorte a Todos!!!

  • Término do Site.

Site TechSpot

    • Implementação de Link de Acesso para Cacti e Camera de Monitoramento.
  • Problemas ainda na camada de enlace
  • Apresentação Parte Física OK.
  • Tentando conectar link Ponto-a-Ponto;
  • Radius com problemas de funcionamento;

Camada de Aplicação

  • Página criada em /var/www
  • Páginas possuem sistema de sessão para segurança.
  • Página Criada para o administrador acessar o sistema, cadastrar/alterar/excluir login/senha para acesso de clientes, a autenticação será realizada pelo Radius. Além desta função, o administrador consegue gerenciar seu servidor através da Ferramenta Cacti, o qual permite fazer a contabilização do sistema. Outra função é conseguir fazer monitoramento através de uma Web Can da sala do Servidor.
  • As configurações da página seguem abaixo:
  • Página de entrada Index.php
    <?
            // iniciando a sessao
            session_start();
    
            if ($_SESSION['autenticado'] == true){
                    echo "<HTML><script>window.location='principal.php'</script></HTML>";
            }else{
    ?>
    <html>
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(mascote.jpg);
    background-position:center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    <head>
    <font color="White">
    <title>Autenticacao de usuarios</title>
    </font>
    </head>
    <FORM name="autenticacao" method="POST" action="verifica.php">
    
    <center>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <br>
    
    <img src="imagem2.JPG">
    <font color="White">
    <P><b>Nome de usuario:</b>
    <BR><INPUT type="text" name="usuario">
    
    <BR><b>Senha:</b>
    <BR><INPUT type="password" name="senha">
    
    <BR><INPUT type="submit" value="Entrar">
    </font>
    </FORM>
    <BR>
    </style>
    </body>
    </html>
    
    
    <?
            // fim else
    
            }
    ?>
    
  • Página Verifica.php
    <?
            // iniciando a sessao
            session_start();
    
            $usu  = "techspot"; $pass = "dklrdklr";
    
            $nome = $_POST['usuario'];
            $sen  = $_POST['senha'];
    
            if ( ($nome == $usu)  && ($sen == $pass) ){
    
            //criou uma variavel de sessao dizendo que a autenticacao ocorreu
            //com sucesso
            $_SESSION['autenticado'] = true;
    
                    echo "<HTML><script>window.location='principal.php'</script></HTML>";
    
            }else{
    
                    echo "<HTML><script>window.location='erro.php'</script></HTML>";
            }
    
    ?>
    
  • Página Principal.php
    <?
            session_start();
    
            if ($_SESSION['autenticado'] == true){
    ?>
    <html>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    
    <head>
    <font color="White">
    <br>
    <br>
    <title>Autentiçacão de usuários</title>
    <br>
    <br>
    
    <P align=right> <a HREF="logout.php"><INPUT type="submit" value="Logout"></a> </P>
    <P align=center><font color=White>  <H1> Administração </H1> </font> </P>
    <HR>
    <P> Administração de usuários na Base Radius </P>
    <HR>
    <P align=center> <a HREF="adicionar.php"><INPUT type="submit" value="Adicionar"></a> </P>
    <P align=center> <a HREF="listar.php"><INPUT type="submit" value="Listar"></a> </P>
    
    
    <P align=center><font color=White>  <H1> Monitoramento Web </H1> </font> </P>
    <HR>
    <P> Para acessar suas cameras de monitoramento, faça seu login/senha no link Monitoramento </P>
    <HR>
    <P align=center> <a href="http://www.techspot.sj.ifsc.edu.br/zm"><INPUT type="submit" value="Monitoramento"></a> </P>
    
    
    <P align=center><font color=White>  <H1> Contabilização CACTI </H1> </font> </P>
    <HR>
    <P> Para acessar o CACTI faça seu login/senha no link Cacti </P>
    <HR>
    <P align=center> <a href="http://www.techspot.sj.ifsc.edu.br/cacti"><INPUT type="submit" value="Cacti"></a> </P>
    
    </font>
    </head>
    </html>
    <?
            } //fechando o IF
            else{
             //o usuario ainda nao se conectou
            //redirecionando o usuario para a pagina index.php
            echo "<HTML><script>window.location='index.php'</script></HTML>";
    
            }
    ?>
    
  • Página modifica.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    
    <html>
    
    <style>
    <head>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </head>
    </style>
    
    <head>
    <style>
    html {
    height:100%;
    }
    
    body {
    background-image:url(mascote.jpg);
    background-position:center;
    background-repeat:no-repeat;
    }
    </style>
    </head>
    
    
    <head>
    
    <?
    
     //conectando no servidor
     $conexao = mysql_connect("localhost","root","dklrdklr");
    
     //selecao da base de dados
     $base_ok = mysql_select_db("site",$conexao);
    
    $codigo= $_POST['cod'];
    
    $novasenha= $_POST['novasenha'];
    $alterar = "UPDATE cadastro SET cSENHA='$novasenha' WHERE cID = " . $codigo;
            mysql_query($alterar,$conexao) or die ("erro na query");
    
     //fechando a conexao
     mysql_close($conexao);
    
    ?>
    <br>
    <P align=center><font color=Red>  <H1> Senha alterada com Sucesso!  </H1> </font> </P>
    <P align=center><a href="listar.php" ><INPUT type="submit" value="Voltar"></a> </P>
    <br>
    </head>
    </html>
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página adicionar.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    
    <html>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style
    
    <head>
    <font color="White">
    <br>
    <br>
    <br>
    <br>
    <br>
    <h1>Cadastro de Usuários</h1>
    
    <FORM name="cadastro" method="POST" action="criar.php">
    
    <P> Nome Cliente:
    <BR><INPUT type="text" name="nome">
    <P> Cidade:
    <BR><INPUT type="text" name="cidade">
    <P> UF:
    <BR><INPUT type="text" name="uf">
    <P> Telefone:
    <BR><INPUT type="text" name="telefone">
    <BR>
    <P> Login:
    <BR><INPUT type="text" name="login">
    <BR>
    <P> Senha:
    <BR><INPUT type="text" name="senha">
    <BR>
    
     <P> <a HREF="principal.php"><INPUT type="submit" name="botao" value="Voltar"></a> &nbsp;&nbsp;&nbsp;  <INPUT type="submit" name="botao" value="Criar">
    
    
    </FORM>
    </html>
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página Alterar.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    $codigo =$_GET['cod'];
    
    ?>
    <html>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    
    <head>
    <font color="White">
    <br>
    <br>
    <br>
    <br>
    <br>
    <h1> Alterar Dados </h1>
    
    <FORM name="cadastro" method="POST" action="modificar.php">
    
    <P> Conta do Usuário:
    <BR><INPUT type="text" name="login">
    <BR>
    <P> Nova Senha:
    <BR><INPUT type="text" name="novasenha">
    <BR>
    <P>
    <BR>
    <P> <INPUT type="hidden" name="cod" value="<?echo $codigo;?>">
    <BR> <INPUT type="submit" name="botao" value="Alterar senha">
    <P>
    <BR> <a href="listar.php"><INPUT type="submit" name="botao" value="Voltar"></a>
    
    </FORM>
    
    
    
    <?
    
     //conectando no servidor
     $conexao = mysql_connect("localhost","root","dklrdklr");
    
     //selecao da base de dados
     $base_ok = mysql_select_db("site",$conexao);
    
            //fechando a conexao
       mysql_close($conexao);
    ?>
    
    </head>
    </html>
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página Criar.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    <html>
    
    <style>
    <head>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </head>
    </style>
    
    <head>
    <style>
    html {
    height:100%;
    }
    
    body {
    background-image:url(mascote.jpg);
    background-position:center;
    background-repeat:no-repeat;
    }
    </style>
    
            <title>Cadastro Cliente</title>
    </head>
    <body>
    
    <?
     $nome = $_POST['nome'];
     $cidade =$_POST['cidade'];
     $uf =$_POST['uf'];
     $telefone =$_POST ['telefone'];
     $login =$_POST ['login'];
     $senha =$_POST ['senha'];
    
      //conectando no servidor
      $conexao = mysql_connect ("localhost","root","dklrdklr");
    
      //selecao da base de dados
      $base_ok = mysql_select_db("site",$conexao);
      //inserindo um registro
      $inserir = "INSERT INTO cadastro (cNAME, cCIDADE, cUF, cTELEFONE, cLOGIN, cSENHA) VALUES ('$nome','$cidade','$uf','$telefone','$login','$senha')";
      mysql_query($inserir,$conexao) or die ("erro na query");
    
            //fechando a conexao
       mysql_close($conexao);
    
    ?>
    <br>
    <P align=center><font color=Red>  <H1> Inserido com Sucesso!  </H1> </font> </P>
    <P align=center><a hreF="adicionar.php" ><INPUT type="submit" value="Voltar"></a> </P>
    
    </html>
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página Erro.php
    <?
            session_start();
    
      if ($_SESSION['autenticado'] == true){
            echo "<HTML><script>window.location='principal.php'</script></HTML>";
            }else{
    
    ?>
    <HTML>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    <head>
    <font color="RED">
    <br>
    <br>
    <title>Autentiçacão de usuários</title>
    <br>
    <br>
    
    <P align=center><font color=RED>  <H1> ERRO DE AUTENTICAÇÃO </H1> </font> </P>
    </head>
    </HTML>
            <HR>
    
            <P> <a href="index.php"><INPUT type="submit" value="Efetuar Autenticação"></a>
    <?
        } //fim do else
    ?>
    
  • Página remove.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    
    <html>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    
    <head>
    <style>
    html {
    height:100%;
    }
    
    body {
    background-image:url(mascote.jpg);
    background-position:center;
    background-repeat:no-repeat;
    }
    </style>
    </head>
    
    <?
     //conectando no servidor
     $conexao = mysql_connect("localhost","root","dklrdklr");
    
     //selecao da base de dados
     $base_ok = mysql_select_db("site",$conexao);
    
    $codigo =$_GET['cod'];
    
    $deletar = "DELETE FROM cadastro WHERE cID = $codigo";
    
     mysql_query($deletar,$conexao) or die ("erro na query");
    
            //fechando a conexao
       mysql_close($conexao);
    
    ?>
    <br>
    <P align=center><font color=Red>  <H1> Excluído com Sucesso!  </H1> </font> </P>
    <P align=center><a href="listar.php" ><INPUT type="submit" value="Voltar"></a> </P>
    <br>
    </head>
    </html>
    
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página Excluir.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    
    <html>
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    
    <head>
    <font color="white">
    <br>
    <br>
    <br>
    <br>
    <?
    
     //conectando no servidor
     $conexao = mysql_connect("localhost","root","dklrdklr");
    
     //selecao da base de dados
     $base_ok = mysql_select_db("site",$conexao);
    
    $nome= $linha['cNAME'];
    $codigo= $_GET['cod'];
    
    echo "<BR> Você realmente deseja excluir o usuário ?";
    
    echo "<BR><BR><a href='remover.php?cod=$codigo'> Sim </a> &nbsp;&nbsp;&nbsp;";
    
    echo "<BR><BR><a href=listar.php> Nao </a>";
    
    //};
    
     //fechando a conexao
     mysql_close($conexao);
    
    ?>
    </font>
    </head>
    </html>
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página Listar.php
    <?
     // iniciando a sessao
            session_start();
     if ($_SESSION['autenticado'] == true){
    
    ?>
    
    <html>
    
    <style>
    html {
    height:50%;
    }
    
    body {
    background-image:url(imagem2.JPG);
    background-position:right-center;
    background-repeat:no-repeat;
    background-color: #000000;
    }
    </style>
    
    <head>
    <font color="White">
    <br>
    <br>
    <title>Listando os Cadastros</title>
    <br>
    </head>
    <body>
    <P align=center><font color=White>  <H1> Cadastros </H1> </font> </P>
    <?
     //conectando no servidor
     $conexao = mysql_connect("localhost","root","dklrdklr");
    
     //selecao da base de dados
     $base_ok = mysql_select_db("site",$conexao);
    
     //obtendo os registro da tabela contatos
     $consulta = "SELECT * from cadastro";
     $resultado = mysql_query($consulta,$conexao);
    
     //percorrendo a linhas obtidas pela consulta
     while($linha = mysql_fetch_array($resultado)){
    $codigo= $linha['cID'];
    $nome= $linha['cNAME'];
    // echo "nome: " . $linha['cNAME'] . "<br>";
    
    echo "<a href='alterar.php?cod=$codigo'> $nome </a> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ";
    echo "<a href='excluir.php?cod=$codigo'>Excluir</a>";
    
       echo "<BR><HR><BR>";
     };
    
     //liberando a consulta
     mysql_free_result($resultado);
    
     //fechando a conexao
     mysql_close($conexao);
    
     ?>
    
    <P> <a HREF="principal.php"> Voltar </a>
    
     </body>
     </html>
    
    <?
            }
            else{
            echo "<HTML><script>window.location='index.php'</script></HTML>";
            }
    
    ?>
    
  • Página logout.php
    <?
    
            //iniciar sessao
            session_start();
            //matar a sessao
            session_destroy();
            //redirecionando usuario para a pagina de autenticacao
            echo "<HTML><script>window.location='index.php'</script></HTML>";
    ?>
    
Site.png
Site1.png
Site2.png
Site3.png

16/12: 19º Dia (Quinta-Feira)

Dia D....

  • Últimos ajustes nos servidores, documentação para apresentar.
  • Script para ativar interfaces do ADSL e configura a conexão com o DSLAN e as interfaces SEM FIO.
    #!/bin/bash
    
    ifconfig wlan0 down
    ifconfig wlan1 down
    ifconfig wlan2 down
    
    iwconfig wlan0 mode ad-hoc
    iwconfig wlan1 mode ad-hoc
    iwconfig wlan2 mode ad-hoc
    
    iwconfig
    
    ifconfig wlan0 up
    ifconfig wlan1 up
    ifconfig wlan2 up
    
    ifconfig 
    
    iwconfig wlan0 essid Celtics
    iwconfig wlan0 channel 2
    iwconfig wlan0 key s:wlan0
    
    iwconfig wlan1 essid Ritz
    iwconfig wlan1 channel 11
    iwconfig wlan1 key s:wlan1
    
    iwconfig wlan2 essid TechSpot
    iwconfig wlan2 channel 6
    iwconfig wlan2 key s:wlan2
    
    #/sbin/wpa_supplicant -i wlan2 -D wext -c /etc/network/semfio1-psk.conf
    #wpa_cli
    
    #iwconfig
    #ifconfig 
    
    # 20101216 Ronaldo Lages [2 linhas] Celtics     
    vconfig rem eth0.2020
    vconfig add eth0 2020
    
    # 20101216 Ronaldo Lages [2 linhas] Ritz     
    vconfig rem eth0.3030
    vconfig add eth0 3030
    
    # 20101216 Ronaldo Lages [2 linhas] TechSpot     
    vconfig rem eth0.1010
    vconfig add eth0 1010
    
    /etc/init.d/networking restart
    
    # 20101216 Ronaldo Lages [3 linhas] Celtics     
    ip rule del from 192.168.12.0/26
    ip rule add from 192.168.12.0/26 table 12
    ip route add to default via 10.1.0.2 dev wlan2 table 12
    
    # 20101216 Ronaldo Lages [3 linhas] Ritz
    ip rule del from 192.168.22.0/26
    ip rule add from 192.168.22.0/26 table 22
    ip route add to default via 10.1.1.2 dev wlan2 table 22
    
    # 20101216 Ronaldo Lages [3 linhas] TechSpot 
    ip rule del from 192.168.32.0/26
    ip rule add from 192.168.32.0/26 table 32
    ip route add to default via 10.1.2.2 dev wlan2 table 32
    
    ip route flush cache
    ip rule show 
    ip route show 
    
    echo 1 > /proc/sys/net/ipv4/ip_forward
    
    ping -v -c 5 10.1.0.2
    ping -v -c 5 10.1.1.2
    ping -v -c 5 10.1.2.2
    
    killall pppoe-server
    
    pppoe-server -C Celtics  -L 192.168.12.100 -p /etc/ppp/faixa-ip-Celtics  -I eth0.2020
    pppoe-server -C Ritz     -L 192.168.22.100 -p /etc/ppp/faixa-ip-Ritz     -I eth0.3030
    pppoe-server -C TechSpot -L 192.168.32.100 -p /etc/ppp/faixa-ip-TechSpot -I eth0.1010
    
    ps ax | grep ppp
    
  • Apresentação da camada aplicação no Auditório..