Mudanças entre as edições de "Projeto Integrador - 2013.1 - Pois Agora"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 72: Linha 72:
 
</syntaxhighlight>
 
</syntaxhighlight>
  
===- *Iniciamos a configuração do NTOP;===
+
===- Iniciamos a configuração do NTOP;===
 
<code>
 
<code>
 
aptitude install ntop
 
aptitude install ntop
Linha 79: Linha 79:
 
<code>
 
<code>
 
ntop -A *******
 
ntop -A *******
 +
</syntaxhighlight>
 +
<code>
 +
service ntop restart
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Edição das 18h57min de 29 de julho de 2013

Equipe Pois Agora

  • Gabriel Souza
  • Gustavo Silva
  • João Martins
  • Kauly Bohm


08/07/2013

- Decidimos o nome da equipe; (Pois Agora)

- Pensamos Sobre o esqueleto do projeto;

- Pensamos sobre algumas soluções(restabelecimento do serviços; configuração de: DHCP, DNS e SMTP; Backup);

- Pensamos sobre algumas etapas em referência à matéria de programação (teste de portas abertas; teste de serviços rodando);

- Fizemos verificações de comandos para analisar se estes podem ser incluídos no projeto;

09/07/2013

- Instalamos o Ubuntu-server em duas máquinas: filial e matriz;

- Feito a configuração das interfaces eth0 de cada unidade inserindo nas mesmas os IPs válidos disponibilizados com a máscara 255.255.255.192:

vi /etc/network/interfaces </syntaxhighlight> Matriz: auto eth0 iface eth0 inet static address 200.135.37.97 netmask 255.255.255.192 gateway 200.135.37.126 </syntaxhighlight> Filial: auto eth0 iface eth0 inet static

address 200.135.37.101 netmask 255.255.255.192 gateway 200.135.37.126 </syntaxhighlight>

- Restartamos o serviço para validar as informações:
/etc/init.d/networking restart </syntaxhighlight>

- Realizado a instalação do ssh em ambas as máquinas;

aptitude install ssh </syntaxhighlight>

- Passamos o cabeamento no RAC reservado para os IPs válidos;

- Conseguimos acesso com sucesso nos dois servidores via SSH;

teste@iteste:~$ ssh root@200.135.37.97 +-----------------+ |EQUIPE POIS AGORA| | ACESSO RESTRITO | +-----------------+ root@200.135.37.97's password:


teste@iteste:~$ ssh root@200.135.37.101 +-----------------+ |EQUIPE POIS AGORA| | ACESSO RESTRITO | +-----------------+ root@200.135.37.97's password:

</syntaxhighlight>

- Iniciamos a configuração do NTOP;

aptitude install ntop </syntaxhighlight> Colocamos uma senha de administração: ntop -A ******* </syntaxhighlight> service ntop restart </syntaxhighlight>

- Instalamos e configuramos o servidor DNS para resolver os nomes com master e slave. O master fica na matriz e caso a matriz esteja fora por algum motivo o slave que está na filial responde:

Filial e Matriz: aptitude instal bind9 bind9utils </syntaxhighlight> Matriz: vi /etc/bind/named.conf.local

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

  1. Zona reversa

zone "37.135.200.in-addr.arpa" { type master; file "/etc/bind/zones/rev.37.135.200.in-addr.arpa"; }; </syntaxhighlight> Filial: vi /etc/bind/named.conf.local

zone "poisagora.sj.ifsc.edu.br" IN { type slave; file "/etc/bind/db.slave"; masters {200.135.37.97;}; };

  1. Zona reversa

zone "37.135.200.in-addr.arpa" { type slave; file "/etc/bind/db.37.135.200"; masters {200.135.37.97;}; }; </syntaxhighlight>

Matriz:

vi /etc/bind/zones/pa.zone

@ IN SOA ns1.poisagora.sj.ifsc.edu.br. admin.ns1.poisagora.sj.ifsc.edu.br. (

                       2013071900 ; Serial
                       28800 ; Refresh
                       3600 ; Retry
                       604800 ; Expire
                       38400 ) ; Default TTL
               NS      ns1.poisagora.sj.ifsc.edu.br.
               MX      10 mta.poisagora.sj.ifsc.edu.br.
               IN      A 200.135.37.97

$ORIGIN poisagora.sj.ifsc.edu.br. ns1 IN A 200.135.37.97 mta IN A 200.135.37.97 www IN A 200.135.37.97 web IN CNAME www matriz IN A 200.135.37.97 filial IN A 200.135.37.101 slave IN A 200.135.37.101

vi /etc/bind/zones/rev.37.135.200.in-addr.arpa

$ORIGIN 37.135.200.in-addr.arpa. @ IN SOA ns1.poisagora.sj.ifsc.edu.br. admin.ns1.poisagora.sj.ifsc.edu.br. ( 2013071902; 28800; 604800; 604800; 86400 )

       IN      NS      ns1.poisagora.sj.ifsc.edu.br.
       IN      NS      ns2.poisagora.sj.ifsc.edu.br.

97 IN PTR ns1.poisagora.sj.ifsc.edu.br. 97 IN PTR matriz.poisagora.sj.ifsc.edu.br. 97 IN PTR mta.poisagora.sj.ifsc.edu.br. 97 IN PTR www.poisagora.sj.ifsc.edu.br. 101 IN PTR filial.poisagora.sj.ifsc.edu.br.

</syntaxhighlight>

- Instalamos o Apache e editamos a página default com o nome da equipe apenas para testes.

aptitude install apache2 apache2-utils </syntaxhighlight> adicionamos no arquivo: vi /etc/apache2/sites-available/default

ServerName www.poisagora.sj.ifsc.edu.br ServerAlias *.poisagora.sj.ifsc.edu.br ServerAdmin poisagora@poisagora.sj.ifsc.edu.br </syntaxhighlight> vi /var/www/index.html


<html>

<head>

<blink>POISAGORA?</blink>

</head>

<body>

Equipe:
Gabriel
Gustavo
Joao
Kauly <a href="http://200.135.37.97:3000">NTOP</a>

</body> </html>

</syntaxhighlight>

10/07/2013

- *Instalamos o postfix e configuramos;

Continuar... sudo apt-get install postfix mailutils </syntaxhighlight> vi /etc/postfix/main.cf

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu) biff = no append_dot_mydomain = no readme_directory = no smtpd_use_tls=yes smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache myhostname = mta.poisagora.sj.ifsc.edu.br mydomain = poisagora.sj.ifsc.edu.br alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = $mydomain mydestination = $myhostname, localhost, $mydomain relayhost = mynetworks = 127.0.0.0/8 192.168.1.0/24 200.135.37.0/26 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all home_mailbox = Maildir/ message_size_limit = 10240000 mailbox_command = smtpd_sasl_local_domain = smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes smtpd_recipient_restrictions = permit_sasl_authenticated,permit_mynetworks,reject_unauth_destination

                                                                                                                                        smtpd_tls_security_level = may

smtpd_tls_auth_only = no smtp_tls_note_starttls_offer = yes smtpd_tls_key_file = /etc/ssl/private/smtpd.key smtpd_tls_cert_file = /etc/ssl/certs/smtpd.crt smtpd_tls_CAfile = /etc/ssl/certs/cacert.pem smtpd_tls_loglevel = 1 smtpd_tls_received_header = yes smtpd_tls_session_cache_timeout = 3600s tls_random_source = dev:/dev/urandom inet_protocols = all

</syntaxhighlight>

- Mexemos na configuração do DNS, (MASTER e SLAVE).

- Fizemos prova de IER nas duas últimas aulas;

11/07/2013

- Tivemos explicação sobre cabeamento no projeto integrador;

- Prova nas duas últimas aulas de cabeamento;

12/07/2013

- *Configuramos o MUA com autenticação SASL e instalamos e testamos com o MUTT;

*- Instalamos o SAMBA, porém não terminamos de configurar;

Matriz: aptitude install samba smbfs </syntaxhighlight> Filial aptitude install smbfs smbclient </syntaxhighlight>

- Instalamos o OpenVPN, porém não terminamos de configurar;

aptitude install openvpn bridge-utils </syntaxhighlight>

- Configuramos a BIOS dos servidores para que eles liguem automaticamente, quando tiver queda de energia;

15/07/2013

- *Terminamos de configurar o OpenVPN;

Continuar...

- Instalamos e configuramos o DHCP;

install dhcp3-server </syntaxhighlight> vi /etc/dhcp3/dhcpd.conf

shared-network LOCAL-NET {

       option domain-name "poisagora.sj.ifsc.edu.br";
       option domain-name-servers 10.10.10.1, 200.135.37.97;
       subnet 10.10.10.0 netmask 255.255.255.0 {
               option routers 10.10.10.1;
               range 10.10.10.1 10.10.10.99;
       }

} </syntaxhighlight> Restartamos o serviço para aplicar as configurações: /etc/init.d/dhcp3-server start </syntaxhighlight>

16/07/2013

- *Terminamos de configurar o SAMBA;

Continuar...

- Testamos o DHCP no servidor da MATRIZ;

17/07/2013

- Mudamos os arquivo de Hosts;

Inluimos na:

Matriz: vi /etc/hosts

10.10.10.100 filial </syntaxhighlight> Filial vi /etc/hosts

10.10.10.1 matriz </syntaxhighlight>

- Configuramos o acesso ao ssh sem senha entre matriz<->fillial;

Matriz: ssh-keygen -t dsa -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub | ssh root@filial 'cat - >> ~/.ssh/authorized_keys' cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys </syntaxhighlight> Filial: ssh-keygen -t dsa -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub | ssh root@matriz 'cat - >> ~/.ssh/authorized_keys' cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys </syntaxhighlight>

18 e 19/07/2013

- *Pensamos nas regras do ip tables e começamos a aplicalas e corrigir os problemas;

Continuar...

21/07/2013

- Criamos e aplicamos os Scripts de SLA;

Aplicamos regras na crontab que rodam scripts verificadores a cada tempo definido, para garantir que os serviços voltem a funcionar no período estabelecido. Os scripts verificam se o programa está rodando, caso não esteja ele restarta-o. Matriz: crontab -e

  1. m h dom mon dow command
  • * * * * /etc/sla/estabelecer_vpn_matriz.sh
  • /3 * * * * /etc/sla/restabelecer_dns.sh
  • /3 * * * * /etc/sla/restabelecer_postfix.sh
  • /3 * * * * /etc/sla/restabelecer_dhcp.sh

</syntaxhighlight>

vi /etc/sla/estabelecer_vpn_matriz.sh

  1. !/bin/bash

if [ "$(netstat --program|grep open| wc -l)" -eq "0" ]

       then
              pkill openvpn > /dev/null 2> /dev/null
              cd /etc/openvpn
              service openvpn restart > /dev/null 2> /dev/null

fi sleep 30 if [ "$(netstat --program|grep open| wc -l)" -eq "0" ]

       then
              pkill openvpn > /dev/null 2> /dev/null
              cd /etc/openvpn
              service openvpn restart > /dev/null 2> /dev/null

fi </syntaxhighlight>

vi /etc/sla/restabelecer_dns.sh

  1. !/bin/bash

if [ "$(netstat --program|grep named| wc -l)" -eq "0" ]

       then
              pkill named > /dev/null 2> /dev/null
              service bind9 restart > /dev/null 2> /dev/null

fi </syntaxhighlight>

vi /etc/sla/restabelecer_postfix.sh

  1. !/bin/bash

if [ "$(netstat --program|grep master| wc -l)" -eq "0" ]

       then
              service postfix stop > /dev/null 2> /dev/null
              service postfix restart > /dev/null 2> /dev/null

fi </syntaxhighlight> vi /etc/sla/restabelecer_dhcp.sh

  1. !/bin/bash

if [ "$(netstat --program|grep dhcpd3| wc -l)" -eq "0" ]

       then
              pkill dhcpd3 > /dev/null 2> /dev/null
              /etc/init.d/dhcp3-server start > /dev/null 2> /dev/null

fi </syntaxhighlight>

Filial: crontab -e

  1. m h dom mon dow command
  • * * * * /etc/sla/estabelecer_vpn.sh
  • /3 * * * * /etc/sla/restabelecer_postfix.sh
  • /3 * * * * /etc/sla/restabelecer_dns.sh

</syntaxhighlight> vi /etc/sla/estabelecer_vpn.sh

  1. !/bin/bash

/sbin/route add -host 200.135.37.101 gw 200.135.37.126 /sbin/route del default gw 200.135.37.126 > /dev/null 2> /dev/null /sbin/route add default gw 10.10.10.1 > /dev/null 2> /dev/null

if [ "$(nmap -p22 10.10.10.1|grep open| wc -l)" -eq "0" ]

       then
               pkill openvpn > /dev/null 2> /dev/null
               cd /etc/openvpn
               service openvpn restart > /dev/null 2> /dev/null

fi

sleep 30

/sbin/route add -host 200.135.37.101 gw 200.135.37.126 /sbin/route del default gw 200.135.37.126 > /dev/null 2> /dev/null /sbin/route add default gw 10.10.10.1 > /dev/null 2> /dev/null

if [ "$(nmap -p22 10.10.10.1|grep open| wc -l)" -eq "0" ]

       then
               pkill openvpn > /dev/null 2> /dev/null
               cd /etc/openvpn
               service openvpn restart > /dev/null 2> /dev/null

/sbin/route add -host 200.135.37.101 gw 200.135.37.126 /sbin/route del default gw 200.135.37.126 > /dev/null 2> /dev/null /sbin/route add default gw 10.10.10.1 > /dev/null 2> /dev/null

fi </syntaxhighlight> vi /etc/sla/restabelecer_dns.sh

  1. !/bin/bash

if [ "$(netstat --program|grep named| wc -l)" -eq "0" ]

       then
              pkill named > /dev/null 2> /dev/null
              service bind9 restart > /dev/null 2> /dev/null

fi </syntaxhighlight> vi /etc/sla/restabelecer_postfix.sh

  1. !/bin/bash

if [ "$(netstat --program|grep master| wc -l)" -eq "0" ]

       then
              service postfix stop > /dev/null 2> /dev/null
              service postfix restart > /dev/null 2> /dev/null

fi </syntaxhighlight>

- Criamos e aplicamos os scripts de Backup;

Na crontab aplicamos regras para serem aplicadas ao meio dia e meia noite. O script de backup simplismente salva os arquivos compactados com a hora e data incluso no nome no diretório de backup. O script verificador serve para garantir que tenhamos no máximo os 30 backups mais recentes. Na filial o script envia por ssh com configuração para não pedir senha no diretório de backup.

Matriz: crontab -e

0 12 * * * /etc/sla/script_backup_matriz.sh 0 0 * * * /etc/sla/script_backup_matriz.sh 0 1 * * * /etc/sla/verificador_backup.sh 0 13 * * * /etc/sla/verificador_backup.sh </syntaxhighlight> vi /etc/sla/script_backup_matriz.sh

  1. !/bin/bash

tar -cf /backups/matriz/backup_$(date "+%H%d%m%Y").tar.gz /etc /home </syntaxhighlight> vi /etc/sla/verificador_backup.sh

  1. !/bin/bash

if [ "$(ls -lt /backups/matriz | wc -l)" -ge "31" ] then

               rm -f $(ls -lt /backups/matriz | tail -n 1 | cut -d" " -f8)

fi if [ "$(ls -lt /backups/filial | wc -l)" -ge "31" ] then

               rm -f $(ls -lt /backups/filial | tail -n 1 | cut -d" " -f8)

fi </syntaxhighlight>

Filial: crontab -e

0 12 * * * /etc/sla/script_backup_filial.sh 0 0 * * * /etc/sla/script_backup_filial.sh </syntaxhighlight> vi /etc/sla/script_backup_filial.sh

  1. !/bin/bash

tar zcvf - /etc /home | ssh matriz cat ">" /backups/filial/backup_$(date "+%H%d%m%Y").tar.gz </syntaxhighlight>

25/07/2013

- Instalmos e configuramos o PPPoE;

aptitude install pppoe </syntaxhighlight>

Descomentamos a linha e adicionamos o ip abaixo dela:

Matriz: vi /etc/ppp/peers/dsl-provider

  1. pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452"

200.135.37.97: </syntaxhighlight> Filial: vi /etc/ppp/peers/dsl-provider

  1. pty "/usr/sbin/pppoe -I eth0 -T 80 -m 1452"

200.135.37.101: </syntaxhighlight> Fizemos a conexão com o servidor pppoe com o comando, colocando nosso login e senha quando perguntado: pppoeconf </syntaxhighlight>

26/07/2013

- Trabalhamos na parte da planta do cabeamento;