Mudanças entre as edições de "Gerência de Rede (diário 2015-1)"
(54 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 2: | Linha 2: | ||
==Avaliação== | ==Avaliação== | ||
Serão realizadas 4 avaliações ao longo do semestre. De caráter prático, contemplarão todo o conteúdo da disciplina ministrado até o momento. | Serão realizadas 4 avaliações ao longo do semestre. De caráter prático, contemplarão todo o conteúdo da disciplina ministrado até o momento. | ||
+ | |||
+ | <center> | ||
+ | {| border=1 | ||
+ | |- | ||
+ | | '''Aluno''' || '''Prova 1''' || '''Projeto''' || '''Recuperação''' || '''FINAL | ||
+ | |- | ||
+ | | Bruno || B || D || C || C | ||
+ | |- | ||
+ | | Douglas || D || D || D || D | ||
+ | |- | ||
+ | | Giovanni || C || D || A || C | ||
+ | |- | ||
+ | | Michel || C || D || C || C | ||
+ | |- | ||
+ | | Nathan || D || D || D || D | ||
+ | |- | ||
+ | | Raphael || C || C || - || C | ||
+ | |- | ||
+ | | Renan || A || C || - || C | ||
+ | |- | ||
+ | | Renato || D || D || D || D | ||
+ | |- | ||
+ | |} | ||
+ | </center> | ||
==Composição do conceito final== | ==Composição do conceito final== | ||
Linha 13: | Linha 37: | ||
=Serviços= | =Serviços= | ||
+ | |||
+ | <center> | ||
{| border=1 | {| border=1 | ||
| '''Serviço''' || '''RFC''' || '''Porta(s)''' | | '''Serviço''' || '''RFC''' || '''Porta(s)''' | ||
Linha 23: | Linha 49: | ||
|- | |- | ||
| NTP || RFC 5905 || 123/UDP | | NTP || RFC 5905 || 123/UDP | ||
+ | |- | ||
+ | | DNS || RFC 1034 || 53/UDP, 53/TCP | ||
+ | |- | ||
+ | | HTTP || RFC 2616 || 80/TCP, 443/TCP (HTTP+SSL/TLS) | ||
+ | |- | ||
+ | | SMTP || RFC 5321 || 25/TCP | ||
+ | |- | ||
+ | | IMAP || RFC 3501 || 143/TCP, 993/TCP (IMAP4+SSL/TLS) | ||
+ | |- | ||
+ | | SNMP || RFC 1157 || 161/UDP, 1612/UDP (''trap'') | ||
|} | |} | ||
+ | </center> | ||
=Aulas= | =Aulas= | ||
Linha 36: | Linha 73: | ||
Revisão: IPv4. | Revisão: IPv4. | ||
− | + | {{collapse top|Cenário com [[Netkit]].}} | |
<code> | <code> | ||
# Global | # Global | ||
Linha 278: | Linha 315: | ||
# Rede: roteamento | # Rede: roteamento | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | {{collapse bottom}} | ||
==26/02: DHCP== | ==26/02: DHCP== | ||
− | * | + | * Primeiro dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/ee284a953513c6fcea8e9c8d5b7dcd730233caf7 DHCP]. |
+ | |||
==05/03: Syslog, Cron e NTP== | ==05/03: Syslog, Cron e NTP== | ||
+ | Segundo dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/7fb0d62f63e8847f2caef4dcd994fa329ef87f96 syslog, cron e NTP]. | ||
* Serviço syslog: abertura de porta no servidor. | * Serviço syslog: abertura de porta no servidor. | ||
* Serviço cron: agendamento de usuário e de sistema. | * Serviço cron: agendamento de usuário e de sistema. | ||
Linha 301: | Linha 341: | ||
</graphviz></center> | </graphviz></center> | ||
− | + | ==12/03: Gerência de configuração== | |
+ | O modelo [http://en.wikipedia.org/wiki/FCAPS FCAPS], apesar de considerado [http://en.wikipedia.org/wiki/Business_Process_Framework_(eTOM) ultrapassado], ainda é usado como referência teórica dos serviços de gerência em redes de telecomunicações. Nesse modelo, a gerência de configuração é responsável pela aplicação e manutenção da configuração dos equipamentos de/em rede, algo que também está presente em [http://en.wikipedia.org/wiki/ITIL ITIL]. Para fins didáticos, foram utilizadas duas ferramentas que podem auxiliar no processo: | ||
+ | * [[Controle de versão]], sendo o [http://git-scm.com Git] adotado em aula. | ||
+ | * [http://en.wikipedia.org/wiki/Configuration_Management_(ITSM) Automatização de configuração], cuja aplicação escolhida é o [https://puppetlabs.com Puppet]. | ||
+ | Em aula, a configuração do atual cenário foi migrada para o sistema de automatização de configuração integrado ao controle de versão. (em breve o repositório com o resultado da tarefa). | ||
+ | |||
+ | ==19/03: não houve aula== | ||
+ | [http://www.sj.ifsc.edu.br/images/stories/publicacoes/calendario_academico_2015.pdf Feriado] devido ao Dia de São José. | ||
+ | |||
+ | ==26/03: DNS== | ||
+ | Introdução ao Domain Name System. | ||
+ | |||
+ | <center><graphviz> | ||
+ | digraph integracao { | ||
+ | DHCP [shape=Mrecord] | ||
+ | Syslog [shape=Mrecord] | ||
+ | Cron [shape=Mrecord] | ||
+ | NTP [shape=Mrecord] | ||
+ | DNS [shape=Mrecord] | ||
+ | |||
+ | DHCP -> Syslog | ||
+ | DHCP -> NTP | ||
+ | Cron -> Syslog | ||
+ | NTP -> Cron | ||
+ | NTP -> Syslog | ||
+ | DHCP -> DNS | ||
+ | DNS -> NTP | ||
+ | DNS -> Syslog | ||
+ | } | ||
+ | </graphviz></center> | ||
+ | |||
+ | ==02/04: não houve aula== | ||
+ | Sexta-feira Santa. | ||
+ | |||
+ | ==09/04: DNS== | ||
+ | Terceiro dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/8abd38c01c7f7ceb9341bd96d892538f275f82a3 DNS]. | ||
+ | * Registro do dia na forma de comandos: | ||
<code> | <code> | ||
− | --- | + | URLs: |
− | + | http://root-servers.org | |
− | @@ - | + | Comandos: |
− | + | aptitude update | |
− | + | aptitude install bind9 | |
− | + | dpkg -L bind9 | grep bin | |
− | - | + | dpkg -L bind9 | grep etc |
− | - | + | whereis named |
− | + | man named.conf | |
− | + | cd /etc/bind | |
− | + | cat named.conf | |
− | + | cat named.conf.options | |
− | - | + | dig @200.135.37.65 SOA ifsc.edu.br |
− | + | dig +norecurse @200.135.37.65 SOA ifsc.edu.br | |
− | + | dig @200.135.37.65 SOA google.com | |
− | + | dig +norecurse @200.135.37.65 SOA google.com | |
− | + | dig +trace @200.135.37.65 SOA google.com | |
− | + | head -n 5 named.conf.default-zones | |
− | + | ||
+ | zone "." { | ||
+ | |||
+ | type hint; | ||
+ | |||
+ | file "/etc/bind/db.root"; | ||
+ | |||
+ | }; | ||
+ | |||
+ | more db.root | ||
+ | vi named.conf.options | ||
+ | |||
+ | options { | ||
+ | |||
+ | ... | ||
+ | |||
+ | listen-on-v6 { any; }; | ||
+ | |||
+ | listen-on { any; }; | ||
+ | |||
+ | allow-query { any; }; | ||
+ | |||
+ | allow-query-cache { any; }; | ||
+ | |||
+ | allow-recursion { 127.0.0.0/8; 172.31.40.0/24; 192.168.1.0/24; } ; | ||
+ | |||
+ | version ""; | ||
+ | |||
+ | }; | ||
+ | |||
+ | tail -f /var/log/syslog & | ||
+ | service bind9 restart | ||
+ | vi /etc/bind/named.conf.local | ||
+ | |||
+ | zone "gerencia.local" { | ||
+ | |||
+ | type master; | ||
+ | |||
+ | file "/etc/bind/gerencia.local"; | ||
+ | |||
+ | }; | ||
+ | |||
+ | zone "40.31.172.in-addr.arpa" { | ||
+ | |||
+ | type master; | ||
+ | |||
+ | file "/etc/bind/40.31.172.in-addr.arpa"; | ||
+ | |||
+ | }; | ||
+ | |||
+ | vi /etc/bind/gerencia.local | ||
+ | |||
+ | $TTL 86400 | ||
+ | |||
+ | @ IN SOA ns1.gerencia.local. dns-admin.gerencia.local. ( | ||
+ | |||
+ | 2015040901 ; serial | ||
+ | |||
+ | 1d ; refresh | ||
+ | |||
+ | 1h ; retry | ||
+ | |||
+ | 1w ; expire | ||
+ | |||
+ | 1d ; negative cache ttl | ||
+ | |||
+ | ) | ||
+ | |||
+ | @ IN NS ns1.gerencia.local. | ||
+ | |||
+ | ns1 IN A 172.31.40.254 | ||
+ | |||
+ | roteador IN CNAME ns1.gerencia.local. | ||
+ | |||
+ | ftp IN A 172.31.40.12 | ||
+ | |||
+ | vi /etc/bind/40.31.172.in-addr.arpa | ||
+ | |||
+ | $TTL 86400 | ||
+ | |||
+ | @ IN SOA ns1.gerencia.local. dns-admin.gerencia.local. ( | ||
+ | |||
+ | 2015040901 ; serial | ||
+ | |||
+ | 1d ; refresh | ||
+ | |||
+ | 1h ; retry | ||
+ | |||
+ | 1w ; expire | ||
+ | |||
+ | 1d ; negative cache ttl | ||
+ | |||
+ | ) | ||
+ | |||
+ | @ IN NS ns1.gerencia.local. | ||
+ | |||
+ | 254 IN PTR ns1.gerencia.local. | ||
+ | |||
+ | 12 IN PTR ftp.gerencia.local. | ||
+ | |||
+ | diff -u /etc/bind/gerencia.local /etc/bind/40.31.172.in-addr.arpa | ||
+ | service bind9 restart | ||
+ | |||
+ | Apr 9 10:02:44 localhost named[3072]: zone 40.31.172.in-addr.arpa/IN: loaded serial 2015040800 | ||
+ | |||
+ | Apr 9 10:02:44 localhost named[3072]: zone gerencia.local/IN: loaded serial 2015040800 | ||
+ | |||
+ | sed -i 's/dns-nameservers.*/dns-nameservers 127.0.0.1/g' /etc/network/interfaces | ||
+ | cat > /etc/resolv.conf <<FIM | ||
+ | search gerencia.local | ||
+ | nameserver 127.0.0.1 | ||
+ | FIM | ||
+ | sed -i 's/domain-name-servers.*/domain-name-servers 172.31.40.254;/g' /etc/dhcp/dhcpd.conf | ||
+ | service isc-dhcp-server restart | ||
+ | --- CONTROLE DE VERSAO | ||
+ | vi ~/.gitconfig | ||
+ | [user] | ||
+ | name = <nome> | ||
+ | email = <email> | ||
+ | apt-get install git | ||
+ | cd /etc | ||
+ | git init | ||
+ | git add resolv.conf | ||
+ | git add network/interfaces | ||
+ | git add dhcp/dhcpd.conf | ||
+ | git add bind/named.conf.options | ||
+ | git add bind/named.conf.local | ||
+ | git add bind/gerencia.local | ||
+ | git add bind/40.31.172.in-addr.arpa | ||
+ | git commit -a -m "Aula de 09/04/2015." | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | ===Trabalho para semana que vem=== | ||
+ | Semana que vem haverá a primeira avaliação da disciplina. De caráter prático, trata-se da seguinte implementação: | ||
+ | * Duas redes, uma interna e outra externa. | ||
+ | * Uma máquina que será roteador e servidor de aplicações. | ||
+ | * Na rede externa, portanto, haverá apenas o roteador/servidor. | ||
+ | * Na rede interna, poderá haver até 50 computadores em rede, incluindo notebooks a celulares. | ||
+ | * O servidor deverá, assim, facilitar a configuração de rede e de hora certa desses dispositivos. | ||
+ | * Além disso, o mesmo servidor irá comportar, futuramente, uma página Web com a URL: http://www.provedorlocal.com.br, cujo único IP obtido junto à operadora é 200.135.233.45. | ||
+ | * Internamente, também estará disponível o endereço http://intranet.provedorlocal.com.br. | ||
+ | * Para garantir o bom funcionamento do ambiente, a cada hora o servidor deverá verificar se todos os seus serviços em rede estão rodando. Em caso contrário, deverá (re)iniciar aqueles parados. | ||
+ | |||
+ | ===16/04: avaliação e HTTP=== | ||
+ | * Primeira avaliação da disciplina. | ||
+ | * Apresentação de HTTP (RFC 2616), HTML e URL (sobre URI: RFC 3986). | ||
+ | |||
+ | |||
+ | <center><graphviz> | ||
+ | digraph integracao { | ||
+ | DHCP [shape=Mrecord] | ||
+ | Syslog [shape=Mrecord] | ||
+ | Cron [shape=Mrecord] | ||
+ | NTP [shape=Mrecord] | ||
+ | DNS [shape=Mrecord] | ||
+ | HTTP [shape=Mrecord] | ||
+ | |||
+ | DHCP -> Syslog | ||
+ | DHCP -> NTP | ||
+ | Cron -> Syslog | ||
+ | NTP -> Cron | ||
+ | NTP -> Syslog | ||
+ | DHCP -> DNS | ||
+ | DNS -> NTP | ||
+ | DNS -> Syslog | ||
+ | NTP -> HTTP | ||
+ | DNS -> HTTP | ||
+ | } | ||
+ | </graphviz></center> | ||
+ | |||
+ | ==23/04: HTTP== | ||
+ | * HTTP estático. | ||
+ | |||
+ | ==30/04: HTTP== | ||
+ | * Quarto dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/edf7dccdca59ecaebfac874149a26a448e588d12 HTTP] estático e dinâmico. Como ferramenta, foi escolhido o [http://codex.wordpress.org/pt-br:Instalando_o_WordPress_-_Instru%C3%A7%C3%B5es_Detalhadas WordPress]. | ||
+ | |||
+ | ==07/05: HTTP== | ||
+ | * Teste de desempenho de HTTP com [http://httpd.apache.org/docs/2.2/programs/ab.html ab]. | ||
+ | * Balanceamento de carga de conteúdo dinâmico com [http://www.haproxy.org HAproxy]. | ||
+ | |||
+ | ==14/05: SMTP e IMAP== | ||
+ | Quinto dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/44a14e8e2fcff89fd8a63d29ccaa8cf97957c944 SMTP e IMAPv4], para envio e recebimento e leitura de email respectivamente. Foram usadas as implementações Postfix e Dovecot. | ||
+ | |||
+ | <center><graphviz> | ||
+ | digraph integracao { | ||
+ | DHCP [shape=Mrecord] | ||
+ | Syslog [shape=Mrecord] | ||
+ | Cron [shape=Mrecord] | ||
+ | NTP [shape=Mrecord] | ||
+ | DNS [shape=Mrecord] | ||
+ | HTTP [shape=Mrecord] | ||
+ | SMTP [shape=Mrecord] | ||
+ | IMAP [shape=Mrecord] | ||
+ | |||
+ | DHCP -> Syslog | ||
+ | DHCP -> NTP | ||
+ | Cron -> Syslog | ||
+ | NTP -> Cron | ||
+ | NTP -> Syslog | ||
+ | DHCP -> DNS | ||
+ | DNS -> NTP | ||
+ | DNS -> Syslog | ||
+ | NTP -> HTTP | ||
+ | DNS -> HTTP | ||
+ | Syslog -> SMTP | ||
+ | NTP -> SMTP | ||
+ | DNS -> SMTP | ||
+ | Syslog -> IMAP | ||
+ | NTP -> IMAP | ||
+ | DNS -> IMAP | ||
+ | } | ||
+ | </graphviz></center> | ||
+ | |||
+ | ==21/05: Webmail== | ||
+ | Sexto dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/3b95e5294f2f17156877c00da9d0f4880b109833 RoundCube] para prover o serviço de ''webmail''. | ||
+ | <center><graphviz> | ||
+ | digraph integracao { | ||
+ | DHCP [shape=Mrecord] | ||
+ | Syslog [shape=Mrecord] | ||
+ | Cron [shape=Mrecord] | ||
+ | NTP [shape=Mrecord] | ||
+ | DNS [shape=Mrecord] | ||
+ | HTTP [shape=Mrecord] | ||
+ | SMTP [shape=Mrecord] | ||
+ | IMAP [shape=Mrecord] | ||
+ | Webmail [shape=circle,color=blue,fontcolor=blue] | ||
− | + | DHCP -> Syslog | |
− | + | DHCP -> NTP | |
− | + | Cron -> Syslog | |
− | + | NTP -> Cron | |
+ | NTP -> Syslog | ||
+ | DHCP -> DNS | ||
+ | DNS -> NTP | ||
+ | DNS -> Syslog | ||
+ | NTP -> HTTP | ||
+ | DNS -> HTTP | ||
+ | Syslog -> SMTP | ||
+ | NTP -> SMTP | ||
+ | DNS -> SMTP | ||
+ | Syslog -> IMAP | ||
+ | NTP -> IMAP | ||
+ | DNS -> IMAP | ||
+ | DNS -> Webmail | ||
+ | HTTP -> Webmail | ||
+ | SMTP -> Webmail | ||
+ | IMAP -> Webmail | ||
+ | } | ||
+ | </graphviz></center> | ||
− | + | ==28/05: SNMP== | |
− | + | Sétimo dia do projeto: [https://github.com/boidacarapreta/ifsc/commit/9e4f4a0d0d1f053bfa14477089d6c0760c3acbd6 SNMP]. Visão geral e comandos básicos de navegação na árvore de objetos, MIBs. Utilizada a implementação do [http://www.zabbix.com Zabbix] como gerente. | |
− | |||
− | + | <center><graphviz> | |
− | + | digraph integracao { | |
− | + | DHCP [shape=Mrecord] | |
+ | Syslog [shape=Mrecord] | ||
+ | Cron [shape=Mrecord] | ||
+ | NTP [shape=Mrecord] | ||
+ | DNS [shape=Mrecord] | ||
+ | HTTP [shape=Mrecord] | ||
+ | SMTP [shape=Mrecord] | ||
+ | IMAP [shape=Mrecord] | ||
+ | Webmail [shape=circle,color=blue,fontcolor=blue] | ||
+ | SNMP [shape=Mrecord] | ||
− | + | DHCP -> Syslog | |
− | + | DHCP -> NTP | |
− | + | Cron -> Syslog | |
− | + | NTP -> Cron | |
− | + | NTP -> Syslog | |
− | + | DHCP -> DNS | |
− | + | DNS -> NTP | |
− | + | DNS -> Syslog | |
− | + | NTP -> HTTP | |
− | + | DNS -> HTTP | |
− | + | Syslog -> SMTP | |
− | + | NTP -> SMTP | |
− | + | DNS -> SMTP | |
− | + | Syslog -> IMAP | |
− | + | NTP -> IMAP | |
− | + | DNS -> IMAP | |
− | + | DNS -> Webmail | |
− | + | HTTP -> Webmail | |
− | + | SMTP -> Webmail | |
− | + | IMAP -> Webmail | |
− | + | NTP -> SNMP | |
− | + | DNS -> SNMP | |
− | + | Syslog -> SNMP | |
− | |||
} | } | ||
+ | </graphviz></center> | ||
+ | |||
+ | ==04/06: não houve aula== | ||
+ | |||
+ | ==11/06: segunda avaliação== | ||
+ | Adiado para o projeto final da disciplina: implementar todo o cenário usando [https://puppetlabs.com Puppet], o qual deve ser entregue, impreterivelmente, até o dia '''18/06'''. | ||
+ | |||
+ | A [[#Serviços|lista de serviços]] deve ser implementada de acordo com o [https://github.com/boidacarapreta/ifsc/tree/ger20151 andamento deste semestre]. | ||
+ | |||
+ | Para descarregar os arquivos do Github em <tt>/tmp/ger20151</tt>: | ||
+ | <syntaxhighlight lang=bash> | ||
+ | git clone https://github.com/boidacarapreta/ifsc.git -b ger20151 /tmp/ger20151 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− | |||
− |
Edição atual tal como às 17h00min de 15 de julho de 2015
Sobre a disciplina
Avaliação
Serão realizadas 4 avaliações ao longo do semestre. De caráter prático, contemplarão todo o conteúdo da disciplina ministrado até o momento.
Aluno | Prova 1 | Projeto | Recuperação | FINAL |
Bruno | B | D | C | C |
Douglas | D | D | D | D |
Giovanni | C | D | A | C |
Michel | C | D | C | C |
Nathan | D | D | D | D |
Raphael | C | C | - | C |
Renan | A | C | - | C |
Renato | D | D | D | D |
Composição do conceito final
O conceito final será assim composto:
- A: todas as avaliações com conceito A.
- B: no máximo um C, e para cada C um A correspondente - exceto projeto final.
- C: no máximo um D, e para cada D um A correspondente - exceto projeto final.
- D: demais casos.
Observação: a composição do conceito final inclui os conceitos de todas as avaliações e recuperações.
Serviços
Serviço | RFC | Porta(s) |
DHCP | RFC 2131, RFC 2132 | 67/UDP |
Syslog | RFC 5424 | 514/UDP, 514/TCP |
Cron | - | - |
NTP | RFC 5905 | 123/UDP |
DNS | RFC 1034 | 53/UDP, 53/TCP |
HTTP | RFC 2616 | 80/TCP, 443/TCP (HTTP+SSL/TLS) |
SMTP | RFC 5321 | 25/TCP |
IMAP | RFC 3501 | 143/TCP, 993/TCP (IMAP4+SSL/TLS) |
SNMP | RFC 1157 | 161/UDP, 1612/UDP (trap) |
Aulas
05/02: Revisão de S.O.
- Apresentação da disciplina e discussão do plano de ensino.
- Revisão: sistemas operacionais baseados no UNIX e comandos básicos de rede.
12/02: Revisão de S.O.
- Revisão: sistemas operacionais baseados no UNIX.
19/02: Revisão de IPv4
Revisão: IPv4.
Cenário com Netkit. |
---|
|
26/02: DHCP
- Primeiro dia do projeto: DHCP.
05/03: Syslog, Cron e NTP
Segundo dia do projeto: syslog, cron e NTP.
- Serviço syslog: abertura de porta no servidor.
- Serviço cron: agendamento de usuário e de sistema.
- Serviço NTP: visão geral do protocolo, funcionamento em rede e configuração do servidor.
Ao final da aula, integração dos serviços:
digraph integracao {
DHCP [shape=Mrecord] Syslog [shape=Mrecord] Cron [shape=Mrecord] NTP [shape=Mrecord]
DHCP -> Syslog DHCP -> NTP Cron -> Syslog NTP -> Cron NTP -> Syslog
}
</graphviz>12/03: Gerência de configuração
O modelo FCAPS, apesar de considerado ultrapassado, ainda é usado como referência teórica dos serviços de gerência em redes de telecomunicações. Nesse modelo, a gerência de configuração é responsável pela aplicação e manutenção da configuração dos equipamentos de/em rede, algo que também está presente em ITIL. Para fins didáticos, foram utilizadas duas ferramentas que podem auxiliar no processo:
- Controle de versão, sendo o Git adotado em aula.
- Automatização de configuração, cuja aplicação escolhida é o Puppet.
Em aula, a configuração do atual cenário foi migrada para o sistema de automatização de configuração integrado ao controle de versão. (em breve o repositório com o resultado da tarefa).
19/03: não houve aula
Feriado devido ao Dia de São José.
26/03: DNS
Introdução ao Domain Name System.
digraph integracao {
DHCP [shape=Mrecord] Syslog [shape=Mrecord] Cron [shape=Mrecord] NTP [shape=Mrecord] DNS [shape=Mrecord]
DHCP -> Syslog DHCP -> NTP Cron -> Syslog NTP -> Cron NTP -> Syslog DHCP -> DNS DNS -> NTP DNS -> Syslog
}
</graphviz>02/04: não houve aula
Sexta-feira Santa.
09/04: DNS
Terceiro dia do projeto: DNS.
- Registro do dia na forma de comandos:
URLs:
http://root-servers.org
Comandos:
aptitude update
aptitude install bind9
dpkg -L bind9 | grep bin
dpkg -L bind9 | grep etc
whereis named
man named.conf
cd /etc/bind
cat named.conf
cat named.conf.options
dig @200.135.37.65 SOA ifsc.edu.br
dig +norecurse @200.135.37.65 SOA ifsc.edu.br
dig @200.135.37.65 SOA google.com
dig +norecurse @200.135.37.65 SOA google.com
dig +trace @200.135.37.65 SOA google.com
head -n 5 named.conf.default-zones
zone "." {
type hint;
file "/etc/bind/db.root";
};
more db.root
vi named.conf.options
options {
...
listen-on-v6 { any; };
listen-on { any; };
allow-query { any; };
allow-query-cache { any; };
allow-recursion { 127.0.0.0/8; 172.31.40.0/24; 192.168.1.0/24; } ;
version "";
};
tail -f /var/log/syslog &
service bind9 restart
vi /etc/bind/named.conf.local
zone "gerencia.local" {
type master;
file "/etc/bind/gerencia.local";
};
zone "40.31.172.in-addr.arpa" {
type master;
file "/etc/bind/40.31.172.in-addr.arpa";
};
vi /etc/bind/gerencia.local
$TTL 86400
@ IN SOA ns1.gerencia.local. dns-admin.gerencia.local. (
2015040901 ; serial
1d ; refresh
1h ; retry
1w ; expire
1d ; negative cache ttl
)
@ IN NS ns1.gerencia.local.
ns1 IN A 172.31.40.254
roteador IN CNAME ns1.gerencia.local.
ftp IN A 172.31.40.12
vi /etc/bind/40.31.172.in-addr.arpa
$TTL 86400
@ IN SOA ns1.gerencia.local. dns-admin.gerencia.local. (
2015040901 ; serial
1d ; refresh
1h ; retry
1w ; expire
1d ; negative cache ttl
)
@ IN NS ns1.gerencia.local.
254 IN PTR ns1.gerencia.local.
12 IN PTR ftp.gerencia.local.
diff -u /etc/bind/gerencia.local /etc/bind/40.31.172.in-addr.arpa
service bind9 restart
Apr 9 10:02:44 localhost named[3072]: zone 40.31.172.in-addr.arpa/IN: loaded serial 2015040800
Apr 9 10:02:44 localhost named[3072]: zone gerencia.local/IN: loaded serial 2015040800
sed -i 's/dns-nameservers.*/dns-nameservers 127.0.0.1/g' /etc/network/interfaces
cat > /etc/resolv.conf <<FIM
search gerencia.local
nameserver 127.0.0.1
FIM
sed -i 's/domain-name-servers.*/domain-name-servers 172.31.40.254;/g' /etc/dhcp/dhcpd.conf
service isc-dhcp-server restart
--- CONTROLE DE VERSAO
vi ~/.gitconfig
[user]
name = <nome>
email = <email>
apt-get install git
cd /etc
git init
git add resolv.conf
git add network/interfaces
git add dhcp/dhcpd.conf
git add bind/named.conf.options
git add bind/named.conf.local
git add bind/gerencia.local
git add bind/40.31.172.in-addr.arpa
git commit -a -m "Aula de 09/04/2015."
</syntaxhighlight>
Trabalho para semana que vem
Semana que vem haverá a primeira avaliação da disciplina. De caráter prático, trata-se da seguinte implementação:
- Duas redes, uma interna e outra externa.
- Uma máquina que será roteador e servidor de aplicações.
- Na rede externa, portanto, haverá apenas o roteador/servidor.
- Na rede interna, poderá haver até 50 computadores em rede, incluindo notebooks a celulares.
- O servidor deverá, assim, facilitar a configuração de rede e de hora certa desses dispositivos.
- Além disso, o mesmo servidor irá comportar, futuramente, uma página Web com a URL: http://www.provedorlocal.com.br, cujo único IP obtido junto à operadora é 200.135.233.45.
- Internamente, também estará disponível o endereço http://intranet.provedorlocal.com.br.
- Para garantir o bom funcionamento do ambiente, a cada hora o servidor deverá verificar se todos os seus serviços em rede estão rodando. Em caso contrário, deverá (re)iniciar aqueles parados.
16/04: avaliação e HTTP
- Primeira avaliação da disciplina.
- Apresentação de HTTP (RFC 2616), HTML e URL (sobre URI: RFC 3986).
<graphviz>
digraph integracao {
DHCP [shape=Mrecord]
Syslog [shape=Mrecord]
Cron [shape=Mrecord]
NTP [shape=Mrecord]
DNS [shape=Mrecord]
HTTP [shape=Mrecord]
DHCP -> Syslog
DHCP -> NTP
Cron -> Syslog
NTP -> Cron
NTP -> Syslog
DHCP -> DNS
DNS -> NTP
DNS -> Syslog
NTP -> HTTP
DNS -> HTTP
}
</graphviz>
23/04: HTTP
- HTTP estático.
30/04: HTTP
07/05: HTTP
14/05: SMTP e IMAP
Quinto dia do projeto: SMTP e IMAPv4, para envio e recebimento e leitura de email respectivamente. Foram usadas as implementações Postfix e Dovecot.
<graphviz>
digraph integracao {
DHCP [shape=Mrecord]
Syslog [shape=Mrecord]
Cron [shape=Mrecord]
NTP [shape=Mrecord]
DNS [shape=Mrecord]
HTTP [shape=Mrecord]
SMTP [shape=Mrecord]
IMAP [shape=Mrecord]
DHCP -> Syslog
DHCP -> NTP
Cron -> Syslog
NTP -> Cron
NTP -> Syslog
DHCP -> DNS
DNS -> NTP
DNS -> Syslog
NTP -> HTTP
DNS -> HTTP
Syslog -> SMTP
NTP -> SMTP
DNS -> SMTP
Syslog -> IMAP
NTP -> IMAP
DNS -> IMAP
}
</graphviz>
21/05: Webmail
Sexto dia do projeto: RoundCube para prover o serviço de webmail.
<graphviz>
digraph integracao {
DHCP [shape=Mrecord]
Syslog [shape=Mrecord]
Cron [shape=Mrecord]
NTP [shape=Mrecord]
DNS [shape=Mrecord]
HTTP [shape=Mrecord]
SMTP [shape=Mrecord]
IMAP [shape=Mrecord]
Webmail [shape=circle,color=blue,fontcolor=blue]
DHCP -> Syslog
DHCP -> NTP
Cron -> Syslog
NTP -> Cron
NTP -> Syslog
DHCP -> DNS
DNS -> NTP
DNS -> Syslog
NTP -> HTTP
DNS -> HTTP
Syslog -> SMTP
NTP -> SMTP
DNS -> SMTP
Syslog -> IMAP
NTP -> IMAP
DNS -> IMAP
DNS -> Webmail
HTTP -> Webmail
SMTP -> Webmail
IMAP -> Webmail
}
</graphviz>
28/05: SNMP
Sétimo dia do projeto: SNMP. Visão geral e comandos básicos de navegação na árvore de objetos, MIBs. Utilizada a implementação do Zabbix como gerente.
<graphviz>
digraph integracao {
DHCP [shape=Mrecord]
Syslog [shape=Mrecord]
Cron [shape=Mrecord]
NTP [shape=Mrecord]
DNS [shape=Mrecord]
HTTP [shape=Mrecord]
SMTP [shape=Mrecord]
IMAP [shape=Mrecord]
Webmail [shape=circle,color=blue,fontcolor=blue]
SNMP [shape=Mrecord]
DHCP -> Syslog
DHCP -> NTP
Cron -> Syslog
NTP -> Cron
NTP -> Syslog
DHCP -> DNS
DNS -> NTP
DNS -> Syslog
NTP -> HTTP
DNS -> HTTP
Syslog -> SMTP
NTP -> SMTP
DNS -> SMTP
Syslog -> IMAP
NTP -> IMAP
DNS -> IMAP
DNS -> Webmail
HTTP -> Webmail
SMTP -> Webmail
IMAP -> Webmail
NTP -> SNMP
DNS -> SNMP
Syslog -> SNMP
}
</graphviz>
04/06: não houve aula
11/06: segunda avaliação
Adiado para o projeto final da disciplina: implementar todo o cenário usando Puppet, o qual deve ser entregue, impreterivelmente, até o dia 18/06.
A lista de serviços deve ser implementada de acordo com o andamento deste semestre.
Para descarregar os arquivos do Github em /tmp/ger20151:
git clone https://github.com/boidacarapreta/ifsc.git -b ger20151 /tmp/ger20151