Gerência de Redes de Computadores (técnico) (diário 2013-2)

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

Plano de Ensino

  • Avaliações:
    • 4, uma por mês - incluindo Projeto Integrador.
    • Conceito Final:
      • A: 4 As.
      • B: para cada 1 C 1 A, e no máximo 1 C.
      • C: para cada 1 D 1 A, e no máximo 1 D.
      • D: demais casos.

Tabela de Serviços

Serviço RFC Executável Configuração Porta
Syslog RFC 5424 /usr/sbin/rsyslogd /etc/rsyslog.conf 514/UDP
NTP RFC 5905 /usr/sbin/ntpd /etc/ntp.conf 123/UDP
DHCP RFC 2131 /usr/sbin/dhcpd /etc/dhcp/dhcpd.conf 67/UDP

<graphviz> digraph Serviços {

subgraph cluster_Camada3 {
 label="Camada 3"
 DHCP [shape=Mrecord]
 Rede [shape=Mrecord]
}
subgraph cluster_Locais {
 label="Locais"
 Syslog [shape=Mrecord]
 Cron [shape=Mrecord]
}
NTP [shape=Mrecord]
DHCP -> Rede
DHCP -> NTP [color=blue]
Rede -> NTP [color=blue]
Rede -> Syslog
NTP -> Syslog [color=blue]
NTP -> Cron [color=blue]
Syslog -> Cron
Syslog -> Rede
Syslog -> DHCP
Syslog -> NTP

} </graphviz>

Aulas

16/08: visão geral da disciplina

  • Visão geral da disciplina: etapas e tópicos, programação.
  • Materiais sugeridos:
    • Éric Lévénéz[1]
    • Guia Foca [2]
    • UNIX and Linux Sys­tem Ad­min­is­tra­tion Hand­book[3]
    • Guia do Administrador do Sistema (2ª edição)[4]

19/08: sistema operacional variante do UNIX

  • O tripé Usuário, Processo e Dados; ou melhor, multiusuário, multitarefa e multidados. O kernel como controle e abstração do hardware para o usuário final. O arquivo como abstração final: Tudo é arquivo ou conteúdo de....
  • Comandos de manipulação de usuários, grupos, processos, arquivos, manuais de sobrevivência (which, whereis, man).
  • Execução de um programa, seja ele compilado (código de máquina) ou interpretado - o usuário que roda um processo que manipula um arquivo.
  • Apenas um kernel?

23/08: conceitos básicos

  • Revistos os dois conceitos básicos: arquivo ("tudo é arquivo ou conteúdo de") e processos.
  • Exercícios de pesquisa em arquivos:
    • Quantos arquivos pertencem ao usuário aluno?
    • Quais os 50 maiores arquivos do sistema?
    • Quais os 50 maiores diretórios do sistema (contando com seu conteúdo)?
    • Quais arquivos não têm dono ou grupo correspondente?
    • Quais arquivos foram modificados há mais de 15 dias pelo usuário root?
    • Dos arquivos do tipo socket (s), quais não estão em /var?

26/08: instalação do S.O.

02/09: boot e o processo init

  • Visão do início do sistema, diretório raiz (/) e o primeiro processo, init, com suas configurações.
  • O primeiro serviço em rede, syslog, que trata da auditoria de sistema(s).

06/09: rede, cron e hora certa

  • Serviços básicos de rede, agendamento de tarefas com cron e hora certa com NTP.
  • Configuração exemplo de rede: arquivo /etc/network/interfaces.

auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.1.100 netmask 255.255.255.0 gateway 192.168.1.1 dns-search sj.ifsc.edu.br dns-nameservers 200.135.37.72 200.135.37.65 </syntaxhighlight>

09/09: DHCP

  • O serviço DHCP.
  • Configuração de exemplo em aula: arquivo /etc/dhcp/dhcpd.conf.

authoritative;

  1. Integração com Syslog

log-facility local7;

  1. Integração com DNS

ddns-update-style none; option domain-name "sj.ifsc.edu.br"; option domain-name-servers 200.135.37.72, 200.135.37.65;

  1. Tempos de "aluguel"

default-lease-time 3600; max-lease-time 14400;

subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.50 192.168.1.99; option subnet-mask 255.255.255.0; option broadcast-address 192.168.1.255; option routers 192.168.1.1; # # Integração com NTP option ntp-servers 192.168.1.1; } </syntaxhighlight>

  • Arquivos de log:
    • /var/log/syslog: eventos do serviço.
    • /var/lib/dhcp/dhcpd.leases: concessões de endereço.

13/09: DNS

  • Visto o serviço DNS, os servidores raiz e as organizações IANA e ICANN[5].
  • A implementação bind, da ISC. Alguns arquivos de configuração:
    • /etc/named.conf
    • /etc/named.conf.local
    • /etc/named.conf.options

16/09: DNS e revisão de IP

  • Apresentação e configuração dos principais arquivos de configuração do DNS, e criação de um domínio com autoridade local: gerencia.com.br para ilustrar a criação e entender melhor a delegação de domínios.
  • Iniciada a revisão de conceitos sobre máscara de sub-rede e roteamento.

20/09: atividade de Máscara de sub-rede

Para reforçar a revisão, a seguir algumas atividades a serem feitas em relação a máscara de sub-rede.

  1. Considere a rede 172.16.0.0/16. Agora, segmente-a para resolver os seguintes problemas:
    1. 2 sub-redes de mesmo tamanho, onde caibam pelo menos 50 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
    2. 5 sub-redes de mesmo tamanho, onde caibam pelo menos 10 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
    3. 10 sub-redes de mesmo tamanho, onde caibam pelo menos 10 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
    4. 3 sub-redes de tamanhos diversos, ondem caibam, respectivamente, 10, 20 e 40 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
    5. 6 sub-redes de tamanhos diversos, ondem caibam, respectivamente, 10, 20, 20, 40, 60 e 60 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
    6. 9 sub-redes de tamanhos diversos, ondem caibam, respectivamente, 1, 2, 10, 10, 10, 20, 20, 30 e 80 computadores cada (não incluindo o roteador). Para cada sub-rede, informe a máscara de sub-rede, endereço de sub-rede, endereço de difusão (broadcast) e quantos computadores (incluindo o roteador) cabem em cada uma dessas.
  2. Para cada exemplo acima, procure uma solução com endereços diferentes a partir de máscaras de sub-rede diferentes da solução original.
  3. Repita todo o processo, agora com a rede 192.168.1.0/24.

23/09 - 30/09: revisão de assunto

  • Ainda sobre a revisão de IP e máscara de sub-rede, e finalização da configuração da zona direta gerencia.com.br.

04/10: DNS

  • Configuração do DNS: zonas direta e reversa.

No VirtualBox, com a máquina desligada, atualizar o MAC das interfaces de rede (1 e 2). Ao ligar o Linux, virar root e depois apagar as interfaces antigas:

sudo su -
cat /dev/null > /etc/udev/rules.d/70-persistent-net.rules
reboot

Tem rede? Então pode instalar o servidor DNS:

cat /etc/apt/sources.list
aptitude update
aptitude install bind9

Editar a configuração principal:

cd /etc/bind
vi named.conf.options

Criar os domínios:

vi named.conf.local	
vi <zona direta>
vi <zona reversa>

Para aplicar os novos valores:

tail -f /var/log/syslog &
service bind9 restart

07/10: Primeira rede

<graphviz> digraph PrimeiraRede {

 rankdir=LR
 Internet [shape=circle]
 Servidor [shape=Mrecord|label="<0>Servidor|<1>eth0|<2>eth1"]
 Cliente [shape=Mrecord|label="<0>Cliente|<1>eth0"]
 Cliente:1 -> Servidor:2
 Servidor:1 -> Internet

} </graphviz>

Servidor (ger1-tecnico)

  • Configuração de rede, arquivo /etc/network/interfaces:

  1. Loopback

auto lo iface lo inet loopback

  1. Rede externa

auto eth0 iface eth0 inet static address 192.168.1.1XX netmask 255.255.255.0 gateway 192.168.1.1 dns-search nome.com.br dns-nameservers 127.0.0.1

  1. Rede interna

auto eth1 iface eth1 inet static address 172.31.1.1XX netmask 255.255.255.0 post-up /usr/local/sbin/eth1.up pre-down /usr/local/sbin/eth1.down </syntaxhighlight>

  • Configuração de rede, arquivo /etc/resolv.conf:

search nome.com.br nameserver 127.0.0.1 </syntaxhighlight>

  • Roteamento e NAT, arquivo /usr/local/sbin/eth1.up:
#!/bin/bash
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
  • Roteamento e NAT, arquivo /usr/local/sbin/eth1.down:
#!/bin/bash
sysctl -w net.ipv4.ip_forward=0
iptables -t nat -F
  • Configuração do NTP, alterar somente as linhas no arquivo /etc/ntp.conf:
server a.ntp.br
server b.ntp.br
server c.ntp.br
server d.ntp.br
  • Configuração do DNS, adicionar as seguintes linhas antes do último "};" no arquivo /etc/bind/named.conf.options:
listen-on { any; };
allow-query { any; };
allow-query-cache { any; };
allow-recursion {
    127.0.0.0/8;
    192.168.1.0/24;
    172.31.1.0/24;
};
  • Configuração do DNS, arquivo /etc/bind/named.conf.local:
zone "nome.com.br" {
    type master;
    file "/etc/bind/nome.com.br";
};
zone "1.168.192.in-addr.arpa" {
    type master;
    file "/etc/bind/1.168.192.in-addr.arpa";
};
  • Configuração do DNS, zona direta nome.com.br:
$TTL 86400
@ IN SOA dns1.nome.com.br. dns-admin.nome.com.br. (
		2013100701	; serial
				1d	; refresh
				1h	; retry
				1w	; expire
				1d	; negative cache ttl
)
@		IN	NS		dns1.nome.com.br.

dns1	IN	A		192.168.1.101
www		IN	CNAME	dns1.nome.com.br.
blog	IN	CNAME	dns1.nome.com.br.
wiki	IN	CNAME	dns1.nome.com.br.
ntp		IN	CNAME	dns1.nome.com.br.
  • Configuração do DNS, zona reversa 1.168.192.in-addr.arpa:
$TTL 86400
@ IN SOA dns1.nome.com.br. dns-admin.nome.com.br. (
		2013100700	; serial
				1d	; refresh
				1h	; retry
				1w	; expire
				1d	; negative cache ttl
)
@		IN	NS		dns1.nome.com.br.

101		IN	PTR		dns1.nome.com.br.
  • Aplicação dos valores:
chmod 0755 /usr/local/sbin/eth1*
ifdown eth0
ifdown eth1
ifup eth1
ifup eth0
service ntp restart
service bind9 restart

Cliente (ger2-tecnico)

  • Configuração de rede, arquivo /etc/network/interfaces:

  1. Loopback

auto lo iface lo inet loopback

  1. Rede interna

auto eth0 iface eth0 inet static address 172.31.1.2XX netmask 255.255.255.0 gateway 172.31.1.1XX dns-search nome.com.br dns-nameservers 172.31.1.1XX </syntaxhighlight>

  • Configuração de rede, arquivo /etc/resolv.conf:

search nome.com.br nameserver 172.31.1.1XX </syntaxhighlight>

  • Configuração do NTP, alterar somente as linhas no arquivo /etc/ntp.conf:
server ntp.nome.com.br
  • Aplicação dos valores:
ifdown eth0
ifup eth0
service ntp restart

11/10: HTTP, o cliente

telnet towel.blinkenlights.nl
  • O cliente HTTP usando telnet e netcat. O arquivo de requisição req:
GET /portal/ HTTP/1.1
Host: www.terra.com.br

e a requisição em si:

nc www.terra.com.br 80 < req

14/10: HTTP, o servidor

  • Instalado o Apache na sua 2ª versão:
aptitude install apache2

e o PHP na sua 5ª - e ativado em seguida:

aptitude install php5
a2enmod php5
service apache2 restart

Um código simples para testar a sua funcionalidade:

vi /var/www/info.php

com o conteúdo

<html>
	<header>
		<title>Página Inicial</title>
	</header>
	<body>
		<center>
			<h1>Olá!</h1>
			<?php 
				$ipaddress = getenv('REMOTE_ADDR');
        			echo "Seu IP é: $ipaddress.";
			?>
		</center>
	</body>
</html>

31/10: HTTP e o serviço blog

04/11: HTTPS com WebDAV e autenticação básica

  • Cliente:
aptitude update
aptitude install xorg blackbox firefox cadaver
startx
firefox
  • Servidor:
cd /etc/bind
vi named.conf.options
vi named.conf.local
vi dominio.com.br
service bind9 restart
cd /etc/apache2/sites-available
cp default blog
vi blog
a2dissite default
a2ensite blog
service apache2 restart
cp default-ssl arquivos
vi arquivos
mkdir -p /var/www/arquivos
openssl req -new -x509 -nodes -days 1825 -out /etc/ssl/certs/arquivos.pem -keyout /etc/ssl/certs/arquivos.pem
a2dissite default-ssl
a2ensite arquivos
a2enmod ssl
service apache2 restart
a2enmod dav_fs
vi arquivos
htpasswd -c -s /etc/apache2/senhas joao
service apache2 restart

11/11: filtro de pacotes e controle de tráfego

14/11: avaliação CPA 2013 e segunda prova

13/12: recuperação

Instalação do Joomla, de forma análoga ao que fizemos em aula com o WordPress.

Conceitos

Referências