Mudanças entre as edições de "Projeto Integrador - 2009.1 - Equipe True"

De MediaWiki do Campus São José
Ir para: navegação, pesquisa
(DHCP)
(SMTP/IMAP)
Linha 129: Linha 129:
 
  apt-get install postfix
 
  apt-get install postfix
 
   
 
   
 +
 
  Porta Utilizada 25
 
  Porta Utilizada 25
  

Edição das 17h03min de 10 de julho de 2009

Cabeamento Estruturado - CBE

  • Passagem cabo UTP cat 5e, laboratório de meios de transmissão para redes I.
Atividade envolvendo todas as equipes
  • Montagem do rack.
Crimpagem de cabos no Patch Panel
Passagem de cabeamento secundário
Cordões de manobra(Patch Cord)
  • Comprovada continuidade de todos os pontos e cordões de manobra.
Ponto no chão e na parede
Cordões com no mínimo 1,30m

Gerência de Redes - GER

  • Fonte de Pesquisa:

Profº Ederson Torresini

Sistema Operacional

  • Ubuntu 8.10 Server
  • Particionamento
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              18G  2,6G   14G  16% /
tmpfs                 252M     0  252M   0% /lib/init/rw
varrun                252M  136K  251M   1% /var/run
varlock               252M  8,0K  252M   1% /var/lock
udev                  252M  2,7M  249M   2% /dev
tmpfs                 252M     0  252M   0% /dev/shm
  • Usuários e Grupos
*Usuários
mysql:x:111:122:MySQL Server,,,:/var/lib/mysql:/bin/false
snmp:x:114:65534::/var/lib/snmp:/bin/false
www-data:x:33:33:www-data:/var/www:/bin/sh
openfire:x:115:125:Openfire XMPP server,,,:/var/lib/openfire:/bin/false
true:x:1000:1000:true,,,:/home/true:/bin/bash

*Grupos
mysql:x:122:
openfire:x:125:
www-data:x:33:
postfix:x:117:
  • Configuração de Rede.
 *Arquivo /etc/network/interfaces

auto eth0                             auto eth0.40
iface eth0 inet static                iface eth0.40 inet static
address 200.135.37.114                address 10.4.1.1
netmask 255.255.255.192               netmask 255.255.255.0
gateway 200.135.37.126                

auto eth0.45                          auto eth0.100
iface eth0.45 inet static             iface eth0.100 inet static
address 10.4.2.1                      address 10.4.10.1
netmask 255.255.255.0                 netmask 255.255.255.0


Banco de Dados

  • Mysql-server


Base do Hotel True

hotel

Para facilitar administração de criação de tabelas, utilizamos a ferramenta PHPMYADMIN

phpMyAdmin

Criado o usuário ADMIN para fazer toda interação com o banco de dados.

Para tal, foi liberado o acesso a base com:

GRANT ALL PRIVILEGIES

Assim teremos maiores segurança, pois o usuário tem permissões apenas para mexer na base do hotel e na tabela específica, evitando a atividade com root.

Serviços instalados

Servidor de E-mail + IMAP:

Postfix
Uw-imapd

Servidor DNS:

Bind9

Servidor DHCP:

DHCP3-server

Servidor WEB:

Apache2

Acesso remoto:

Sshd

Servidor de autenticação:

FreeRadius

Controle e Monitoração:

Snmpd
Cacti

Comunicador Instantâneo:

OpenFire

Interfaces

eth0 Link encap:Ethernet HWaddr 00:11:d8:d4:94:ea

         inet addr:200.135.37.114  Bcast:200.135.37.127  Mask:255.255.255.192

eth0.40 Link encap:Ethernet HWaddr 00:11:d8:d4:94:ea

         inet addr:10.4.1.1  Bcast:10.4.1.255  Mask:255.255.255.0

eth0.45 Link encap:Ethernet HWaddr 00:11:d8:d4:94:ea

         inet addr:10.4.2.1  Bcast:10.4.2.255  Mask:255.255.255.0

eth0.100 Link encap:Ethernet HWaddr 00:11:d8:d4:94:ea

         inet addr:10.4.10.1  Bcast:10.4.10.255  Mask:255.255.255.0

Tabela de Roteamento

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
200.135.37.64   0.0.0.0         255.255.255.192 U     0      0        0 eth0
10.4.1.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0.40
10.4.2.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0.45
10.4.10.0       0.0.0.0         255.255.255.0   U     0      0        0 eth0.100
0.0.0.0         200.135.37.126  0.0.0.0         UG    100    0        0 eth0


Configuração de arquivos

SMTP/IMAP

  • Instalado Postfix:
apt-get install postfix

Porta Utilizada 25

O Postfix é um servidor de e-mail. Um servidor de correio eletrônico gerência os e-mails que são enviados e recebidos.Os servidores de e-mail podem ser servidores de internet, onde e-mails enviadas e recebidos podem ser transitados para qualquer lugar do mundo, ou servidores de correio intranet onde as mensagens trafegam somente dentro da empresa. O postfix permite utilizar o Imap e O Pop como protocolos de recebimento de mensagens.

main.cf

# Usado principalmente no envio das mensagens
myhostname = mail.true.sj.ifsc.edu.br
mydomain = true.sj.ifsc.edu.br
# Quem pode enviar
mynetworks = 127.0.0.0/8 10.4.2.0/24
relayhost =
inet_interfaces = all
# Tratamento dos cabeçalhos a serem enviados
append_dot_mydomain = no
recipient_delimiter = +

# Usado principalmente no recebimento das mensagens
smtpd_banner = $myhostname ESMTP Qmail - Kurumin
mydestination = mail.true.sj.ifsc.edu.br, localhost.true.sj.ifsc.edu.br, localhost, true.sj.ifsc.edu.br
#
# Quotas
mailbox_size_limit = 0
#
# Apelidos de usuários
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases


# Segurança com TLS
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache

DNS

O DNS da nome a endereço IP, é uma tabela que relaciona nomes e números IP. O DNS direto relaciona o número do IP de uma máquina a seu nome. O DNS reverso relaciona o nome a seu IP.

  • Instalado bind9:
apt-get install bind9
Porta Utilizada 53
  • Arquivos de configurção:

named.conf.local

// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

zone "true.sj.ifsc.edu.br" {
  type master;
  file "/etc/bind/true.sj.ifsc.edu.br";
};

zone "37.135.200.in-addr.arpa" {
  type master;
  file "/etc/bind/37.135.200.in-addr.arpa"; 
};
  • DNS Direto

true.sj.ifsc.edu.br

$TTL    86400
@       IN      SOA     dns.true.sj.ifsc.edu.br. true.true.sj.ifsc.edu.br. (

                       2009062200      ; Serial
                               1d      ; Refresh
                               4h      ; Retry
                               1w      ; Expire
                               1d )    ; Negative Cache TTL
; nome dos dns
@ IN NS dns
  
; Servidor de email ; Mail eXchanger
 
@ IN MX 0 mail
mail IN A 200.135.37.114
 
; adress: endereço
dns IN A 200.135.37.114
www IN A 200.135.37.114 
  • DNS Reverso

37.135.200.in-addr.arpa

  $TTL    86400
 @  IN SOA       dns.true.sj.ifsc.edu.br. true.true.sj.ifsc.edu.br. ( ; Start of Authority
        2009062200 ;Thiego Vierira     ; Serial
                            1d         ; Refresh
                            4h         ; Retry
                            4w         ; Expire
                            1d )       ; Negative Cache TTL
 
  
;Servidores DNS
@  IN NS  dns.true.sj.ifsc.edu.br.
 
;Servidor de email; Mail eXchanger
 
@ IN MX 0 mail.true.sj.ifsc.edu.br.
 
;Address ; endereco
114  IN PTR dns.true.sj.ifsc.edu.br.
114  IN PTR mail.true.sj.ifsc.edu.br.
114  IN PTR www.true.sj.ifsc.edu.br.

DHCP

O DHCP é um mecanismo de endereçamento automático de IP para máquinas se conectarem a rede TCP/IP. Através do DHCP são fornecidas todas as configurações necessárias que um máquina precisa para se conectar a rede. Endereçamento IP, máscara de rede, gateway, servidor DNS, são serviços passados ao host cliente por DHCP.

  • Instalado dhcp3:
 apt-get install dhcp3-server
 Porta Utilizada 67
  • Arquivo de configuração:

dhcpd.conf

#/etc/dhcp3/dhcpd.conf

subnet 10.4.1.0 netmask 255.255.255.0 {
       #IP
       range 10.4.1.128 10.4.1.138;
       #Máscara
       option subnet-mask 255.255.255.0;
       #Broadcast
       option broadcast-address 10.4.1.255;
        #Rota-padrão
       option routers 10.4.1.1;
       #DNS
       option domain-name-servers 200.135.37.114;
}

subnet 10.4.2.0 netmask 255.255.255.0 {
       #IP
       range 10.4.2.128 10.4.2.138;
       #Máscara
       option subnet-mask 255.255.255.0;
       #Broadcast
       option broadcast-address 10.4.2.255;
       #Rota-padrão
       option routers 10.4.2.1;
       #DNS
       option domain-name-servers 200.135.37.114;
}
subnet 10.4.10.0 netmask 255.255.255.0 {
       #IP
       range 10.4.10.128 10.4.10.138;
       #Máscara
       option subnet-mask 255.255.255.0;
       #Broadcast
       option broadcast-address 10.4.10.255;
       #Rota-padrão
       option routers 10.4.10.1;
       #DNS
       option domain-name-servers 200.135.37.114;

Apache / PHP

Para melhor interação e dinamismo, criamos o sistema do Hotel via web. Apache2 junto com php5 serviram para criação das paginas e aperfeiçoamento do código.

apt-get install php5 
apt-get install apache2

Nenhuma configuração foi necessário, apenas a criação das páginas no diretório /var/www.

SSH

Utilizado para prover acesso remoto ao servidor.

apt-get install sshd

Alterado a configuração para que o ROOT não consiga acessar;

PermitRootLogin no

RADIUS

Ferramenta para autenticação e validação de usuários. Foi implementado também para direcionar usuários para suas determinadas VLans, proporcionando maior segurança na rede.

Pacote do freeradius:

wget ftp://ftp.freeradius.org/pub/freeradius/freeradius-server-2.1.6.tar.gz

Compiladores e Bibliotecas:

make
gcc 
g++
libssl-dev

Todos os arquivos de configuração foram colocados em um único diretório , isso proporciona maior facilidade para manuseio destes. Comando para listagem e preparação para compilação:

./configure --prefix=/usr/local freeradius-server2.1.6 --exe-prefix=/usr/local freeradius-server2.1.6 

Compilação:

make 

Alocação em seus respectivos diretórios:

make install

Devido a necessidade de unir os arquivos em um só diretório, foi criado links para utilizar a aplicação sem maiores problemas. Links criados:

radiusd
radtest
rc.radiusd

Arquivos configurados

Arquivo users:

O hóspede terá como login o nome e sua senha o CPF.

#datadesaida cpf
aluno  Cleartext-Password := "123"
Tunnel-Type = "VLAN",
Tunnel-Medium-Type = "IEEE-802",
Tunnel-Private-Group-ID = "40"

Arquivo clients.conf

Exemplo de arquivo de configuração. Cada switch e AP terão seus dados cadastrados neste formato.

client 200.135.37.66 {
       ipaddr = 200.135.37.66
       shortname = teste
       secret  = 123456
       nastype = other
}

SNMP

É um protocolo de gerência típica de redes TCP/IP, da camada de aplicação que facilita o intercâmbio de informação entre os dispositivos de rede. O SNMP possibilita aos administradores de uma rede gerenciar o desempenho da rede, encontrar e resolver problemas, como também planejar crescimento.

atp-get isntall snmpd

Foi zerado o arquivo snmpd.conf e criado com os seguintes parâmetros

snmpd.conf 
rocommunity true
sysLocation Lab Redes 1 IFSC/SJ
sysContact root@true.sj.ifsc.edu.br
sysServices 72

CACTI

www.true.sj.ifsc.edu.br/cacti

O Cacti é uma ferramenta que recolhe informações de uma rede de computadores e exibe em forma de gráficos. Monitora o estado de elementos de rede e programas, bem como a largura de banda utilizada pela CPU, trabalha com o protocolo snmp.

apt-get install cacti

Cacti terá que interagir com o snmp. Em sua configuração, será necessário indicar a "rocommunity" escolhida no arquivo snmpd.conf, só assim o cacti conseguirá gerar os gráficos normalmente. A criação é opcional, podendo o usuário criar seus próprios gráficos como utilizar alguns modelos já disponíveis na aplicação.

Com esta ferramenta é possível monitorar as interfaces de rede, partições do sistema, login de usuários, consumo de memória entre outros. Para ter uma boa administração de rede, é fundamente esse tipo de aplicação, pois pode-se ter o controle do servidor apenas com gráficos. Os dados coletados podem ser salvos e guardados por muito tempo, seu tamanho é pequeno e permite grande armazenamento. Interagindo com outras ferramentas, é possível encaminhar e-mail, torpedo e outras mensagens para o administrador, como forma de alarmar sobre situações adversas.

JABBER / XMPP

  • Fonte de Donwload:

Openfire 3.6.4

Necessário pacote java para utilização da aplicação Jabber.

apt-get install sun-java6-jre

Confirmação de instalação do pacote:

update-alternatives --config java
/usr/lib/jvm/java-6-sun/jre/bin/java

Criação de base OpenFire no banco de dados. Liberado privilégios para o usuário "openfire"

GRANT ALL PRIVILEGIES..

Instalação do pacote OpenFire:

dpkg -i openfire.3.6.4.deb

Para conclusão de instalação, acessar via web localhost:9090 e concluir a instalação.

Instalação de Equipamentos de Redes - IER

Imagem:Pôr-do-sol.jpg

  • Fonte de pesquisa:

Profº Marcelo Sobral

Configuração de Switch A e B:

  • Criado Vlans:

vconfig add eth0 VID

Funcionários:45

Hóspedes:40

Visitantes:100

  • Criação de Vlans no servidor True:

vconfig add interface VID

  • Configurado servidor Radius nos Switchs:

Security Management -> Port Access Entity -> RADIUS. obs.: Devido a falta de equipamentos, foi configurado um servidor Radius-Proxy pelos professores, onde este fará o direcionamento para o servidor das equipes. Logo a configuração nos Switchs foi direcionada ao servidor Proxy.

  • Configuração do AP

Access Point utilizado para prover o acesso wirelles. Foi configurado para direcionar todas as solicitações ao Radius-Proxy. Todos os equipamentos que ficam "no meio" da rede, serão configurados no arquivo clients.conf, porém apenas na máquina Radius-Proxy.

  • Estabelecido enlace entre laboratórios:

Com enlace estabelecido, foi colocado os modens e roteadores para comunicação.

Programação para redes de Computadores - PRC

  • Criado página em HTML

www.true.sj.ifsc.edu.br

- Foi criado uma aplicação para realizar chek-in de usuários no hotel, o hóspede é cadastrado e recebe login e senha para acessar a rede, porém é liberado apenas o acesso a internet, o login é válido durante a estadia do hóspede no hotel e caso necessário prolongar a estadia, seu login sobre a mesma prolongação.

  • Rotina para deletar usuário:

No arquivo users do freeradius, foi adicionado uma linha para conseguirmos excluir o login de acordo com sua data de saida. O comando sed busca a data e compara com a data atual, quando condiz, exclui.

- Rotina programada para rodar todo dia às 12h30

#!/bin/bash

data=`date +%F`
sed -i /\#$data/,+5d  /usr/local/freeradius-server-2.1.6/etc/raddb/users

- Foi adicionado na crontab com os seguintes parâmetros:

30 12   * * *   root    /usr/local/deleta.sh
  • voltar para página principal [1]