Вы находитесь на странице: 1из 86

o Paulista FIAP- Faculdade de Inform atica e Administrac a Curso: Tecnologia em Redes de Computadores Disciplina: Sistema Operacional Linux Prof.

: Alexander Luz Sperandio (profalexander@fiap.com.br)

Notas de aula
Servidores Linux (Todas as Notas de Aula)

Sum ario

Prof. Alexander Luz Sperandio

I
1

o de rede no linux Congurac a


Rede no Linux o de interfaces . . . . 1.1 Congurac a 1.2 Tabela de roteamento . . . . . . . o da rede 1.3 Arquivos de congurac a o de DNS . . . . . . . 1.4 Congurac a . . . . . . . . . . . . . . . . . . . . . . . .

Exerc cios

d so e A
-U
. . . . . . . . . . . . . . . 1

Utilit arios 2.1 ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 netstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

u rn la o
te
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

o A t

as

o do sistema Inicializac a 4.1 O processo init . . . . . . o 4.2 Os scripts de inicializac a 4.3 init do System V . . . . . 4.4 Manipulando servic os . . . o de runlevels 4.5 Administrac a

In

II

Servic os: init e runleves

III
5

DHCP

DHCP o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 Introduc a 5.2 Como funciona . . . . . . . . . . . . . . . . . . . . . . . . . . .

FI

-2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

01
6
6 6 8 8 9 10 10 11 11 11

14
14 14 14 15 16 16

17
17 17 17

Prof. Alexander Luz Sperandio

IV
8

DNS

u rn la o
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Laborat orio 2 - vde2, qemu e DHCP o do qemu e vde2 . . . . . . . . . 7.1 Passo 1 - Instalac a o do switch . . . . . . . . . . . . . . 7.2 Passo 2 - Criac a 7.3 Passo 3 - M aquinas qemu . . . . . . . . . . . . . . . o do servidor DHCP e clientes . 7.4 Passo 4 - Congurac a 7.4.1 Vericando o servidor . . . . . . . . . . . . 7.5 Passo 5 - IP xo para um servidor da rede . . . . . .

O software BIND 9.1 Componentes do BIND . o do BIND . 9.2 Congurac a 9.2.1 Servidor cache . o 9.3 Arquivos de congurac a

d so e A
. . . . . . . . . . . . . . . .

DNS - Domain Name System o . . . . . . . . . . . . . . 8.1 Introduc a 8.2 O espac o de nomes do DNS . . . . 8.2.1 TLDs - Top Level Domains 8.2.2 Registro de dom nio . . . .

te
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . .

as

o A t

11 Exerc cios

10 Arquivos de zona 10.1 Registros de Recursos - RRs . . 10.1.1 Campo nome . . . . . . 10.1.2 Campo ttl (time to live) . 10.1.3 Campo classe . . . . . 10.1.4 Campo tipo . . . . . . 10.2 Comandos em arquivos de zonas

In

. . . . . .

-U

FI

-2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

01
21 21 21 22 22 22 22

Laborat orio 1 - Servidor DHCP o do servidor DHCP . . . . . . . . . . . 6.1 Passo1 - Instalac a o do servidor DHCP . . . . . . . . . 6.2 Passo2 - Congurac a o . . . . . . . . . . . . . . . 6.2.1 Dados da congurac a 6.2.2 Arquivo dhcpd.conf . . . . . . . . . . . . . . . . 6.2.3 Arquivo /etc/default/dhcp3-server . . . . . o do cliente DHCP . . . . . . . . . . 6.3 Passo3 - Congurac a o de rede . . . . . . . . . . . . . . . . 6.3.1 Congurac a o do funcionamento do servidor DHCP 6.4 Passo4 - Vericac a

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

18 18 19 19 19 20 20 20 21

23
23 23 24 24 25 25 26 26 26 27 28 28 29 29 29 30 31 31

o de nomes DNS 12 lab1: Resoluc a 12.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12.2 Introduc a 12.3 Atividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 lab2: Servidor Prim ario e Secund ario 13.1 Objetivos . . . . . . . . . . . . . o de um dom 13.2 Criac a nio . . . . . . 13.3 A zona reversa . . . . . . . . . . 13.4 Transfer encia de zona . . . . . . .

32 32 32 33 35 35 35 39 41

Prof. Alexander Luz Sperandio

Servidor web - apache

16 Exerc cios

d so e A
. . . . . . . . . . . . . . .

o do Apache 15 Congurac a o . . . . . . . . . . . 15.1 Arquivo de congurac a o 15.1.1 Arquivos e Diretivas de congurac a o . . . . . . . . . . . . 15.1.2 Blocos de sec a 15.2 Virtual Hosts . . . . . . . . . . . . . . . . .

u rn la o
. . . . . . . . . . . . . . . . . . . .

o do Apache 14 Apresentac a o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.1 Introduc a o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14.2 Instalac a 14.3 Iniciando o servidor . . . . . . . . . . . . . . . . . . . . . . . . .

as

17 lab1: apache 17.1 Objetivos . . . . . . . . . 17.2 Requisitos . . . . . . . . . 17.3 Iniciando o servidor . . . . 17.4 Entendendo os m odulos . . 17.5 Entendendo as permiss oes 18 lab2: apache 18.1 Objetivos . . o . 18.2 Autorizac a o 18.3 Autenticac a 18.4 Virtual Hosts

te
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . .

In

o A t

20 Refer encias

19 lab: DNS e apache

-U

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

FI

-2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

01
43
43 43 43 44 44 44 44 45 48 48 50 50 50 50 50 51 51 51 51 52 53 54 55

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

VI

rewall - iptables

55
55 55 56 57 57 57 57 57 58

Prof. Alexander Luz Sperandio

23 lab1: iptables 23.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.2 Atividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3 Salvando as regras da mem oria . . . . . . . . . . . . . . . . . . . o do script do rewall 24 Ativac a o do script - Debian . . . . . . . . . . . . . . . . . . . . . 24.1 Ativac a o do script - outras distribuic es . . . . . . . . . . . . . . 24.2 Ativac a o

u rn la o
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

VII

ssh

d so e A
-U
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

26 tcp wrappers

In

25 SSH - Secure Shell o . . . . . . . . 25.1 Introduc a o 25.2 M etodos de autenticac a o do cliente . 25.3 Congurac a o do servidor 25.4 Congurac a

te
. . . . . . . . . . . . . . . . . . . . . . . .

as

VIII

postx

o A t

FI

28 lab: Servidor de email postx 28.1 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28.2 Atividade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27 email o . . 27.1 Introduc a 27.2 Postx . . . . 27.3 Servidor POP 27.4 webmail . . .

. . . .

-2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

22 Conceitos b asicos 22.1 regras, chains e tabelas . . . . . 22.1.1 Regras . . . . . . . . . 22.1.2 Chains - listas de regras 22.1.3 Tabelas . . . . . . . . . 22.1.4 Tabelas cont em chains .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

01
. . . . . . . . . . . . . . . 59 59 60 61 61 62 62

62
63 63 63 64 64 64

64
65 65 65 66 67 67 67 67

21 O Firewall o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.1 Introduc a 21.2 iptables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

o do DNS . . . . . . . . . . . . . . . . . . . . . . . . 28.3 Congurac a o do sistema . . . . . . . . . . . . . . . . . . . . . . 28.4 Congurac a o do postx . . . . . . . . . . . . . . . . . . . . . . . 28.5 Congurac a

67 68 68

IX

squid

69
69 69 69 69

29 Conhecendo o squid o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29.1 Introduc a 29.2 Daemons e Utilit arios . . . . . . . . . . . . . . . . . . . . . . . . o . . . . . . . . . . . . . . . . . . . . . . 29.3 Arquivo de congurac a

Prof. Alexander Luz Sperandio

30 ACLs - Access Control Lists o . . . . . . . . 30.1 Introduc a o . . 30.2 tags de congurac a o . . . . . . 30.3 Autenticac a o de usu 30.4 Criac a arios . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

31 Relat orios com sarg o e o comando sarg . . . . . . . . . . . . . . . . . . . 31.1 Congurac a 32 lab: squid 32.1 Limpeza do arquivo squid.conf . . . . . . . . . . . . . . . . . . . 32.2 Clientes com acesso ao proxy . . . . . . . . . . . . . . . . . . . . 32.3 Bloqueio de sites . . . . . . . . . . . . . . . . . . . . . . . . . .

u rn la o
te
. . . . . . . . . . . . . . . . . . . . . . . . 5

NFS

d so e A
-U

as

33 NFS - Network File System o . . . . . . . . . . . . . . . . . . 33.1 Introduc a 33.2 O servidor NFS . . . . . . . . . . . . . . . 33.3 Montagem do sistema de arquivos via NFS 33.4 tcp wrappers . . . . . . . . . . . . . . . .

In

XI

samba

o A t

FI

34 Conhecendo o Samba o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.1 Introduc a 34.2 Daemons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.3 Programas utilit arios . . . . . . . . . . . . . . . . . . . . . . . .

-2
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

01
70 70 70 71 71 71 71 72 72 72 73

73
73 73 74 74 75

75
75 75 76 76

35 Congurando o Samba 35.1 O arquivo smb.conf . . . . . . . . . . . . . . . . . . . . . . . . . o de um PDC . . . . . . . . . . . . . . . . . . . . . . 35.2 Congurac a o 36 Documentac a 37 lab: samba 37.1 Objetivos . . . . . . . . . . . . . 37.2 Utilit arios . . . . . . . . . . . . . 37.2.1 smbclient . . . . . . . . . 37.2.2 smbmount . . . . . . . . . 37.2.3 nmblokup . . . . . . . . . o do arquivo smb.conf 37.3 Congurac a 37.4 Controlador de Dom nio . . . . .

76 76 77

Prof. Alexander Luz Sperandio

Ap endice
A Comandos do vim

u rn la o
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1
1.1

Rede no Linux

FI

o A t

Unix: dispositivos de rede em /dev Linux: Dispositivos de rede s ao criados dinamicamente Para ver quais dispositivos existem no sistema: cat /proc/net/dev 1 Nomenclatura:

possui arquivos para o ajuste de par ametros do kernel. D e uma olhada em /proc/sys/net/ipv4 e em /usr/src/linux/Documentation/proc.txt.

1 /proc

-U

as

o de interfaces Congurac a

Interfaces de rede

In

o de rede no linux Congurac a

te

Parte I

d so e A

B qemu e vde2 o dos pacotes necess B.1 Instalac a arios o do switch virtual . . . . . B.2 Criac a B.3 Conex ao com a internet via DHCP B.4 M aquinas virtuais com o qemu . .

-2
. . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

. . . . . . .

79 79 80 80 80 81 81 82

01
85
85 85 86 86 86 86

79

lo - loopback eth0..n - Placa de rede Ethernet e WaveLan. ppp0..n - Interface de rede PPP (protocolo ponto a ponto). tr0..n - Token Ring ... Congurando interfaces ifcong - interface congure

Prof. Alexander Luz Sperandio

es] [interface] ifcong [opc o es] ifcong interface [opc o Par ametro -a []arp []allmulti netmask addr hw ether

levantando interfaces:2

ifconfig lo 127.0.0.1 up

ifconfig eth1 192.168.1.1

ifconfig eth0 172.16.0.3 hw ether 00:1a:92:64:ce:02 derrubando interfaces: ifconfig eth0 down

o A t

Diferentes enderec os IP para a mesma interface ifconfig eth0:0 192.168.4.1 netmask 255.255.255.0 ifconfig eth0:1 192.168.5.1 netmask 255.255.255.0

2 Note

padr ao.

FI

o de exemplo de eth1 ser que up pode ser omitido. Na congurac a a usada a m ascara-

-U

as

es; man ifcong para mais informac o

Interface Aliasing

In

te

ifconfig eth2 192.168.3.9 netmask 255.255.255.0

d so e A

u rn la o

o Descric a mostra todas as interfaces, incluindo as n ao conguradas; Habilita ou desabilita o uso do protocolo ARP para esta interface. Habilita ou desabilita o modo promiscuous da interface. Congura a m ascara de rede IP para esta interface. Congura o enderec o de hardware para esta interface.

-2

01

fddi0..n - Interfaces de rede FDDI.

1.2

Tabela de roteamento
Tabela de roteamento cat /proc/net/route netstat -rn /sbin/route -n

Kernel IP r o u t i n g t a b l e D e s t i n a t i o n Gateway 192.168.2.0 0.0.0.0 192.168.0.0 0.0.0.0 0.0.0.0 192.168.0.1

Genmask 255.255.255.0 255.255.255.0 0.0.0.0

Flags U U UG

Metric 0 0 0

Ref Use I f a c e 0 0 eth1 0 0 eth0 0 0 eth0

Prof. Alexander Luz Sperandio

o de rotas Manipulac a route add -net 192.168.3.0 netmask 255.255.255.0 route add -net 192.168.10.64 netmask 255.255.255.192 gw 10.1.7.5

net - indica o enderec o de rede

gw - indica o enderec o do gateway na mesma rede da origem. rotas para redes diretamente conectadas automaticamente adicionadas pelo ifcong rota padr ao (default gateway) route add default gw 192.168.3.254 man route

OpenSuSE, Fedora, ...

FI

o A t

No CentOS o diret orio o /etc/sysconfig/network-scripts. e 4 Aceita argumentos como start, stop, restart, ...; execute o script sem argumentos para saber quais s ao aceitos.

3 Podem haver pequenas variac es entre as distribuic es baseadas em rpm. o o

-U

as

diret orio: /etc/sysconfig/network/ 3 arquivos: ifcfg-lo, ifcfg-eth0..n

o: script de inicializac a /etc/init.d/network 4

In

1.3

o da rede Arquivos de congurac a

d so e A
8

te

u rn la o

add - adiciona a rota (del - remove a rota)

-2

01

Debian, Knoppix, Ubuntu, ... diret orio: /etc/network/ arquivo: interfaces

Prof. Alexander Luz Sperandio

o: script de inicializac a /etc/init.d/networking


# arquivo / e t c / network / i n t e r f a c e s auto lo i f a c e lo i n e t loopback

1.4

o de DNS Congurac a

/etc/resolv.conf

o A t

lista dom nios a serem pesquisados para resolver nomes incompletos (search) enderec os IP dos servidores DNS a serem contatados para pesquisas de nomes (nameserver)

FI

# arquivo / etc / r e s o l v . conf s e a r c h m a t h s . wu . edu . au wu . edu . au n a m e s e r v e r 8 . 8 . 8 . 8 # E s s e s s a o o s DNS p u b l i c o s do Google nameserver 8 . 8 . 4 . 4

-U

as

DNS - Domain Name System converte os nomes de m aquinas para enderec os IPs que todas as m aquinas da Internet possuem

In

te

o de cliente DHCP, e necess o dos pacotes N OTA : Para a congurac a aria a instalac a pump ou dhcp-client.

d so e A

auto eth0 # i f a c e e t h 0 i n e t dhcp # P a r a u s a r DHCP i f a c e eth0 i n e t s t a t i c # Para configuracao e s t a t i c a address 192.168.3.9 netmask 2 5 5 . 2 5 5 . 2 5 5 . 0 gateway 1 9 2 . 1 6 8 . 3 . 2 5 4 # p a c o t e r e s o l v c o n f deve e s t a r i n s t a l a d o p a r a uso das l i n h a s a b a i x o . # dns s e a r c h m a t h s . wu . edu . au wu . edu . au # a b a i x o , s a o o s DNS p u b l i c o s do OpenDNS (www. o p e n d n s . com ) # dns n a m e s e r v e r s 2 0 8 . 6 7 . 2 2 2 . 2 2 2 2 0 8 . 6 7 . 2 2 0 . 2 2 0

u rn la o

-2

01

# a r q u i v o / e t c / s y s c o n f i g / n e t w o r k / i f c f g e t h 0 DEVICE= e t h 0 # BOOTPROTO= dhcp # P a r a u s a r DHCP BOOTPROTO= s t a t i c # Para configuracao e s t a t i c a IPADDR = 1 9 2 . 1 6 8 . 3 . 9 NETMASK= 2 5 5 . 2 5 5 . 2 5 5 . 0 NETWORK= 1 9 2 . 1 6 8 . 3 . 0 BROADCAST= 1 9 2 . 1 6 8 . 3 . 2 5 5 GATEWAY= 1 9 2 . 1 6 8 . 3 . 2 5 4 ONBOOT= y e s

Outros arquivos /etc/hosts o entre nomes e enderec faz a associac a os IP


# arquivo / etc / hosts 127.0.0.1 localhost 192.168.1.10 f o o . mydomain . o r g

foo

Prof. Alexander Luz Sperandio

multi on retorna todos os enderec os v alidos para um host no arquivo /etc/hosts; se off retorna apenas o primeiro

2
2.1

Utilit arios
ping

FI

o A t

5 http://www.sounerd.com.br/index.php?option=com_content&task=view&id= 40&Itemid=43

$ p i n g u o l . com . b r PING u o l . com . b r ( 2 0 0 . 2 2 1 . 2 . 4 5 ) 5 6 ( 8 4 ) b y t e s o f d a t a . 64 b y t e s from home . u o l . com . b r ( 2 0 0 . 2 2 1 . 2 . 4 5 ) : i c m p s e q =1 t t l =59 t i m e = 2 7 . 9 ms 64 b y t e s from home . u o l . com . b r ( 2 0 0 . 2 2 1 . 2 . 4 5 ) : i c m p s e q =2 t t l =59 t i m e = 2 0 . 5 ms ... <C t r l > < C > u o l . com . b r p i n g s t a t i s t i c s 3 p a c k e t s t r a n s m i t t e d , 3 r e c e i v e d , 0% p a c k e t l o s s , t i m e 2009ms r t t min / avg / max / mdev = 1 5 . 3 0 9 / 7 8 . 6 6 2 / 1 9 7 . 0 5 7 / 8 3 . 7 8 6 ms $

-U

as

o de rede teste para vericar a congurac a

envia pacotes ICMP ECHO REQUEST para hosts na rede5

d so e A
10

order hosts,bind checar o arquivo /etc/hosts (par ametro hosts) antes de tentar vericar um servidor de nomes (par ametro bind) e retornar um IP v alido

In

te

u rn la o

# arquivo / etc / host . conf order hosts , bind m u l t i on

-2

/etc/host.conf es para a biblioteca resolver congurac o o de nomes deve procurar primeiro ao Dene aonde a biblioteca de resoluc a procurar primeiro no arquivo /etc/hosts e resolver um nome. O default e depois no DNS (bind).

01

- mostra a rota que os pacotes tomam para chegar a um host - usa pacotes UDP ou ICMP
t r a c e r o u t e t o www. g o o g l e . com ( 2 0 9 . 8 5 . 1 9 3 . 1 4 7 ) , 30 h o p s max , 40 b y t e p a c k e t s 1 10.11.0.1 (10.11.0.1) 2 9 . 3 0 4 ms 2 9 . 4 1 2 ms 2 9 . 5 0 2 ms 2 3 c9060003 . v i r t u a . com . b r ( 2 0 1 . 6 . 0 . 3 ) 4 0 . 5 6 3 ms 4 0 . 7 3 3 ms 4 0 . 8 8 6 ms 4 2 9 . p t t . a n s p . b r ( 2 0 0 . 1 3 6 . 3 4 . 2 9 ) 4 5 . 0 5 9 ms 4 7 . 0 6 2 ms 4 7 . 1 5 0 ms 5 2 0 9 . 8 5 . 2 5 0 . 2 4 2 ( 2 0 9 . 8 5 . 2 5 0 . 2 4 2 ) 4 7 . 2 4 1 ms 4 7 . 4 2 2 ms 4 9 . 3 6 7 ms 6 2 0 9 . 8 5 . 2 5 1 . 2 1 4 ( 2 0 9 . 8 5 . 2 5 1 . 2 1 4 ) 5 8 . 4 8 0 ms 2 9 . 2 0 1 ms 2 9 . 1 7 1 ms 7 br i n f 1 4 7 . g o o g l e . com ( 2 0 9 . 8 5 . 1 9 3 . 1 4 7 ) 2 0 . 0 2 9 ms 1 9 . 5 6 4 ms 1 9 . 5 0 2 ms

2.3

netstat

Prof. Alexander Luz Sperandio

es] netstat [opc o Par ametro -n -a -c -t -u -p

Au
In
11

Exemplo:

ta

FI A

No

Conex oes Internet Ativas (servidores e estabelecidas) Proto Recv-Q Send-Q Enderec o Local Enderec o Remoto tcp 0 0 0.0.0.0:80 0.0.0.0:* tcp 0 0 0.0.0.0:22 0.0.0.0:* tcp 0 0 0.0.0.0:631 0.0.0.0:* tcp 0 0 127.0.0.1:25 0.0.0.0:* tcp 0 0 192.168.0.2:32835 66.249.83.109:465 tcp 0 0 192.168.0.2:32804 66.249.83.109:995

Exerc cios
Estado OUC A OUC A OUC A OUC A ESTABELECIDA ESTABELECIDA

Us o

$ n e t s t a t nap Conexoes I n t e r n e t A t i v a s ( s e r v i d o r e s e e s t a b e l e c i d a s ) P r o t o RecvQ Send Q E n d e r e c o L o c a l E n d e r e c o Remoto tcp 0 0 0.0.0.0:80 0.0.0.0: tcp 0 0 0.0.0.0:22 0.0.0.0: tcp 0 0 0.0.0.0:631 0.0.0.0: tcp 0 0 127.0.0.1:25 0.0.0.0: tcp 0 0 192.168.0.2:32835 66.249.83.109:465 tcp 0 0 192.168.0.2:32804 66.249.83.109:995 tcp 0 0 127.0.0.1:80 127.0.0.1:33136 tcp 0 0 127.0.0.1:80 127.0.0.1:33138 udp 0 0 0.0.0.0:68 0.0.0.0: udp 0 0 0.0.0.0:631 0.0.0.0: Domain s o c k e t s UNIX a t i v o s ( s e r v i d o r e s e e s t a b e l e c i d a s ) ...

de

te
Estado OUCA OUCA OUCA OUCA ESTABELECIDA ESTABELECIDA ESTABELECIDA TIME WAIT

rn

o Descric a Mostra enderec os num ericos, sem tentar resolver os nomes da m aquina, porta ou usu ario; mostra os servic os em listening (estado ouc a); mostra a tabela selecionada a cada segundo, continuamente na tela at e que voc e o interrompa; somente servic os tcp; somente servic os udp; mostra o PID dos processos por tr as dos servic os.

la

- mostra conex oes de rede, tabelas de roteamento, estat sticas de interfaces, ...

20 11

2.2

traceroute

1. Considerando o texto acima responda: (a) Identique o comando que gerou esse texto.

Prof. Alexander Luz Sperandio

(c) Identique as conex oes estabelecidas. (d) Explique o estado TIME WAIT.

(e) Utilize o comando host para identicar o FQDN (Fully Qualied Domain Name) de cada enderec o remoto mostrado no texto.

(a) Congure o IP das m aquinas X, A, B, C e D usando o ifcong o para a m (c) Escreva o(s) arquivo(s) de congurac a aquina X (a interface com a internet usa DHCP) Escreva os arquivos para o SuSE Linux Escreva o arquivo para Debian

(d) Crie as tabelas de rotas para as m aquinas A e B; (e) Crie as tabelas de rotas para as m aquinas C e D.

Refer encias

N F

o IA t

o [2] Nemeth, E, Snyder, G, Seebass, S, Hein, T.R., Manual de Administrac a o. Bookman, 2002. cap.2, p.54-78. do Sistema UNIX. 3a. edic a

P. LINUX: Rute Users Tutorial and Exposition (Version 1.0.0). Dispon vel em: http: //packages.debian.org/stable/doc/rutebook. Acesso em: 21 jul. 2006.cap.25.

[3] Sheer, P. LINUX: Rute Users Tutorial and Exposition (Version 1.0.0). Dispon vel em: http://packages.debian.org/stable/doc/rutebook. Acesso em: 21 jul. 2006.cap.25.
6 Sheer,

-U

as

[1] Nemeth, E, Snyder, G, Hein, T.R., Manual Completo do Linux - Guia do o. Pearson. S Administrador. 2a. edic a ao Paulo. 2007. cap. 12-14, p.191-259;

so

In

de

12

no

o para a m (b) Escreva o arquivo de congurac a aquina A (SuSE Linux)

Au te r l

2. Considere duas LANs distantes que precisam se comunicar. Use os comandos ifcong e route para congurar a rede indicada na gura 16 .

-2

(b) Identique o servic o para cada porta no estado OUC A (sugest ao: procure em /etc/services).

01

tcp 0 0 tcp 0 0 tcp 0 0 udp 0 0 udp 0 0 Domain sockets UNIX ...

192.168.0.2:49194 204.152.191.37:21 127.0.0.1:80 127.0.0.1:33136 127.0.0.1:80 127.0.0.1:33138 0.0.0.0:68 0.0.0.0:* 0.0.0.0:631 0.0.0.0:* ativos (servidores e estabelecidas)

ESTABELECIDA ESTABELECIDA TIME_WAIT

N F
Prof. Alexander Luz Sperandio

o IA t
so In no

-U

as de Au te r l a -2 01

Figura 1: Duas redes remotamente conectadas.

13

[4] Silva, G.M. Guia Foca GNU/Linux. Dispon vel em: http://focalinux. cipsga.org.br/guia/avancado/ch-cfgrede.htm. Acesso em: 05 ago. 2006.

Parte II

4
4.1

o do sistema Inicializac a
O processo init
Processo n umero 1 do sistema

Prof. Alexander Luz Sperandio

o do sistema executa os scripts de inicializac a Sistemas BSD (Berkeley Software Distribution) init tem somente dois estados: monousu ario multiusu ario

o de monousu um n vel de execuc a ario o de multiusu v arios n veis de execuc a ario determinam quais dos recursos do sistema est ao habilitados

o A t

scripts shell interpretados por sh

Sistemas BSD

FI

scripts cam em /etc/

nomes comec am com rc (run command)

Sistemas System V scripts cam em /etc/init.d/ 14

-U

as

4.2

o Os scripts de inicializac a

In

te

Outros sistemas como o SysV (System V) init tem:

d so e A

u rn la o

$ p s aux | g r e p B1 i n i t USER PID %CPU % MEM root 1 0.0 0.0 $

VSZ 1508

RSS TTY 520 ?

STAT START S 09:21

-2
TIME COMMAND 0:00 i n i t [2]

01

Servic os: init e runleves

h a links simb olicos para eles em /etc/rc0.d/, /etc/rc1.d/ e assim por diante Tarefas dos scripts congurar o nome do computador congurar o fuso hor ario vericar os discos com fsck montar os discos do sistema

Prof. Alexander Luz Sperandio

remover arquivos de /tmp/ congurar interfaces de rede iniciar daemons e servic os de rede

es dos servic Esses scripts n ao devem ser alterados. Para isso as congurac o os o que os scripts consultam. cam em arquivos de congurac a Exemplo:

o A t

4.3

init do System V

FI

o (runlevels); sete n veis de execuc a cada um corresponde a um diret orio /etc/rc?.d/ com um conjunto particular de servic os; N vel 0 - desliga o sistema; N vel 1 - modo monousu ario;

-U

as

d so e A
15

# ! / bin / sh # s c r i p t p a r a i n i c i a r o c l i e n t e de s e r v i c o de DNS # d i n a m i c o p a r a no i p . com # c a s e $1 i n start ) echo S t a r t i n g noip . / usr / l o c a l / bin / noip ;; stop ) e c h o n S h u t t i n g down n o i p . k i l l p r o c TERM / u s r / l o c a l / b i n / n o i p ;; ) e c h o Usage : $0 { s t a r t | s t o p } exit 1 esac exit 0

In

te

u rn la o

-2

01

N veis 2 a 5 - n veis multiusu ario; N vel 6 - reinicializa o sistema. denido em /etc/inittab7 ; O runlevel padr ao e
$ grep id / etc / i n i t t a b id : 2 : i n i t d e f a u l t : $

runlevel - mostra o runlevel anterior e o atual; telinit N - troca para runlevel N.

Prof. Alexander Luz Sperandio

4.4

Manipulando servic os
scripts aceitam argumentos como: start - inicializa servic o stop - derruba servic o

restart - mesmo que stop/start; reinicia servic o o reload - recarrega arquivo de congurac a ...

4.5

o de runlevels Administrac a

links simb olicos (criados com ln -s)

scripts s ao executados em ordem num erica

o A t

os que iniciam com S recebem o argumento start os que iniciam com K recebem o argumento stop

7O

FI

o criam os links para iniciar ou derrubar os servic ferramentas de adminstrac a os em cada runlevel.
ubuntu utiliza o upstart[?] ao inv es do arquivo /etc/inittab.

-U

as

links iniciam com S ou K seguido de n umero e nome do servic o ex.: S91apache, K08vmware

In

16

te

Exemplos de comandos: /etc/init.d/script - mostra os argumentos poss veis; /etc/init.d/script start - inicia o servic o; /etc/init.d/script stop - derruba o servic o.

d so e A

u rn la o

-2

01

N OTA : para que um servic o n ao seja iniciado em determinado runlevel basta remover o link ou apenas renome a-lo usando a letra inicial min uscula.

5
5.1

DHCP
o Introduc a
Dynamic Host Conguration Protocol.

Prof. Alexander Luz Sperandio

permite que um host alugue par ametros de rede e administrativos de um servidor;

o Introduc a o: Alguns par ametros de locac a

gateways (rotas-padr ao);

servidores de nomes (DNS); hosts syslog;

o;) servidores TFTP (para carregar uma imagem de inicializac a

o A t

Como funciona o DHCP BOOTP

FI

8 http://www.faqs.org/rfcs/

enderec o IP, m ascara, gateway es de inicializac o do TFTP informac o a es de trabalho UNIX criado originalmente para permitir que estac o sem disco inicializassem.

-U

as

... (veja RFC 2132)8

5.2

Como funciona

In

servidores WINS, servidores de fontes X, servidores proxy, servidores NTP;

d so e A
17

enderec os IP e m ascaras de rede;

te

u rn la o

o per odo de locac a o periodicamente; clientes devem renovar sua locac a

-2

01

DHCP

Parte III

DHCP generaliza os par ametros que podem ser fornecidos o (lease) adiciona o conceito de locac a Como funciona o DHCP cliente envia a mensagem DHCPDISCOVER IP destino 255.255.255.255, IP origem 0.0.0.0 servidores respondem com mensagem DHCPOFFER com sugest ao de enderec o e outros par ametros 9

Prof. Alexander Luz Sperandio

cliente recebe DHCPOFFER e aceita enviando mensagem DHCPREQUEST servidor responde com ACK e aloca enderec o ou responde com NACK (negative acknowledgment) e o cliente deve reiniciar o processo de descobrimento o com ARP. Se o enderec antes de usar enderec o, cliente verica sua utilizac a o es j a est a em uso, cliente envia DHCPDECLINE e reinicia negociac o o e DHCPRELEASE cliente envia DHCPREQUEST para renovar a locac a o para desistir da locac a DHCP logs
#client dhclient dhclient dhclient dhclient dhclient : : : : :

FI

o A t

6.1

o do servidor DHCP Passo1 - Instalac a

aptitude update aptitude install dhcp3-server


9 servidores

miss ao)

o em uso para instalar o servidor DHCP do Utilize as ferramentas da distribuic a ISC - pacote dhcp3-server.

-U

as

# server dhcpd : DHCPDISCOVER from 0 0 : 0 6 : 1 b : dc : 9 a : 0 9 v i a e t h 1 dhcpd : DHCPOFFER on 1 9 2 . 1 6 8 . 2 . 1 t o 0 0 : 0 6 : 1 b : dc : 9 a : 0 9 v i a e t h 1 dhcpd : DHCPREQUEST f o r 1 9 2 . 1 6 8 . 2 . 1 from 0 0 : 0 6 : 1 b : dc : 9 a : 0 9 v i a e t h 1 dhcpd : DHCPACK on 1 9 2 . 1 6 8 . 2 . 1 t o 0 0 : 0 6 : 1 b : dc : 9 a : 0 9 v i a e t h 1

Laborat orio 1 - Servidor DHCP

d so e A
18

em uma subrede diferente recebem por meio de um relayagent (agente de retrans-

In

te

I n t e r n e t S o f t w a r e C o n s o r t i u m DHCP C l i e n t 2 . 0 p l 5 L i s t e n i n g on LPF / e t h 0 / 0 0 : e0 : 7 d : a2 : c4 : 3 3 S e n d i n g on LPF / e t h 0 / 0 0 : e0 : 7 d : a2 : c4 : 3 3 DHCPREQUEST on e t h 0 t o 2 5 5 . 2 5 5 . 2 5 5 . 2 5 5 p o r t DHCPACK from 1 9 2 . 1 6 8 . 0 . 1

u rn la o

-2

01

6.2
6.2.1

o do servidor DHCP Passo2 - Congurac a


o Dados da congurac a

1. Qual a rede a ser congurada (subnet)? 2. Qual a interface nessa rede? 3. Qual o intervalo de IPs a ser distribu do (range)? 4. Qual o gateway a ser distribu do (Option routers)?

5. Quais os IPs dos servidores DNS ((Option domain-name-servers))? 6.2.2 Arquivo dhcpd.conf

Prof. Alexander Luz Sperandio

conveniente comec Para congurar o servidor DHCP e armos em um arquivo vazio:

o do servidor DHCP. Um reUtilize seu editor preferido e inicie a congurac a fornecido ao nal do roteiro. sumo dos comandos do vi (pacote vim) e

option domain-name-servers 145.253.2.75, 193.174.32.18;

authoritative;

FI

o A t

ddns-update-style none; - o sevidor DHCP pode atualizar o servidor DNS se o enderec o IP de um servidor na LAN foi mudado. o de servidores com IP No entanto, por n ao ser recomendada a utilizac a din amico, esse par ametro deve ser none;

option domain-name-servers - diz ao servidor DHCP quais servidores DNS atribuir aos clientes. Mais de um servidor DNS pode ser indicado, separados por v rgulas. 19

-U

as

subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.200 192.168.0.229; option subnet-mask 255.255.255.0; option routers 192.168.0.1; }

In

te

default-lease-time 86400; max-lease-time 604800;

d so e A

ddns-update-style none;

u rn la o

cp /etc/dhcp3/dhcpd.conf /etc/dhcp3/dhcpd.conf.orig cat /dev/null > /etc/dhcp3/dhcpd.conf

-2

01

n authoritative - A vers ao 3 do servidor DHCP e ao-autorit aria por padr ao. Isso signica que se um cliente requisita um enderec o que o servidor n ao sabe nada a respeito e o enderec o est a incorreto para aquele segmento de enviar rede, o servidor NAO a um DHCPNAK (que diz ao cliente que o mesmo deveria parar de usar o enderec o).

Prof. Alexander Luz Sperandio

subnet - a subrede a ser utilizada;

option subnet-mask - a m ascara de rede a ser utilizada;

INTERFACES="eth0 eth1"

6.3

ta

6.3.1

o de rede Congurac a

o de rede do Debian e o /etc/network/interfaces. O arquivo de congurac a o para a utilizac o de congurac o din Fac a a congurac a a a amica na interface com o servidor DHCP.

FI A

No

Us o

es GNU/Linux: H a tr es diferentes clientes DHCP dispon veis nas distribuic o dhcpcd, pump e dhclient (pacote dhcp3-client - ISC, no Debian). o do cliente DHCP Instale o pacote dhcp3-client. O arquivo de congurac a do ISC ca em /etc/dhcp3/dhclient.conf. o padr suciente para seu funUsualmente, a congurac a ao do cliente DHCP e cionamento. N ao modicaremos esse arquivo.

de

o do cliente DHCP Passo3 - Congurac a

In
20

te

preciso atribuir uma interface ao servidor DHCP para ter o servic E o funcio atribu nando. A interface e da no arquivo /etc/default/dhcp3-server.

rn

6.2.3

Arquivo /etc/default/dhcp3-server

Au

option routers - enderec o do gateway que ser a atribu do aos clientes.

la

range - intervalo de enderec os IP que ser ao atribu dos aos clientes;

Para mudar esse comportamento deve-se indicar no arquivo dhcpd.conf em quais segmentos de rede o servidor DHCP ser a autorit ario, usando a diretiva authoritative;

20 11

default-lease-time, max-lease-time - o cliente DHCP pode requisi o por um tempo determinado. Se n tar a congurac a ao zer isso, o servi o de rede por default-lease-time segundos, se o dor atribui a congurac a o por no m zer, receber a a congurac a aximo max-lease-time segundos;

# The loopback network interface auto lo iface lo inet loopback # The primary network interface auto eth0 iface eth0 inet dhcp

6.4

o do funcionamento do servidor DHCP Passo4 - Vericac a

Prof. Alexander Luz Sperandio

tail -f /var/log/syslog cat /var/lib/dhcp3/dhcpd.leases

Laborat orio 2 - vde2, qemu e DHCP

7.2

o do switch Passo 2 - Criac a

FI

o A t

O comando abaixo deve ser executado pelo root. Criar a um switch virtual em /tmp/vde1 com uma interface tap0 para conex ao com o host.

# vde_switch -d -s /tmp/vde1 -tap tap0 -m 666 -daemon

-U

as

# aptitude install kqemu-common kqemu-source module-assistant # aptitude install qemu vde2

In

Note o s mbolo # antes dos comandos. Signica que o comando deve ser executado como root. Quando utilizado o s mbolo $, o comando deve ser executado pelo usu ario.

21

te

7.1

o do qemu e vde2 Passo 1 - Instalac a

d so e A

o de um switch virtual para a conex O pacote vde2 permite a criac a ao de v arias m aquinas qemu. o de Neste laborat orio, vamos instalar o pacote vde2 e testar a congurac a nosso servidor DHCP com v arias m aquinas conectadas em nosso switch virtual.

u rn la o

No lado do cliente, verique o mesmo arquivo de log e o arquivo /var/lib/dhcp3/dhclient.leases e /var/lib/dhcp3/dhclient.eth0.leases.

-2

Os arquivos /var/log/syslog e /var/lib/dhcp3/dhcpd.leases podem ser vericados no servidor.

01

7.3

Passo 3 - M aquinas qemu

$ vdeqemu -m 128 -hda debian5.img -boot c -net nic,macaddr=00:11:22:33:44:50 -net vde,sock=/tmp/vde1 -snapshot

Prof. Alexander Luz Sperandio

7.4

o do servidor DHCP e clientes Passo 4 - Congurac a

7.4.1

Vericando o servidor

o o comando dhclient pode ser usado, como root, no cliente, para a obtenc a o via DHCP; da congurac a

no cliente, o arquivo de leases se encontra em /var/lib/dhcp3/dhclient.leases.

7.5

Passo 5 - IP xo para um servidor da rede

FI

o A t

host fantasia { hardware ethernet 08:00:07:26:c0:a5; fixed-address 192.268.10.11; } Nesse cliente, renove o IP e conra o resultado.

-U

as

o de IP xo como demonstrado no exemplo abaixo, para um Fac a a congurac a dos clientes das m aquinas virtuais. O enderec o IP deve estar fora do intervalo distribu do anteriormente.

In

22

te

no servidor, o arquivo de leases pode ser visto em /var/lib/dhcpd/dhcpd.leases;

d so e A

o comando netstat -na mostrar a a porta udp 67 do servidor DHCP;

u rn la o

o do servidor DHCP com visto no lab1-DHCP. Fac a a congurac a livre e deve ser congurada manualmente por voc Desta vez a interface tap0 e e com a rede que voc e escolher. Responda as perguntas do lab1-DHCP de acordo com suas escolhas para a interface tap0.

-2

o manual do IP das m Se necess ario, fac a a congurac a aquinas virtuais que foram levantadas e veja que elas conseguem se comunicar entre si (teste com ping).

01

Os scripts serverA.sh e serverX.sh utilizam o comando abaixo para levantar duas m aquinas virtuais a partir da imagens indicadas nos scripts (uma m aquina Debian, vers ao 5 e uma CentOS, vers ao 5.5). Cada uma com um enderec o MAC diferente, para que se comuniquem atrav es do switch virtual. Execute os scripts acima para obter as m aquinas rodando.

Refer encias
[1] Nemeth, E, Snyder, G, Hein, T.R., Manual Completo do Linux - Guia do o. Pearson. S Administrador. 2a. edic a ao Paulo. 2007. cap. 12, p.217-219; [2] Timme, Falko. How To Set Up A DHCP Server For Your LAN. Dispon vel em: http://www.howtoforge.com/dhcp_server_linux_debian_sarge. Acesso em: 26 ago. 2009. [3] Vuksan, Vladimir. DHCP mini-HOWTO. Dispon vel em: http://www. tldp.org/HOWTO/DHCP/index.html. Acesso em: 05 jan. 2004.

Prof. Alexander Luz Sperandio

[4] Lemon, Ted. dhcpd.conf.5 - p agina de manual. Dispon vel em: http://www. bind9.net/dhcpd.conf.5. Acesso em: 28 ago. 2009.

Parte IV

8
8.1

DNS - Domain Name System


o Introduc a

Hist orico

DNS - Domain Name System

FI

o A t

O DNS dene:

um espac o de nomes hier arquico para hosts e enderec os IP; uma tabela de hosts implementada como uma base de dados distribu da; um resolvedor (resolver) - rotinas de biblioteca que consultam essa base de dados; 23

-U

as

RFCs 1034, 1035 (1987) o b especicac a asica do DNS (modicada depois por v arias outras RFCs)

In

usavam mapeamento entre nomes e enderec os em um arquivo texto HOSTS.TXT /etc/hosts serve para uma rede pequena, mas n ao para uma crescente ARPANET

te

in cio da internet: ARPANET do U.S. Department of Defense

d so e A

u rn la o

DNS

-2

01

8.2

O espac o de nomes do DNS


uma a rvore de dom o espac o de nomes e nios a raiz da a rvore (null) e em texto, representado por . (ponto) abaixo dela est ao os dom nios de primeiro n vel (ou n vel raiz) H a uma similaridade com o sistema de arquivos UNIX www.empresa.com.br br com empresa www /usr/local/bin /usr/ local/ bin/

Prof. Alexander Luz Sperandio

UNIX: diret orios subdiret orios e arquivos DNS: dom nios subdom nios e hosts

8.2.1

TLDs - Top Level Domains

o A t

originalmente descreviam estrutura pol tica e organizacional nos EUA

.com, .edu, .net, .gov, .mil,.., .arpa

10 http://www.fapesp.org/oque_e.htm 11 http://en.wikipedia.org/wiki/Generic_top-level_domain 12 http://en.wikipedia.org/wiki/Country_code_top-level_domain

FI

ccTLDs - Country Code Top Level Domains12 c odigo de duas letras ISO para o pa s

-U

as

es de nomes de dom Duas classicac o nio, de primeiro n vel, s ao usadas10 : gTLDs - Generic Top Level Domains11

d so e A
24

In

te

u rn la o

-2

01

pa ses criam uma arquitetura organizacional com dom nios de segundo n vel ex.: .br, .fr, .com.br, .co.uk, ... 8.2.2 Registro de dom nio

registrar um nome de segundo n vel de dom nio Brasil: http://registro.br/


Comit e Gestor da Internet no Brasil - http://www.cgi.br/ EUA: http://www.icann.org/

Prof. Alexander Luz Sperandio

Europa: https://www.centr.org/ ASIA/Pac co: http://www.apnic.net/

Nomes de dom nio

- DNS permite 63 caracteres em cada componente - 255 caracteres em um nome completo

O software BIND

vers oes: BIND 4, BIND 8 e BIND 9 BIND - Berkeley Internet Name Domain

Para descobir a sua vers ao

as

> dig @localhost v e r s i o n . bind t x t chaos version . bind . 0 CH TXT

In

Desenvolvido pelo ISC - http://www.isc.org/software/bind Unix, Linux, Windows (NT4, 2000) es do Linux pacote bind nas distribuic o

d so e A
-U
25

FI

o A t

> g r e p named / v a r / l o g / s y s l o g Aug 24 1 5 : 1 8 : 5 6 l o c a l h o s t named [ 4 6 5 8 ] : s t a r t i n g BIND 9 . 2 . 4 u b i n d Aug 24 1 5 : 1 8 : 5 6 l o c a l h o s t named [ 4 6 5 8 ] : u s i n g 1 CPU

te

u rn la o
9.2.4

Dom nios de DNS devem (RFC 1219) ser servidos por pelo menos dois servidores

-2

01

Autoridades de dom nio de primeiro n vel

9.1

Componentes do BIND
o daemon named que responde a consultas; o servidor de nomes rotinas de biblioteca que resolvem consultas de host entrando em contato com servidores DNS; o resolvedor (resolver) interfaces de linha de comando para DNS: nslookup, dig e host.

9.2

o do BIND Congurac a
Servidor cache

Prof. Alexander Luz Sperandio

9.2.1

armazena em cache os dados de consultas pr evias normalmente n ao tem zonas locais reduz signicativamente o tempo de espera especialmente em conex oes lentas

normalmente, basta iniciar o servidor named /etc/init.d/bind9 start

tail /var/log/messages o para detectar erros de congurac a

incluir a linha abaixo em /etc/resolv.conf


# / etc / r e s o l v . conf nameserver 1 2 7 . 0 . 0 . 1

Forwarding

FI

o A t

o options do arquivo /etc/named.conf inclua na sec a

forwarders { 10.0.0.1; 10.0.0.2; };

-U

as

o de uma forwarder hierarchy congurac a o servidor de nomes repassa os pedidos para outro servidor ex.: o servidor DNS do seu provedor (ISP)

d so e A
26

In

te

u rn la o

-2

01

9.3

o Arquivos de congurac a
/etc/bind/named.conf o arquivo de congurac a db.root ou root.hints, ... arquivo de dicas, cont em os servidores raiz para servidores mestre: arquivos de dados de zona cont em os mapeamentos de enderec os de cada host

Prof. Alexander Luz Sperandio

o de um servidor cache Congurac a


/ / C o n f i g f i l e f o r c a c h i n g o n l y name s e r v e r // / / O p t i o n s e s p e c i f i c a a s o p c o e s g l o b a i s . Ha m a i s de 50 no b i n d 9 . / / man named . c o n f p a r a m a i s i n f o r m a c o e s options { / / Nomes de c a m i n h o s r e l a t i v o s n o s a r q u i v o s de c o n f i g u r a c a o , s a o / / i n t e r p r e t a d o s em r e l a c a o a e s s e d i r e t o r i o . d i r e c t o r y / v a r / named ; version ; };

DNS prim ario e secund ario

DNS prim ario (Primary Master)

o A t

DNS secund ario (escravo - Slave Servers) servidor com autoridade que carrega a zona de outro servidor processo conhecido como zone transfer

FI

Exemplo de conguracao para um authoritative-only server master server para example.com slave (escravo) para o subdominio eng.example.com.

-U

as

servidor com autoridade aonde os dados de zona s ao mantidos carrega a zona de um arquivo local

In

27

te

/ / F o r n e c e mapeamento r e v e r s o p a r a o e n d e r e c o de l o o p b a c k z o n e 0 . 0 . 1 2 7 . i n a d d r . a r p a { type master ; f i l e pz / l o c a l h o s t . r e v ; };

d so e A

/ / f o r n e c e ao s e r v i d o r o c o n h e c i m e n t o d o s s e r v i d o r e s r a i z zone . { type hint ; f i l e root . hints ; };

u rn la o

-2

named.conf tem formato pr oprio; todos os outros t em formatos de acordo o do DNS. com a especicac a

01

Servidor com autoridade


/ / Duas r e d e s de onde q u e r i e s s a o p e r m i t i d o s acl labs {10.1.1.0/26; 1 0 . 1 . 2 . 0 / 2 6 ; }; options { d i r e c t o r y / e t c / namedb ; / / D i r e t o r i o de t r a b a l h o a l l o w q u e r y { l a b s ; } ; }; / / Root s e r v e r h i n t s zone . { t y p e h i n t ; f i l e r o o t . h i n t ; } ; / / P r o v i d e a r e v e r s e mapping f o r t h e l o o p b a c k a d d r e s s 1 2 7 . 0 . 0 . 1 z o n e 0 . 0 . 1 2 7 . i n a d d r . a r p a { type master ; f i l e l o c a l h o s t . rev ; }; / / We a r e t h e m a s t e r s e r v e r f o r e x a m p l e . com z o n e e x a m p l e . com { type master ; f i l e e x a m p l e . com . db ; / / I P s de s e r v i d o r e s e s c r a v o s p e r m i t i d o s a t r a n s f e r i r e x a m p l e . com allowt r a n s f e r { 192.168.4.14; 192.168.5.53; }; }; / / Somos um s e r v i d o r e s c r a v o ( s e c u n d a r i o ) p a r a eng . e x a m p l e . com z o n e eng . e x a m p l e . com { type slave ; f i l e eng . e x a m p l e . com . bk ; / / I P a d d r e s s o f eng . e x a m p l e . com m a s t e r s e r v e r masters { 192.168.4.12; }; };

Prof. Alexander Luz Sperandio

10

Arquivos de zona

banco de dados distribu do do DNS

Cont em dois tipos de entrada registros de recursos comandos

10.1

Registros de Recursos - RRs

o A t

; - introduz um coment ario;

Caractere arroba - nome da zona atual; ( ) - permite que os dados se estendam sobre linhas; * - caractere coringa (somente para o campo nome).

FI

-U

as

Formato b asico: [nome] [ttl] [classe] tipo dados Campos separados por espac os ou TABs e podem conter:

d so e A
28

Mantido pelo administrador de sistemas servidor de nomes mestre do dom nio.

In

te

u rn la o

-2

01

10.1.1

Campo nome

Cuidado:

Prof. Alexander Luz Sperandio

nome: www.empresa.com => www.empresa.com.empresa.com. 10.1.2 Campo ttl (time to live)

tempo que o item de dados pode car armazenado em cache (s) normalmente, omitido exceto no arquivo hints (arquivo de dicas) diretiva $TTL no in cio do arquivo de zona obrigat oria no BIND9

valores altos economizam banda e a carga no DNS valores baixos permitem mudanc a r apida

10.1.3

Campo classe

3 valores:

IN de Internet (padr ao)

es s 2 informac o ao guardadas na rede ChaosNet: vers ao do software do servidor DNS nome do host onde est a executando

FI

o A t

-U

as

HS de Hesiod (MIT)

CH de ChaosNet (obsoleto)

d so e A
29

In

te

u rn la o

-2

dom nio: empresa.com. nome: www => www.empresa.com.

01

pode ser relativo ou absoluto absolutos terminam com ponto, s ao completos relativos s ao adicionados ao dom nio

host ou dom nio descrito pelo registro; primeira coluna ap os o primeiro, pode ser omitido => iniciar com espac o

10.1.4

Campo tipo

Muitos tipos de registros DNS 4 grupos: Registros de zona - identicam dom nios e seus servidores de nomes; Registros b asicos - associam nomes a enderec os e encaminham email; o e assinaturas nos arquivos de Registros de seguranc a - autenticac a zonas; es adicionais sobre hosts ou dom Registros opcionais - informac o nios.

Prof. Alexander Luz Sperandio

tipos de registros comuns: Registros de zona

SOA - Start Of Authority - Dene uma zona DNS

A - IPV4 address - Convers ao de nome para enderec o

AAAA - IPV6 address - Convers ao de nome para enderec o

MX - Mail Exchanger - Controla o roteamento de email

DNSKEY - Public Key - Chave p ublica para um nome DNS

FI

o A t

Registros opcionais:

CNAME - Canonical Name - Apelido ou aliases para um host o e extens LOC - Location - Localizac a ao geogr aca

es de servic SRV - Services - Fornece as localizac o os bem conhecidos es n TXT - Text - Coment arios ou informac o ao transcritas

-U

as

NSEC - Next Secure - Usado com DNSSEC para respostas negativas

RRSIG - Signature - Conjunto de registros de recursos assinados e autenticados

In

DS - Delegation Signer - Hash da chave de assinatura de chave da zona lha assinada

30

te

Registros de seguranc a:

d so e A

PTR - Pointer - Convers ao de enderec o para nome

u rn la o

NS - Name Server - Identica servidores de zonas, delega subdom nios Registros b asicos

-2

01

10.2

Comandos em arquivos de zonas

Devem comec ar na primeira coluna e ocupar linha exclusiva H a quatro comandos: $ORIGIN nomeDeDom nio $INCLUDE nomeDeArquivo $TTL padr aottl

$GENERATE in cio-fim/[passo] lhs tipo rhs [coment ario] $ORIGIN e $TTL s ao especicados nas RFCs

Prof. Alexander Luz Sperandio

$INCLUDE e $GENERATE t em origem no BIND

11

Exerc cios

o do servidor de nomes do 2. D e o caminho e o nome do arquivo de congurac a BIND9. o options do arquivo de 3. Descreva o que fazem as linhas abaixo, na sec a o do BIND: congurac a (a) (b) (c)

(a)

In

o abaixo, descreva para que serve e em qual 4. Para cada trecho de congurac a arquivo ou diret orio ele pode ser encontrado.
zone "." { type hint; file "/etc/bind/db.root"; };

d so e A
directory "/var/cache/bind";

forwarders {201.6.0.100; 201.6.0.35; };

o A t

o de zona mostrado abaixo, responda o que e 5. Sobre o arquivo de congurac a pedido:


$TTL 1W @ IN SOA @ root ( 42 2D 4H 6W 1W ) @ 127.0.0.1

-U

as

FI

IN NS IN A

31

te
(b)
; ; ; ; ;

listen-on { 127.0.0.1; 172.20.0.1; };

u rn la o

1. Para que serve o BIND?

zone "linux.bogus" { type master; notify no; file "/etc/bind/linux.bogus"; };

serial (d. adams) refresh retry expiry minimum

-2

01

(a) Indique a zona para a qual esse arquivo foi denido. (b) Escreva o signicado do arroba, utilizado em v arios pontos do arquivo. (c) Escreva as linhas do arquivo /etc/named.conf que denem a zona para esse arquivo. (d) Escreva as linhas do arquivo /etc/named.conf que denem a zona reversa. (e) Escreva o arquivo de zona, referente a zona reversa escrita no item anterior. (f) Escreva o signicado da linha: $TTL 1W

Prof. Alexander Luz Sperandio

o 6. Escreva o arquivo de zona para a zona exercicio.com, denida na congurac a do servidor bind9. Dena as m aquinas:

pescada (servidor de email) com IP 200.146.79.163; tainha (servidor web) com IP 200.146.79.164; www como CNAME do host tainha.

12.1

Objetivos

FI

o seque recursivamente dentro da hierNa busca por uma m aquina, a requisic a arquia do DNS, comec ando pela raiz (.). Para encontrar o enderec o da m aquina prep.ai.mit.edu, o servidor de nomes tem que comec ar em algum lugar. Seu servidor n ao conhece nada sobre ai.mit.edu., mit.edu. ou edu.. Se o enderec o n ao existe no cache, a busca deve comec ar pela raiz. Os servidores raiz n ao respondem diretamente a consulta, ao inv es disso, fornecem uma refer encia de onde a resposta pode ser encontrada. Essa refer encia (referral) deve levar o seu servidor a um servidor que sabe a resposta.

o A t

-U

as

- Entender como o DNS funciona - Aprender sobre o utilit ario dig

12.2

o Introduc a

In

12

o de nomes DNS lab1: Resoluc a

32

te

$TTL 4D @ IN SOA pintado.exercicio.com. hostmaster.exercicio.com. ( 2006091801 3H 15M 1W 1D ; H - Hora, M - Minuto, W - Week, D - Dia)

d so e A

Continue a partir das linhas abaixo:

u rn la o

pintado (servidor de nomes) com IP 200.146.79.162;

-2

(g) Para que serve e qual o signicado de cada um dos valores informados entre par enteses, no registro SOA?

01

o +norec - sem Vamos usar o comando dig para fazer a busca, usando a opc a es s recursividade - assim, n os fazemos esse trabalho. As outras opc o ao para reduzir es na sa a quantidade de informac o da de dig.

12.3

Atividade

> dig . ns

Prof. Alexander Luz Sperandio

; < < > > DiG 9 . 2 . 4 < < > > . ns ; ; global options : printcmd ; ; Got a n s w e r : ; ; >>HEADER < < o p c o d e : QUERY, s t a t u s : NOERROR, i d : 32294 ; ; f l a g s : q r r d r a ; QUERY: 1 , ANSWER: 1 3 , AUTHORITY : 0 , ADDITIONAL : 10 ; ; QUESTION SECTION : ;. ; ; ANSWER SECTION : . . . . . . . . . . . . .

IN

FI

o A t

;; ;; ;; ;;

Query t i m e : 0 msec SERVER : 1 2 7 . 0 . 0 . 1 # 5 3 ( 1 2 7 . 0 . 0 . 1 ) WHEN: Mon Sep 11 1 4 : 2 3 : 3 0 2006 MSG SIZE r c v d : 388

> d i g + n o r e c + n o q u e s + n o s t a t s +nocmd p r e p . a i . m i t . edu . @d . r o o t s e r v e r s . n e t .

2 - Escolha um dos root servers e comec amos a busca.

-U

; ; ADDITIONAL SECTION : B . ROOTSERVERS . NET . C . ROOTSERVERS . NET . D . ROOTSERVERS . NET . E . ROOTSERVERS . NET . F . ROOTSERVERS . NET . G . ROOTSERVERS . NET . H . ROOTSERVERS . NET . I . ROOTSERVERS . NET . L . ROOTSERVERS . NET . M. ROOTSERVERS . NET .

d so e A
603702 603702 603702 603702 604539 603702 603702 603702 603702 603702 IN IN IN IN IN IN IN IN IN IN

In

517302 517302 517302 517302 517302 517302 517302 517302 517302 517302 517302 517302 517302

IN IN IN IN IN IN IN IN IN IN IN IN IN

as

33

te
A A A A A A A A A A

u rn la o
NS NS NS NS NS NS NS NS NS NS NS NS NS NS

M. ROOTSERVERS . NET . A . ROOTSERVERS . NET . B . ROOTSERVERS . NET . C . ROOTSERVERS . NET . D . ROOTSERVERS . NET . E . ROOTSERVERS . NET . F . ROOTSERVERS . NET . G . ROOTSERVERS . NET . H . ROOTSERVERS . NET . I . ROOTSERVERS . NET . J . ROOTSERVERS . NET . K . ROOTSERVERS . NET . L . ROOTSERVERS . NET .

192.228.79.201 192.33.4.12 128.8.10.90 192.203.230.10 192.5.5.241 192.112.36.4 128.63.2.53 192.36.148.17 198.32.64.12 202.12.27.33

-2

01

1 - use o comando dig . ns para procurar pelos root servers; E poss vel perguntar diretamente a um dos servidores raiz: dig @f.root-servers.net . ns Os root servers s ao carregados no cache do seu servidor DNS atrav es de um arquivo. D e uma olhada no arquivo named.conf.

; ; Got a n s w e r : ; ; >>HEADER < < o p c o d e : QUERY, s t a t u s : NOERROR, i d : 50054 ; ; f l a g s : q r ; QUERY: 1 , ANSWER: 0 , AUTHORITY : 8 , ADDITIONAL : 8 ; ; AUTHORITY SECTION : edu . edu . edu . edu . edu . edu . edu . edu . ; ; ADDITIONAL SECTION : L3 . NSTLD .COM. D3 . NSTLD .COM. A3 . NSTLD .COM. E3 . NSTLD .COM. C3 . NSTLD .COM. G3 . NSTLD .COM. M3 . NSTLD .COM. H3 . NSTLD .COM.

Prof. Alexander Luz Sperandio

172800 172800 172800 172800 172800 172800 172800 172800

IN IN IN IN IN IN IN IN

A A A A A A A A

192.41.162.32 192.31.80.32 192.5.6.32 192.12.94.32 192.26.92.32 192.42.93.32 192.55.83.32 192.54.112.32

uma refer Isso e encia. Obtivemos uma Authority Section e nenhuma Answer Section. Obtivemos as autoridades do dom nio edu. 3 - Escolha um outra vez.

> d i g + n o r e c + n o q u e s + n o s t a t s +nocmd p r e p . a i . m i t . edu . @e3 . n s t l d . com . ; ; Got a n s w e r : ; ; >>HEADER < < o p c o d e : QUERY, s t a t u s : NOERROR, i d : 27952 ; ; f l a g s : q r ; QUERY: 1 , ANSWER: 0 , AUTHORITY : 3 , ADDITIONAL : 3 ; ; AUTHORITY SECTION : m i t . edu . m i t . edu . m i t . edu .

d so e A
172800 172800 172800 IN IN IN 172800 172800 172800 IN IN IN

; ; ADDITIONAL SECTION : BITSY . m i t . edu . W20NS . m i t . edu . STRAWB. m i t . edu .

In

o A t

; ; Got a n s w e r : ; ; >>HEADER < < o p c o d e : QUERY, s t a t u s : NOERROR, i d : 5949 ; ; f l a g s : q r r a ; QUERY: 1 , ANSWER: 0 , AUTHORITY : 4 , ADDITIONAL : 4 AUTHORITY SECTION : . m i t . edu . . m i t . edu . . m i t . edu . . m i t . edu .

;; ai ai ai ai

-U

as

Agora ele nos refere aos servidores no dom nio mit.edu. Escolha um.

> d i g + n o r e c + n o q u e s + n o s t a t s +nocmd p r e p . a i . m i t . edu . @ b i t s y . m i t . edu .

21600 21600 21600 21600

IN IN IN IN

FI

; ; ADDITIONAL SECTION : FEDEX . a i . m i t . edu . LIFE . a i . m i t . edu .

21600 21600

IN IN

34

te
A A A NS NS NS NS A A

u rn la o
NS NS NS 18.72.0.3 18.70.0.160 18.71.0.151

W20NS . m i t . edu . STRAWB. m i t . edu . BITSY . m i t . edu .

FEDEX . a i . m i t . edu . LIFE . a i . m i t . edu . MINTAKA . LCS . m i t . edu . OSSIPEE . LCS . m i t . edu .

192.148.252.28 128.52.32.80

-2

01

172800 172800 172800 172800 172800 172800 172800 172800

IN IN IN IN IN IN IN IN

NS NS NS NS NS NS NS NS

L3 . NSTLD .COM. D3 . NSTLD .COM. A3 . NSTLD .COM. E3 . NSTLD .COM. C3 . NSTLD .COM. G3 . NSTLD .COM. M3 . NSTLD .COM. H3 . NSTLD .COM.

MINTAKA . LCS . m i t . edu . OSSIPEE . LCS . m i t . edu .

21600 21600

IN IN

A A

18.26.0.36 18.26.0.18

Agora devemos obter uma resposta (Answer Section). 4 - Escolha um dos servidores que tem autoridade sobre o dom nio ai.mit.edu
> d i g + n o r e c + n o q u e s + n o s t a t s +nocmd p r e p . a i . m i t . edu . @ l i f e . a i . m i t . edu . ; ; Got a n s w e r : ; ; >>HEADER < < o p c o d e : QUERY, s t a t u s : NOERROR, i d : 17192 ; ; f l a g s : q r a a ; QUERY: 1 , ANSWER: 1 , AUTHORITY : 0 , ADDITIONAL : 0 ; ; ANSWER SECTION : p r e p . a i . m i t . edu .

1800

IN

CNAME

f t p . gnu . o r g .

Prof. Alexander Luz Sperandio

13
13.1

lab2: Servidor Prim ario e Secund ario


Objetivos
- Denir nosso pr oprio dom nio usando named

13.2

o de um dom Criac a nio

Vamos denir o dom nio linux.bogus.

1 - J a existe algo parecido com o texto abaixo em named.conf


zone "127.in-addr.arpa" { type master; file "/etc/bind/db.127"; };

- Deniremos a zona 127.in-addr.arpa; - Somos o servidor master para ela;

FI

; ; BIND reverse data file for local loopback interface ; $TTL 3D @ IN SOA ns.linux.bogus. root.linux.bogus. ( 1 ; Serial 8h ; Refresh 2H ; Retry 4D ; Expire 1D ) ; Minimum TTL ; NS ns.linux.bogus. 1.0.0 PTR localhost.

o A t

-U

as

- A zona est a armazenada em /etc/bind/db.127. 2 - Vamos editar o arquivo /etc/bind/db.127

In

O que signica:

d so e A
35

te

u rn la o

-2

5 - Experimente o comando dig +trace prep.ai.mit.edu

01

Note o . ao nal de todos os dom nios completos e a sua inexist encia em named.conf H a 3 registros de recursos (RRs - Resource Records): SOA, NS e PTR SOA - Start of Authority NS - Name Server PTR - Domain Name Pointer - diz que o host 127.0.0.1 tem nome localhost

Prof. Alexander Luz Sperandio

> dig -x 127.0.0.1

;; QUESTION SECTION: ;1.0.0.127.in-addr.arpa.

;; ANSWER SECTION: 1.0.0.127.in-addr.arpa. 259200

IN

as

;; AUTHORITY SECTION: 127.in-addr.arpa. 259200 ;; ;; ;; ;;

IN

FI

o A t

Query time: 2 msec SERVER: 127.0.0.1#53(127.0.0.1) WHEN: Wed Sep 13 03:02:39 2006 MSG SIZE rcvd: 91

zone "linux.bogus" { type master; notify no; file "/etc/bind/linux.bogus"; };

4 - Agora vamos a nossa tarefa principal, o dom nio linux.bogus. Vamos o zone em named.conf. inserir uma nova sec a

-U

In

IN

PTR

NS

36

te
PTR localhost.

;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12545 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

d so e A

3 - Agora reinicie named (rndc reload deve resolver) e vamos usar o comando o -x, no comanodo dig faz uma consulta dig, para examinar nosso trabalho. A opc a a zona reversa.

u rn la o
ns.linux.bogus.

@ IN SOA ns.linux.bogus. root.linux.bogus. uma notac o especial, signicando origem; se refere a 127.in-addr.arpa. - @ e a - o dom nio denido em named.conf, no item zone o servidor de nomes do dom Diz ao DNS que m aquina e nio 127.in-addr.arpa, ns.linux.bogus; e - root.linux.bogus signica root@linux.bogus - o email do administrador;

-2

$TTL 3D O servidor fornece essa TTL (Time To Live) em respostas a queries, permitindo a outros servidores manter os dados em cache por esse intervalo;

01

- notify - permite aos servidores mestre (prim ario) noticar seus escravos (secund ario) de mudanc as em dados de zona. Por padr ao yes. 5 - Agora o arquivo de zona:
; Zone file for linux.bogus ; ; The full zone file ; $TTL 3D @ IN SOA ns.linux.bogus. hostmaster.linux.bogus. ( 199802151 ; serial, todays date + ; todays serial # 8H ; refresh, seconds 2H ; retry, seconds 4W ; expire, seconds 1D ) ; minimum, seconds ; NS ns ; Inet Address of name server MX 10 mail.linux.bogus. ; Primary Mail Exchanger MX 20 mail.friend.bogus. ; Secondary Mail Exchanger ; ns A 192.168.196.2 mail A 192.168.196.4

Prof. Alexander Luz Sperandio

no registo SOA, ns.linux.bogus deve ser uma m aquina com um registro A. Seu nome n ao precisa ser ns, poderia ser qualquer outro hostname;

5 - reload named e examine os resultados com dig:


> dig any linux.bogus.

; <<>> DiG 9.2.4 <<>> any linux.bogus ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 803 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 2

FI

o A t

;; ANSWER SECTION: linux.bogus. 259200 linux.bogus. 259200 linux.bogus. 259200 linux.bogus. 259200

;; ADDITIONAL SECTION: ns.linux.bogus. 259200 IN A 192.168.196.2 mail.linux.bogus. 259200 IN A 192.168.196.4 ;; ;; ;; ;; Query time: 0 msec SERVER: 127.0.0.1#53(127.0.0.1) WHEN: Wed Sep 13 05:17:46 2006 MSG SIZE rcvd: 174

-U

as

;; QUESTION SECTION: ;linux.bogus. IN ANY

d so e A
IN IN IN IN

H a um novo RR nesse arquivo: MX (Mail Exchanger - indica um hostname que ir a agir como servidor de email para o dom nio. O n umero antes do a prioridade, menor e mais priorit nome e ario.)

SOA ns.linux.bogus. hostmaster.linux.bogus. 199802151 28800 7200 2419200 86400 NS ns.linux.bogus. MX 10 mail.linux.bogus. MX 20 mail.friend.bogus.

In

37

te

u rn la o

-2

01

Prof. Alexander Luz Sperandio

Au
In
38

7 - Carregue a nova base de dados com rndc reload e vamos ao dig. Com o tipo axfr dig pede por uma transfer encia de zona (zone transfer);

FI A

No

; <<>> DiG 9.2.4 <<>> linux.bogus axfr ;; global options: printcmd linux.bogus. 259200 IN SOA ns.linux.bogus. hostmaster.linux.bogus. 199802151 28800 7200 2419200 86400 linux.bogus. 259200 IN TXT "Linux.Bogus, your DNS consultants" linux.bogus. 259200 IN NS ns.linux.bogus. linux.bogus. 259200 IN NS ns.friend.bogus. linux.bogus. 259200 IN MX 10 mail.linux.bogus. linux.bogus. 259200 IN MX 20 mail.friend.bogus. donald.linux.bogus. 259200 IN A 192.168.196.3 donald.linux.bogus. 259200 IN MX 10 mail.linux.bogus. donald.linux.bogus. 259200 IN MX 20 mail.friend.bogus. donald.linux.bogus. 259200 IN TXT "DEK" ftp.linux.bogus. 259200 IN A 192.168.196.5 ftp.linux.bogus. 259200 IN MX 10 mail.linux.bogus. ftp.linux.bogus. 259200 IN MX 20 mail.friend.bogus. gw.linux.bogus. 259200 IN A 192.168.196.1 gw.linux.bogus. 259200 IN TXT "The router" localhost.linux.bogus. 259200 IN A 127.0.0.1 mail.linux.bogus. 259200 IN A 192.168.196.4 mail.linux.bogus. 259200 IN MX 10 mail.linux.bogus. mail.linux.bogus. 259200 IN MX 20 mail.friend.bogus. ns.linux.bogus. 259200 IN A 192.168.196.2

ta

Us o

de

> dig linux.bogus. axfr

te

rn

CNAME (Canonical Name) - um modo de dar v arios nomes a uma m aquina; um alias para ns; www e - registros MX, CNAME ou SOA n ao devem se referir a registros CNAME, mas somente a registros A;

la

; Zone file for linux.bogus ; The full zone file ; $TTL 3D @ IN SOA ns.linux.bogus. hostmaster.linux.bogus. ( 199802151 ; serial, todays date + todays serial # 8H ; refresh, seconds 2H ; retry, seconds 4W ; expire, seconds 1D ) ; minimum, seconds ; TXT "Linux.Bogus, your DNS consultants" NS ns ; Inet Address of name server NS ns.friend.bogus. MX 10 mail ; Primary Mail Exchanger MX 20 mail.friend.bogus. ; Secondary Mail Exchanger gw A 192.168.196.1 TXT "The router" ns A 192.168.196.2 www CNAME ns donald A 192.168.196.3 TXT "DEK" mail A 192.168.196.4 ftp A 192.168.196.5

20 11

o extra no arquivo de zona. 6 - Vamos adicionar alguma informac a

ns.linux.bogus. 259200 IN MX 10 mail.linux.bogus. ns.linux.bogus. 259200 IN MX 20 mail.friend.bogus. www.linux.bogus. 259200 IN CNAME ns.linux.bogus. linux.bogus. 259200 IN SOA ns.linux.bogus. hostmaster.linux.bogus. 199802151 28800 7200 2419200 86400 ;; Query time: 1 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Wed Sep 13 09:29:13 2006 ;; XFR size: 24 records

8 - Vamos ver o que dig retorna para www.


> dig www.linux.bogus. ; <<>> DiG 9.2.4 <<>> www.linux.bogus ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34944 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.linux.bogus. IN A ;; ANSWER SECTION: www.linux.bogus. 259200 IN CNAME ns.linux.bogus. ns.linux.bogus. 259200 IN A 192.168.196.2 ;; AUTHORITY SECTION: linux.bogus. 259200 IN NS ns.linux.bogus. linux.bogus. 259200 IN NS ns.friend.bogus. ;; ;; ;; ;; Query time: 0 msec SERVER: 127.0.0.1#53(127.0.0.1) WHEN: Wed Sep 13 09:30:37 2006 MSG SIZE rcvd: 104

Prof. Alexander Luz Sperandio

Au
In
39

13.3

A zona reversa

Agora os programas podem converter os nomes em linux.bogus para enderec os necess aonde eles podem conectar. Tamb em e ario criar uma zona reversa, que torna o DNS capaz de converter enderec os em nomes. 9 - Ponha o texto abaixo em named.conf
zone "196.168.192.in-addr.arpa" { type master; notify no; file "pz/192.168.196"; };

ta

No

FI A

$TTL 3D @ IN

similar ao da zona 127.in-addr.arpa, que inclu Esse conte udo e mos antes no arquivo named.conf. Note que os n umeros 1, 2, 3, 4 e 5 s ao completados com a zona reversa 196.168.192.in-addr.arpa, denida no arquivo named.conf.
SOA ns.linux.bogus. hostmaster.linux.bogus. ( 199802151 ; Serial, todays date + todays serial

Us o

de

te

rn

la

20 11

NS 1 2 3 4 5 PTR PTR PTR PTR PTR

8H ; Refresh 2H ; Retry 4W ; Expire 1D) ; Minimum TTL ns.linux.bogus. gw.linux.bogus. ns.linux.bogus. donald.linux.bogus. mail.linux.bogus. ftp.linux.bogus.

o (rndc 10 - Agora podemos dizer a named para recarregar a congurac a reload) e examinar a sa da de dig.
> dig -x 192.168.196.4

Prof. Alexander Luz Sperandio

;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 58451 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; QUESTION SECTION: ;4.196.168.192.in-addr.arpa.

;; ANSWER SECTION: 4.196.168.192.in-addr.arpa. 259200 IN ;; AUTHORITY SECTION: 196.168.192.in-addr.arpa. 259200 IN ;; ADDITIONAL SECTION: ns.linux.bogus. ;; ;; ;; ;;

d so e A
259200 IN A

> dig 196.168.192.in-addr.arpa. AXFR

FI

o A t

; <<>> DiG 9.1.3 <<>> 196.168.192.in-addr.arpa. ;; global options: printcmd 196.168.192.in-addr.arpa. 259200 IN SOA hostmaster.linux.bogus. 199802151 28800 196.168.192.in-addr.arpa. 259200 IN NS 1.196.168.192.in-addr.arpa. 259200 IN PTR 2.196.168.192.in-addr.arpa. 259200 IN PTR 3.196.168.192.in-addr.arpa. 259200 IN PTR 4.196.168.192.in-addr.arpa. 259200 IN PTR 5.196.168.192.in-addr.arpa. 259200 IN PTR 196.168.192.in-addr.arpa. 259200 IN SOA hostmaster.linux.bogus. 199802151 28800 ;; Query time: 6 msec ;; SERVER: 127.0.0.1#53(127.0.0.1) ;; WHEN: Sun Dec 23 03:16:58 2001 ;; XFR size: 9 records

as

-U

In

11 - Agora, vamos fazer a transfer encia de zona outra vez

40

te
AXFR

Query time: 4 msec SERVER: 127.0.0.1#53(127.0.0.1) WHEN: Sun Dec 23 03:16:05 2001 MSG SIZE rcvd: 107

u rn la o
PTR mail.linux.bogus. NS ns.linux.bogus. 192.168.196.2 ns.linux.bogus. \ 7200 2419200 86400 ns.linux.bogus. gw.linux.bogus. ns.linux.bogus. donald.linux.bogus. mail.linux.bogus. ftp.linux.bogus. ns.linux.bogus. \ 7200 2419200 86400

IN

PTR

-2

01

13.4

Transfer encia de zona

o do servidor dns /etc/bind/named.conf Arquivo de congurac a zone "tralala.fiap" { type master; file "/etc/bind/db.tralala"; allow-transfer { 192.168.6.102; }; }; zone "6.168.192.in-addr.arpa" { type master; file "/etc/bind/rev.tralala"; allow-transfer { 192.168.6.102; }; }; Arquivo master da zona tralala.ap $TTL @ 60 IN

Prof. Alexander Luz Sperandio

Au
IN IN IN

SOA

; @

de
IN IN IN

ello rede6b mail

Us o

NS NS MX 10

In
A A A CNAME CNAME 41

ello.tralala.fiap. root.tralala.fiap. ( 7 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ello.tralala.fiap. rede6b.tralala.fiap. mail.tralala.fiap. 192.168.6.122 192.168.6.102 192.168.6.122

ta

; www ftp

Apelidos IN IN ello ello

FI A

No

Arquivo reverso da zona tralala.ap

te

rn

la

20 11

Se a sua sa da n ao se parece com essa, procure pelas mensagens de erro em seu syslog (arquivos: /var/log/syslog ou /var/log/messages, dependendo o de sua distribuic o). da congurac a a

$TTL @

60 IN SOA ello.tralala.fiap. root.tralala.fiap. ( 7 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ello.tralala.fiap. ello.tralala.fiap. rede6b.tralala.fiap.

Prof. Alexander Luz Sperandio

o: O servidor DNS secund ario tem o arquivo de congurac a zone "tralala.fiap" { type slave; file "db.tralala.bk"; masters { 192.168.6.122; }; }; zone "6.168.192.in-addr.arpa" { type slave; file "rev.tralala.bk"; masters { 192.168.6.122; }; };

Refer encias

[1] Nemeth, E, Snyder, G, Hein, T.R., Manual Completo do Linux - Guia do o. Pearson. S Administrador. 2a. edic a ao Paulo. 2007. cap. 15, p.260-336;

FI

o A t

[5] Albitz, P, Liu, C. DNS and BIND. 4th edition. OReilly, 2001. 622p.

[4] ISC, Inc. BIND 9 Administrator Reference Manual. Dispon vel em: ftp. isc.org/isc/bind9/cur/9.8/doc/arm/Bv9ARM.pdf. Acesso em: 14 ago. 2011.

-U

as

o [2] Nemeth, E, Snyder, G, Seebass, S, Hein, T.R., Manual de Administrac a o. Bookman, 2002. cap.16, p.434-529. do Sistema UNIX. 3a. edic a [3] Sheer, P. LINUX: Rute Users Tutorial and Exposition (Version 1.0.0). Dispon vel em: http://packages.debian.org/stable/doc/rutebook. Acesso em: 21 jul. 2006.cap.27.

d so e A
42

In

te

u rn la o

-2

; @ 122 102

IN IN IN

NS PTR PTR

01

Parte V

Servidor web - apache


14
14.1

o do Apache Apresentac a
o Introduc a

o Introduc a simplesmente um programa que l Um servidor web e e um arquivo do disco o: r gido quando chega na porta 80, a requisic a

Prof. Alexander Luz Sperandio

GET /arquivo.html HTTP/1.0

um servidor web: O Apache e

serve conte udo pela internet atrav es do protocolo http


projeto servidor http: http://httpd.apache.org/

desenvolvido pelo Apache Group - http://www.apache.org/


Segundo a Netcraft http://news.netcraft.com/archives/web_server_survey. o servidor web mais usado do mundo. html, o Apache e Vers ao 2.2.21 anunciada em http://httpd.apache.org/ Vers ao 2.0.64 - release da vers ao 2.0 Vers ao 2.3.14-beta

14.2

o Instalac a

.tar.gz ou .tar.bz2 - fontes para Unix

FI

o A t

.zip - fontes para Win32 .msi - bin ario para Win32 .rpm - bin arios para RedHat, Fedora, OpenSuSE, Mandriva, TurboLinux,.. .deb - bin arios para Debian, Kurumin, ..

-U

as

o Instalac a H a bin arios dispon veis para v arios sistemas operacionais (http://mirror. pop-sc.rnp.br/apache/httpd/binaries/) inclusive Windows.

d so e A
43

In

te

u rn la o

-2

01

14.3

Iniciando o servidor

Iniciando o servidor

Teste com telnet localhost 80 Teste com o navegador http://localhost/ Arquivos de log em: /var/log/apache2/

Prof. Alexander Luz Sperandio

15
15.1

o do Apache Congurac a
o Arquivo de congurac a
/etc/apache2/apache2.conf

o: Arquivo principal de congurac a

uma diretiva por linha; o Ex.: include - inclui outros arquivos de congurac a

apache2ctl -t testa a sintaxe

es de Virtual Hosts apache2ctl -S testa as congurac o

15.1.1

o Arquivos e Diretivas de congurac a

Arquivos inclu dos do Apache2

/etc/apache2/ports.conf

FI

o A t

/etc/apache2/httpd.conf es adicionais do usu Congurac o ario; vazio. /etc/sites-available/default o inicial de VirtualHost para o apache; ativado pelo link simb Congurac a olico /etc/apache2/sites-enabled/000-default;

-U

as

Enderec os e portas para o servidor; Ex.: Listen 80

/etc/apache2/envvars o de vari Denic a aveis de ambiente para o apache; Ex.: usu ario e grupo que rodam o apache: www-data (Debian)

d so e A
44

linhas iniciadas com # (hash) s ao coment arios

In

te

u rn la o

-2

01

O comando netstat -na tcp 0 0 0.0.0.0:80 0.0.0.0:* OUC A

/etc/init.d/apache2 start ou stop ou restart ou reload

Diret orios do Apache2 /etc/apache2/conf.d/


o adicional; Arquivos inclu dos como congurac a Ex.: conf.d/docs compartilha /usr/share/doc/ via web. /etc/apache2/mods-availabe/ Disponibiliza m odulos do apache que podem ser ativados;

o de links simb s ao ativados atrav es da criac a olicos no diret orio /etc/apache2/mods-enabled/ a2enmod e a2dismod s ao scripts para ativar e desativar um m odulo, respectivamente. /etc/apache2/sites-available/ Virtual Hosts dispon veis;

Prof. Alexander Luz Sperandio

o de links simb s ao ativados atrav es da criac a olicos no diret orio /etc/apache2/sites-enabled/ a2ensite e a2dissite s ao scripts para ativar e desativar um Virtual Host, respectivamente.

o Diretivas de congurac a

User e Group - usu ario e grupo que executa o apache;

- atribu dos em apache2.conf a partir das vari aveis de ambiente do apache criadas no arquivo envvars; DirectoryIndex - arquivos-padr ao a serem abertos pelo apache; - arquivo: mods-available/dir.conf, ativado por padr ao em mods-enabled/dir.conf13 ;

ServerAdmin - dene o enderec o de e-mail do administrador do servidor Apache; - arquivo: sites-available/default;

FI

o A t

H a tamb em arquivos .load em mods-available/. Esses arquivos tamb em devem ter seus links simb olicos em mods-enabled/ pois fazem o apache carregar os m odulos necess arios para as es. Ex.: mods-available/dir.load . congurac o 14 http://httpd.apache.org/docs/2.0/sections.html

13

o de blocos de sec o14 Congurac a a poss o de blocos para a inclus E vel a denic a ao de diretivas aplic aveis apenas ao bloco. Exemplo: compartilhamento de um diret orio acess vel por:

-U

as

ServerName - dene o hostname do servidor;

15.1.2

o Blocos de sec a

In

45

te

DocumentRoot - diret orio raiz dos arquivos fornecidos pelo apache (Ex.: arquivos .html); - arquivo: sites-available/default;

d so e A

u rn la o

-2

01

http://localhost/doc Alias /doc "/usr/share/doc/" <Directory /usr/share/doc> Options Indexes FollowSymLinks Order deny,allow deny from all allow from localhost </Directory>
es a um diret Directory - restric o orio do sistema de arquivos < Directory directory path > ... < /Directory >

Prof. Alexander Luz Sperandio

DirectoryMatch - mesmo, mas aceita express oes regulares < DirectoryMatch regex > ... < /DirectoryMatch >
usados em: server cong, virtual host 15 es a arquivos do disco Files - restric o < Files f ilename > ... < /Files >

FilesMatch - aceita express oes regulares < FilesMatch regex > ... < /FilesMatch >

es ao diret Location - restric o orio especicado na URL < LocationURL path|URL > ... < /Location >

LocationMatch - o mesmo, mas aceita express oes regulares < LocationMatch regex > ... < /LocationMatch >
server cong, virtual host

FI

o A t

15 httpd.apache.org/docs/2.2/mod/directive-dict.html#Context

VirtualHost - diretivas se aplicam a um hostname ou IP espec co < VirtualHost addr[: port ] [addr[: port ]] ... > ... < /VirtualHost > server cong

-U

as

ifDefine - diretivas ser ao processadas se o teste for verdadeiro < I f De f ine [!] parameter name > ... < /I f De f ine >
server cong, virtual host, directory, .htaccess ifModule - diretivas ser ao processadas na aus encia ou presenc a de um m odulo espec co < I f Module [!]module name > ... < /I f Module > server cong, virtual host, directory, .htaccess

d so e A
46

server cong, virtual host, directory, .htaccess

In

te

u rn la o

-2

01

Diretiva Options16 Congura que caracter sticas s ao dispon veis em um diret orio particular. Options[+|]option[[+|]option]...
server cong, virtual host, directory (exceto Files), .htaccess All - Tudo exceto MultiViews (default) o de scripts CGI (mod cgi) ExecCGI - Permite a execuc a FollowSymLinks - O servidor seguir a links simb olicos

Indexes - Permite a listagem do diret orio se n ao h a um arquivo especicado pela diretiva DirectoryIndex o de conte Multiviews - Negociac a udo17 : permite o envio de p aginas no idioma requisitado pelo navegador do cliente Includes - Permite includes por mod include18

Prof. Alexander Luz Sperandio

IncludesNOEXEC - Permite includes, mas os comandos #exec e #include de um script CGI s ao desativados seguido apenas se o arquivo alvo tiver SymLinksIfOwnerMatch - link simb olico e o mesmo dono do link

Outras diretivas

AliasURL path f ile path|directory path server cong, virtual host

Allow/Deny

FI

o A t

Allow - lista os hosts que possuem permiss ao para acessar o diret orio

Deny - lista os hosts que n ao possuem permiss ao

16 http://httpd.apache.org/docs/2.0/mod/core.html#options 17 http://httpd.apache.org/docs/2.0/content-negotiation.html 18 http://httpd.apache.org/docs/2.0/mod/mod_include.html

-U

as

Order - Controla o estado de acesso default e a ordem na qual Allow e Deny s ao avaliadas es Order Deny,Allow (default) - avalia o deny antes e ent ao garante as excec o baseadas na diretiva allow es baseadas na Order Allow,Deny - avalia o allow antes e ent ao garante as excec o diretiva deny Mutual Failure - indica que somente os hosts que aparecem na lista allow e n ao aparecem na lista deny possuir ao acesso

d so e A
47

Alias - Mapeia URLs para locais no sitema de arquivos

In

te

u rn la o

-2

01

- Pode ser congurada para None ou uma ou mais de:

15.2

Virtual Hosts

Prof. Alexander Luz Sperandio

Virtual hosts baseados em nome: mais de um web site por IP

Virtual hosts baseados em IP: um enderec o IP pra cada web site


- 196.123.45.1 serve domain1 e domain2 (Name virtual hosting) - 196.123.45.2 serve domain3 na mesma m aquina (IP virtual hosting)
NameVirtualHost 196.123.45.1

<V i r t u a l H o s t 1 9 6 . 1 2 3 . 4 5 . 2 > ServerName www. domain3 . com DocumentRoot / o p t / a p a c h e / h t d o c s /www. domain3 . com / </ V i r t u a l H o s t >

FI

o A t

o deve ser atendida por um servidor web? 1. Que requisic a o do apache. 2. Fornec a o caminho e nome do arquivo principal de congurac a

o do apache, descreva: 4. Sobre os arquivos de congurac a 48

3. Descreva o signicado da linha abaixo e onde ela se encontra.


127.0.0.1 - - [12/Sep/2007:18:22:02 -0300] "GET / HTTP/1.1" 200 44 "-" "Mozilla/5.0 (compatible; Konqueror/3.5; Linux) KHTML/3.5.1 (like Gecko)"

-U

as

16

Exerc cios

In

te

<V i r t u a l H o s t 1 9 6 . 1 2 3 . 4 5 . 1 > ServerName www. domain2 . com DocumentRoot / o p t / a p a c h e / h t d o c s /www. domain2 . com / </ V i r t u a l H o s t >

d so e A

<V i r t u a l H o s t 1 9 6 . 1 2 3 . 4 5 . 1 > ServerName www. domain1 . com DocumentRoot / o p t / a p a c h e / h t d o c s /www. domain1 . com / </ V i r t u a l H o s t >

u rn la o

-2

Virtual Hosts Pr atica de rodar mais de um web site (www.empresa1.com e www.empresa2.com) nica m em uma u aquina.

01

Exemplos: Allow from localhost 192.168.0.1 Deny from all Allow from .net example.edu Allow from 10 172.20 192.168.2 Allow from 10.1.0.0/16 Allow from 10.1.0.0/255.255.0.0

(a) listen.conf (b) uid.conf (c) conf.d (e) vhosts.d 5. Como identicar na sa da do comando netstat, uma linha que conrme a o de um servidor web? execuc a 6. Como testar o funcionamento de um servidor web usando um browser?

Prof. Alexander Luz Sperandio

o do servidor apache, listadas 7. Responda sobre as diretivas de congurac a abaixo: (a) DirectoryIndex (b) DocumentRoot (c) ServerName (d) ServerAdmin (f) User (g) Group

(e) Listen 192.168.0.10:80

o, na congurac o 8. Explique o que puder sobre os exemplos de blocos de sec a a do apache, abaixo:

(c)

FI

o A t

-U

as

(b)

<Files "\.ht"> Order allow,deny Deny from all </Files>

<VirtualHost *:80> ServerAdmin webmaster@dummy-host.example.com ServerName dummy-host.example.com DocumentRoot /srv/www/vhosts/dummy-host.example.com ErrorLog /var/log/apache2/dummy-host.example.com-error_log CustomLog /var/log/apache2/dummy-host.example.com-access_log combined <Directory "/srv/www/vhosts/dummy-host.example.com"> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> </VirtualHost>

In

49

te

(a)

d so e A
Alias /doc "/usr/share/doc/" <Directory /usr/share/doc> Options Indexes FollowSymLinks Order deny,allow deny from all allow from localhost </Directory>

u rn la o

-2

01

(d) default-server.conf

17
17.1

lab1: apache
Objetivos
Conhecer o servidor web apache Entender o funcionamento do servidor web Iniciar/parar o servidor o de p Entender as permiss oes de arquivos para a exibic a aginas

Prof. Alexander Luz Sperandio

Conhecimentos b asicos de Linux o Linux instalada Distribuic a Servidor Web Apache2 instalado

17.3

Iniciando o servidor

1. H a um servidor apache instalado no sistema? Escreva como vericar. 2. Anote a vers ao:

3. Inicialize o servidor. Anote como:

4. Use o comando netstat -na e verique se o servidor web est a funcionando. Anote a linha que conrma isso. 5. Use o comando telnet para testar o servic o. Anote o que deve ser feito. 6. Use um navegador para testar o servic o. Anote o enderec o a ser acessado. Justique o uso desse enderec o.

FI

o A t

8. Como sair do comando tail -f usado anteriormente?

17.4

Entendendo os m odulos

necess Para o pr oximo passo e ario o m odulo userdir. Esse m odulo permite que um usu ario publique p aginas na web a partir de um diret orio public html em seu diret orio de usu ario. o de links simb Para habilitar um m odulo no apache, basta a criac a olicos no diret orio mods-enabled apontando para os m odulos existentes no diret orio mods-available. 50

-U

as

7. Abra um terminal e use o comando tail -f para visualizar o arquivo de log do apache. Copie aqui o comando que o servidor recebe do navegador acessada. quando a p agina inicial e

d so e A

In

te

u rn la o

-2

17.2

Requisitos

01

O script a2enmod pode ser utilizado para habilitar um m odulo no apache, o desse script e criar como mostrado abaixo, executado pelo usu ario root. A func a os links simb olicos necess arios no diret orio mods-enabled.

Usaremos o diret orio /public html, para essa parte do roteiro.

1. Verique as permiss oes desse diret orio com ls -ld /public html/

Prof. Alexander Luz Sperandio

o na web, de um arquivo 2. Quais permiss oes s ao necess arias para a exibic a deste diret orio? Explique. 3. Crie um arquivo index.html nesse diret orio, com o conte udo abaixo e use o enderec o http://localhost/usuario para acess a-lo. <HTML> <H1> Oi, sou uma p agina html!!</H1> </HTML>

4. Anote as permiss oes do arquivo index.html.

o desse arquivo na web? 5. Quais permiss oes s ao necess arias para a exibic a Explique.

18
18.1

lab2: apache
Objetivos

es do servidor Apache Conhecer algumas congurac o

FI

o A t

18.2

o Autorizac a

1. Vamos especicar o acesso ao diret orio /usr/share/doc para localhost e proibir para outros: Alias /doc "/usr/share/doc/" <Directory /usr/share/doc> Options Indexes FollowSymLinks Order deny,allow 51

-U

as

o e autenticac o Congurar autorizac a a Congurar virtual hosts

d so e A

In

te

u rn la o

-2

01

17.5

Entendendo as permiss oes

# a2enmod userdir

O item Alias dene um nome, atrav es do qual ser a acessada a p agina no diret orio na sequ encia (entre aspas). Dessa forma pode-se usar o enderec o http://localhost/doc/ para acessar o diret orio /usr/share/doc. es dispon As opc o veis no item Options e o item Order est ao no item 12.6 do focalinux avanc ado.

Prof. Alexander Luz Sperandio

o afetar Directory A restric a a o diret orio no disco especicado, conseq uentemente a p agina armazenada nele. Por exemplo: <Directory /var/www> Order deny,allow deny from all allow from 10.1.0.1 <Directory>

Au
In
52

2. Para permitir o acesso a outros pode-se inserir enderec os no item allow

3. Fac a um teste com o IP do seu vizinho e veja se ele consegue acessar as o na sua m p aginas de documentac a aquina

18.3

o Autenticac a

ta

No

FI A

o e preciso criar um arquivo de senhas. O comando htpasswd 1. Na autenticac a usado para isso. e usada 2. Para criar um arquivo com o nome senhaspara o usuario aluno, e a sintaxe: htpasswd -c -m senhas aluno note que o arquivo senhas precisa ter permiss ao de leitura para o usu ario que roda o apache;

Us o

de

allow from localhost 10.1.1.

te

allow from localhost 10.1.1.8

# permite acesso ao localhost e a m aquina com esse IP # permite acesso a localhost e a todas as m aquinas com IP 10.1.1.*

rn

O acesso ao diret orio /var/www ser a permitido somente ao computador com o enderec o IP 10.1.0.1.

la

20 11

deny from all allow from localhost </Directory>

Alias /doc "/usr/share/doc/" <Directory /usr/share/doc> Options Indexes FollowSymLinks AuthName "Acesso a documentac ao" AuthType basic AuthUserFile /etc/httpd/senhas Require valid-user </Directory>

Prof. Alexander Luz Sperandio

5. Teste agora o acesso a p agina

Alias /doc "/usr/share/doc/"

o acima permite o acesso sem senha para localhost e com A congurac a senha para outros IPs. Teste com o seu vizinho. o pode ser usada para a criac o de intranets, permitindo o Essa congurac a a acesso de fora para certos usu arios.

ta

18.4

o de hosts virtuais: 1. Congurac a um recurso que permite servir mais de um Virtual Hosts (sites virtuais) e site no mesmo servidor. Vamos testar o m etodo baseado em nome com um o: exemplo de um dominio para a nossa documentac a 53

FI A

No

Virtual Hosts

Us o

de

<Directory /usr/share/doc> Options Indexes MultiViews Order deny,allow deny from all allow from localhost AuthName "Acesso aos docs" AuthType basic AuthUserFile /etc/httpd/senhas require valid-user require user aluno satisfy any </Directory>

Au
In

te

rn

la

poss o e autenticac o juntas, 6. E vel usar a autorizac a a

4. Crie o arquivo senhas no diret orio /var/www e d e permiss ao para todos lerem (ao inv es disso pode-se mudar o dono e grupo do arquivo para o usu ario e grupo que rodam o apache e dar permiss ao de leitura somente a esses)

20 11

3. Modique o acesso ao diretorio /doc para o exemplo abaixo:

o de nomes. 2. Adicione o nome empresa ao arquivo /etc/hosts para a resoluc a

Prof. Alexander Luz Sperandio

4. Monitore o arquivo de log - use o comando tail -f arquivo - e acesse a p agina a partir do seu micro.

19

lab: DNS e apache

1. Vamos criar o dom nio seunome.sobrenome. Anote o dom nio criado: 2. Comece adicionando sua zona ao nal do arquivo named.conf
zone "seunome.seusobrenome" { type master; file "db.seunome"; };

FI

o A t

$TTL 3D @ IN SOA ns.seunome.sobrenome. root.seunome.sobrenome. ( 200609181 3H 15M 1W 1D ) NS ns.seunome.sobrenome. localhost A 127.0.0.1 ns A 10.1.1.7 www CNAME ns www2 A 10.1.1.7

es da zona 5. Edite tamb em o arquivo db.seunome.rev, para as congurac o reversa

-U

as

zone "1.1.10.in-addr.arpa" { type master; file "db.seunome.rev"; };

es da zona 4. Agora edite o arquivo db.seunome, para as congurac o

In

3. Adicione tamb em a zona reversa

d so e A
54

te

u rn la o

5. Pec a ao vizinho para acessar sua p agina e observe o arquivo de log.

-2

3. Crie o diret orio empresa no diret orio /var/log/apache - ou no diret orio o - e crie os arquivos access.log e error.log de log usado na sua distribuc a nesse diret orio - use o comando touch;

01

NameVirtualHost * <VirtualHost *> ServerName empresa.meudominio.org DocumentRoot /usr/share/doc TransferLog /var/log/apache/empresa/access.log ErrorLog /var/log/apache/empresa/error.log </VirtualHost>

$TTL 3D @ IN SOA ns.seunome.sobrenome. root.seunome.sobrenome. ( 200609181 3H 15M 1W 1D ) NS ns.seunome.sobrenome. 7 PTR ns.seunome.sobrenome.

6. Reinicie named e d e uma olhada nos logs es. Escreva como ele seria utilizado. 7. Use o dig para testar suas congurac o

(a) Escreva o conte udo de um dos arquivos.

Prof. Alexander Luz Sperandio

(b) Em que diret orio os arquivos devem ser colocados?

(c) Vc consegue encontrar os sites usando o navegador? Se sim, qual o foi necess congurac a aria, al em do servidor named?

20

Refer encias

Refer encias

[3] Silva, G.M. Guia Foca GNU/Linux. Dispon vel em: http://focalinux. cipsga.org.br/guia/avancado/ch-s-apache.htm. Acesso em: 21 jul. 2006.

FI

o A t

rewall - iptables
21.1

um rewall? O que e proteger a m Objetivo e aquina contra acessos indesejados 55

21

O Firewall
o Introduc a

-U

as

Parte VI

In

te

[2] The Apache Software Foundation. Apache HTTP Server Version 2.0 Documentation. Dispon vel em: http://httpd.apache.org/docs/2.0/. Acesso em: 21 jul. 2006.

d so e A

[1] Sheer, P. LINUX: Rute Users Tutorial and Exposition (Version 1.0.0). Dispon vel em: http://packages.debian.org/stable/doc/rutebook. Acesso em: 21 jul. 2006.cap.36.

u rn la o

-2

8. Crie dois Virtual Hosts baseados em nome (Name Virtual Hosts) em seu o de named e responda as quest servidor Apache usando sua congurac a oes abaixo:

01

Impedir conex oes vindas da Internet para sua rede local NAT

Proteger servic os que estejam rodando na m aquina

Prof. Alexander Luz Sperandio

21.2

iptables

uma estrutura de tabelas para o estabelecimento de regras. iptables e es (iptables Cada regra em uma tabela consiste de um n umero de comparac o o relativa as comparac es (iptables target)[?]. matches) e uma ac a o

o A t

Linux 2.4.x and 2.6.x kernel em diante Dividido em duas partes: Ferramentas em espac o de usu ario (iptables) M odulos do kernel (netlter) o dos m para a compilac a odulos:
Networking support -> Netorking options -> Network packet filtering framework

FI

-U

as

2010-Ago-06: iptables-1.4.9.1 .rpm, .deb, .tgz, .tar.gz

d so e A
56

In

te

u rn la o

-2

01

22
22.1
22.1.1

Conceitos b asicos
regras, chains e tabelas
Regras

bloquear (DROP) rejeitar (REJECT) aceitar (ACCEPT) registrar (LOG)

Prof. Alexander Luz Sperandio

...

, em mem regras s ao armazenadas no kernel, isto e oria iptables -A INPUT -s 123.123.123.1 -j DROP 22.1.2 Chains - listas de regras

locais onde as regras do rewall denidas pelo usu ario s ao armazenadas para operac ao do rewall Existem dois tipos de chains:

embutidos, ex.: INPUT, OUTPUT e FORWARD

os nomes dos chains s ao case-sensitive 22.1.3 Tabelas

o A t

a tabela padr filter - Esta e ao nat - Usada para dados que geram outra conex ao (masquerading, source nat, destination nat, port forwarding, proxy transparente s ao alguns exemplos) es especiais de pacotes (como modi mangle - Utilizada para alterac o car o tipo de servic o (TOS), TTL ou MARK)

FI

-U

as

s ao locais usados para armazenar as chains e conjunto de regras com uma determinada caracter stica em comum existem 3 tabelas dispon veis no iptables:

In

57

te

criados pelo usu ario

d so e A

u rn la o

-2

01

s ao comandos passados ao iptables para que ele realize uma determinada o ac a

22.1.4

Tabelas cont em chains

Tabela lter - Cont em 3 chains: INPUT - Consultado para dados que chegam a m aquina OUTPUT - Consultado para dados que saem da m aquina

FORWARD - Consultado para dados que s ao redirecionados para outra interface de rede ou outra m aquina Tabela nat Network Address Translation - Cont em 3 chains:

Prof. Alexander Luz Sperandio

OUTPUT - Consultado quando os pacotes gerados localmente precisam ser consultado para modicados antes de serem roteados. Este chain somente e conex oes que se originam de IPs de interfaces locais.

Tabela mangle - Cont em 5 chains, consultadas quando:

INPUT - os pacotes precisam ser modicados antes de serem enviados para o chain INPUT da tabela lter

FI

o A t

PREROUTING - os pacotes precisam ser modicados antes de ser enviados para o chain PREROUTING da tabela nat POSTROUTING - os pacotes precisam ser modicados antes de serem enviados para o chain POSTROUTING da tabela nat OUTPUT - os pacotes precisam ser modicados antes de serem enviados para o chain OUTPUT da tabela nat

-U

as

FORWARD - os pacotes precisam ser modicados antes de serem enviados para o chain FORWARD da tabela lter

d so e A
58

POSTROUTING - Consultado quando os pacotes precisam ser modicados o chain ideal para realizac o de SNAT e ap os o tratamento de roteamento. E a IP Masquerading

In

te

u rn la o

PREROUTING - Consultado quando os pacotes precisam ser modicados logo o chain ideal para realizac o de DNAT e redirecionamento que chegam. E a de portas

-2

01

Atravessando as tabelas

Prof. Alexander Luz Sperandio

Um pacote chega da rede para a primeira decis ao de roteamento: antes da decis ao de roteamento: pode ter enderec o de destino mudado na chain PREROUTING (DNAT); depois segue para a decis ao de roteamento; destinado para a m se n ao e aquina local FORWARD (lter) destinada para a m se e aquina local INPUT (lter)

Um pacote tem origem na m aquina local:


a partir de um processo local;

FI

o A t

xo; SNAT (Source NAT) - utilizado quando o IP da interface de sa da e din MASQUERADE - utilizado quando o IP da interface de sa da e amico;

23

23.1

lab1: iptables
Objetivos

Aprender a utilizar o comando iptables 59

-U

as

passa pela tabela lter OUTPUT; roteado para a Internet: depois da decis ao de roteamento, se o pacote e tem o enderec o de origem mudado na chain POSTROUTING (SNAT OU MASQUERADE)

In

te

DNAT (Destination NAT) - utilizado para mudar IP de destino e/ou porta, para direcionar o pacote para um servidor interno;

d so e A

u rn la o

-2

01

23.2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Atividade

1. O script abaixo limpa todas as regras na mem oria

# ! / bin / sh # i p t a b l e s f l u s h . sh # h t t p : / / i p t a b l e s t u t o r i a l . f r o z e n t u x . n e t / s c r i p t s / r c . f l u s h i p t a b l e s . t x t IPTABLES= / s b i n / i p t a b l e s # c o n f i g u r a a s p o l i t i c a s p a d r a o p a r a ACCEPT $IPTABLES P INPUT ACCEPT $IPTABLES P OUTPUT ACCEPT $IPTABLES P FORWARD ACCEPT $IPTABLES t n a t P PREROUTING ACCEPT $IPTABLES t n a t P POSTROUTING ACCEPT $IPTABLES t n a t P OUTPUT ACCEPT $IPTABLES $IPTABLES $IPTABLES $IPTABLES $IPTABLES t t t t t mangle mangle mangle mangle mangle P P P P P PREROUTING ACCEPT POSTROUTING ACCEPT INPUT ACCEPT OUTPUT ACCEPT FORWARD ACCEPT

Prof. Alexander Luz Sperandio

Au
In
60

ta

iptables -P INPUT DROP iptables -P OUTPUT DROP iptables -P FORWARD DROP

3. Tente um ping em localhost 4. Liberando o loopback - V arios programas precisam do acesso a interface lo - loopback

FI A

No

Us o

de

2. Denindo as pol ticas:

iptables [-t tabela] [-P chain] [ACCEPT/DROP] - A pol tica padr ao determina o que acontecer a com um pacote quando ele chegar ao nal das regras contidas em um chain

te

# apaga a s c h a i n s nao p a d r a o $IPTABLES X $IPTABLES t n a t X $IPTABLES t mangle X

rn

# limpa as r e g r a s e t o d a s as t a b e l a s $IPTABLES F $IPTABLES t n a t F $IPTABLES t mangle F

la

20 11

Construir um rewall utilizando o comando iptables

iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT 5. Estados dos pacotes (m odulo ip conntrack) - Nessas regras s ao permitidos os pacotes estabelecidos e relacionados a conex oes geradas de nossa pr opria m aquina. NEW - Confere com pacotes que criam novas conex oes ESTABLISHED - Confere com conex oes j a estabelecidas

Prof. Alexander Luz Sperandio

INVALID - Confere com pacotes que n ao puderam ser identicados por algum motivo. Como respostas de conex oes desconhecidas. iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT 6. Navegar:

23.3

Salvando as regras da mem oria

# iptables-save > meufirewall.txt

o A t

FI

O script do rewall deve se executado automaticamente sempre que o sistema e iniciado, assim as regras do rewall s ao carregadas na mem oria e passam a proteger a m aquina e a rede por tr as dela.

24

o do script do rewall Ativac a

-U

as

O comando iptables-restore recebe como entrada um arquivo com as regras salvas pelo comando iptables-save e restaura essas regras na mem oria. Usamos o redirecionamento para entrada, nesse caso: # iptables-restore < meufirewall.txt

In

utilizado para copiar as regras da mem O comando iptables-save e oria para a sa da padr ao (tela). Essa sa da pode ser redirecionada para um arquivo, como mostrado abaixo:

d so e A
61

iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

te

u rn la o

-2

RELATED - Confere com pacotes relacionados indiretamente a uma conex ao, como mensagens de erro icmp, etc.

01

24.1

o do script - Debian Ativac a

Prof. Alexander Luz Sperandio

24.2

o do script - outras distribuic es Ativac a o

Refer encias

FI

o A t

[3] Russell, R. Linux 2.4 Packet Filtering HOWTO. Dispon vel em: http://www.netfilter.org/documentation/HOWTO/pt/ packet-filtering-HOWTO.html. Acesso em: 22 out. 2006.

-U

as

[2] Silva, G.M. Guia Foca GNU/Linux. Dispon vel em: http://focalinux. cipsga.org.br/guia/avancado/ch-fw-iptables.html. Acesso em: 21 out. 2006.

In

[1] Andreasson, O. Iptables Tutorial 1.2.1. Dispon vel em: http: //iptables-tutorial.frozentux.net/iptables-tutorial.html. Acesso em: 22 out. 2006.

d so e A
62

o do script do O arquivo /etc/rc.local pode ser utilizado para a execuc a usado para executar os u ltimos comandos, denidos pelo rewall. Esse arquivo e o de todos os servic o. administrador, ap os a inicializac a os do runlevel em utilizac a es do GNU/Linux possuem esse arquivo, inclusive a distribuiac o Todas as distribuic o a Debian;

te

u rn la o

-2

# arquivo /etc/network/interfaces auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp pre-up /etc/fwbuilder/firewall.fw $IFACE $IF_ADDRESS

01

o Debian e suas derivadas t A distribuic a em uma facilidade para rodar o script o de rede. do rewall de dentro do arquivo de congurac a o pre-up e capaz de rodar o script do rewall a partir do arquivo A opc a /etc/network/interfaces. o roda o comando informado logo que a interface de rede e ativada. Essa opc a Se o comando falha a interface permanece desativada. Dessa forma, a interface n ao ativada sem um rewall. e

Parte VII

ssh
25
25.1

SSH - Secure Shell


o Introduc a
um programa para a conex ssh (SSH client) e ao em m aquinas remotas

Fornece conex ao segura (encriptada) entre dois hosts em uma rede insegura Conex oes X11 podem ser utilizadas no canal seguro Exemplos: ssh user@hostname scp user@hostname:arquivo . scp arquivo user@hostname:.

Prof. Alexander Luz Sperandio

25.2

o M etodos de autenticac a

o do teclado Interac a pedida pelo teclado A senha e o por chave p Autenticac a ublica

o das chaves Gerac a

ssh-keygen -t rsa (para o algoritmo RSA)

o A t

ssh-keygen -t dsa (para o algoritmo DSA)

S ao gerados os arquivos id rsa id rsa.pub

FI

Adicionar a chave p ublica (arquivo .pub) no arquivo: $HOME/.ssh/authorized keys do servidor 63

-U

as

O comando abaixo gera as duas chaves:

In

Servidor verica se a chave privada fornecida bate com a chave publica em: $HOME/.ssh/authorized keys

te

Cliente usa sua chave privada (algoritmo RSA ou DSA) $HOME/.ssh/id dsa ou $HOME/.ssh/id rsa

d so e A

u rn la o

-2

01

25.3

o do cliente Congurac a

es de linha de comando (man ssh) Opc o -X habilita X11Forward -p porta do servidor ssh o por host (man ssh cong) Arquivo de congurac a /etc/ssh/ssh config (global) $HOME/.ssh/config (por usu ario)

Prof. Alexander Luz Sperandio

$ cat / . ssh / config Host c l i e n t e 1 HostName s i t e f a m o s o . com . b r P o r t 9022 U s e r sadm I d e n t i t y F i l e / . ssh / idsadm $ ssh c l i e n t e 1

25.4

o do servidor Congurac a

26

tcp wrappers

A seguranc a pode ser feita pelos arquivos: /etc/hosts.allow /etc/hosts.deny

FI

o A t

es man hosts access, para mais informac o

-U

as

compilado com suporte a tcp wrappers O daemon sshd e

In

/etc/init.d/ssh start (daemon)

d so e A
64

te

Arquivo /etc/ssh/sshd config (man sshd cong) Port 22 ListenAddress 0.0.0.0 PermitRootLogin no X11Forwarding yes AllowUsers aluno user@host

u rn la o

-2

01

Parte VIII

postx
27
27.1

email
o Introduc a

Sistemas de correio

Prof. Alexander Luz Sperandio

MTA - Mail Transport Agent: envia e recebe emails via SMTP (o servidor de emails) ex.: sendmail, exim, qmail, postx, ...

agente de acesso: conecta o MUA ao local de armazenamento de mensagens servidores IMAP ou POP (ipopd): courier, cyrus

27.2
Postx

Postx

Composto de v arios pequenos processos cooperativos

o A t

es do servidor /etc/postfix/main.cf - congurac o es padr man 5 postconf mostra os par ametros e suas congurac o ao /etc/postfix/master.cf - descreve como um daemon do postx deve rodar

Par ametros de main.cf myhostname = foo.dominio.com.br


FQDN19 do host
Qualied Domain Name - Nome de Dom nio Completamente Qualicado

FI

19 Fully

-U

as

nico processo e respons diferente da arquitetura do sendmail onde um u avel por tudo

o: Arquivos de congurac a

In

es (.rpm, .deb, .tgz) Encontrado nas distribuic o

65

te

http://www.postfix.org/

d so e A

u rn la o

MDA - Mail Delivery Agent: deixa as mensagens recebidas em armazenamento local ex.: fetchmail, procmail, ...

-2

MUA - Mail User Agent: permite ao usu ario ler e compor mensagens ex.: evolution, Thunderbird, pine, mutt, ...

01

mydomain = dominio.com.br mydestination = $myhostname, localhost , destino nal das nomes de dom nios que devem ser tratados como local, isto e mensagens mynetworks = 127.0.0.1/8 192.168.0.0/24 redes ou IPs em que o postx ir a aceitar relay inet interfaces = all seleciona as interfaces onde o postx ir a esperar por conex oes

Prof. Alexander Luz Sperandio

Utilit arios postx - inicia e para o sistema de correio

postconf - exibe ou altera o valor de par ametros de main.cf postqueue - controle das las postsuper - gerencia as las

postdrop, postmap, postalias, postkick, postlock e postlog

27.3

Servidor POP

Servidor POP

O pacote imap fornece os servic os POP e IMAP

FI

o A t

# a r q u i v o / e t c / x i n e t d . d / imap ... s e r v i c e pop3 { disable = no ... server = / usr / sbin / ipop3d }

-U

as

Iniciado via o daemon xinetd edite /etc/xinetd.d/imap e reinicie xinetd para iniciar o servic o

d so e A
66

postcat - lista o conte udo de arquivos na la

In

te

u rn la o

-2

repetido mais de uma vez no arquivo, somente a u ltima Quando um par ametro e v vez e alida. A ordem dos par ametros no arquivo main.cf n ao importa.

01

Squirrelmail http://www.squirrelmail.org/ iniciar imap server via xinetd criar arquivo /etc/cram-md5.pwd congurar squirrelmail
# cd / s r v / www / h t d o c s / s q u i r r e l m a i l # . / configure

Prof. Alexander Luz Sperandio

http://localhost/squirrelmail

28
28.1

lab: Servidor de email postx


Objetivo
- Congurar o Postx - servidor de email

o da 1 - Devemos incluir nosso servidor de email no arquivo de congurac a zona seunome.sobrenome.: $TTL 3D @ IN SOA ns.seunome.sobrenome. root.seunome.sobrenome. ( 200609181 3H 15M 1W 1D ) NS ns.seunome.sobrenome. MX 5 mail.seunome.sobrenome. ns A 10.1.1.7 mail A 10.1.1.7 2 - reinicie named e teste se o DNS responde corretamente: dig mx seunome.sobrenome.

ta

FI A

No

Us o

de

In
67

28.3

o do DNS Congurac a

te

Nessa atividade vamos congurar o registro MX de um dom nio, procurado pelos servidores de email para o envio de mensagens, e congurar o servidor de email postx.

rn

28.2

Atividade

Au

la

20 11

27.4

webmail

28.4

o do sistema Congurac a

1 - Edite o arquivo /etc/mailname e substitua seu conte udo com o nome do seu dom nio. Esse ser a a origem dos emails enviados por essa m aquina. seunome.sobrenome 2 - Agora utilize o comando hostname para mudar o nome do host: # hostname mail

28.5

o do postx Congurac a

Prof. Alexander Luz Sperandio

es abaixo: 1 - Edite o arquivo /etc/postfix/main.cf e altere as congurac o myhostname = mail.seunome.sobrenome mydomain = seunome.sobrenome

mydestination = $myhostname, $mydomain, localhost, localhot.$mydomain inet interfaces = 127.0.0.1, 10.1.1.7

relay transport = smtp 2 - Reinicie o postx

# /etc/init.d/postfix restart

> ls / | mail -s "Teste do postfix" aluno@seunome.sobrenome

FI

o A t

q - sair

h - listar os emails

20 O

r - replay (utilize Ctrl+D para nalizar) d 1 3 - deleta os emails 1 e 3


pacote mailx deve estar instalado.

-U

as

Digite mail para ver o email recebido. Alguns dos comandos aceitos s ao:

n - mostra email com n umero n

In

3 - Use o comando mail para testar o postx 20

d so e A
68

default transport = smtp

te

u rn la o

-2

01

Parte IX

squid
29
29.1

Conhecendo o squid
o Introduc a

o Squid? O que e Servidor web proxy cache. ` internet. An alise de tr afego de acesso a

Prof. Alexander Luz Sperandio

o de acesso por ACLs (Access Control List). Restric a Desempenho e Estabilidade. Economia de Banda. proxy? O que e

Prov e um interc ambio entre os computadores da rede interna e a internet.

Controle de Servic o. cache? O que e

Dispositivo de acesso r apido.

FI

o A t

sarg gera relat orios baseados nos logs de acesso do squid. (access.log).

29.3

o Arquivo de congurac a

/etc/squid/squid.conf visible hostname MAQXX

http port 3128

-U

as

29.2

Daemons e Utilit arios

o e gerenciamento do proxy e cache. squid respons avel pela execuc a

In

Armazenamento moment aneo de conte udo.

d so e A
69

Isolamento de Redes.

te

u rn la o

-2

01

icp port 3130 cache mem 8 MB # default

cache peer ip servidor parent 3128 3130 no-digest no-netdb-exchange

30
30.1

ACLs - Access Control Lists


o Introduc a
Para que serve?

Prof. Alexander Luz Sperandio

Onde eu uso isso? Como funciona?

tag acl ACL por IP (src)

ACL de bloqueio de url (dstdomain)

ACL de bloqueio por palavra-chave (url regex -i) tag http access M etodo de bloqueio seletivo

http access deny sites proibidos

FI

o A t

tag http access o seletiva M etodo de liberac a

http access deny all http access allow ips livres

http access allow user auth

-U

as

http access deny sites porno !nao porno

http access allow all

d so e A
70

o (proxy auth) ACL por Autenticac a

In

te

u rn la o

30.2

o tags de congurac a

-2

01

cache dir aufs /var/spool/squid 100 16 256

30.3

o Autenticac a

30.4

o de usu Criac a arios

Prof. Alexander Luz Sperandio

htpasswd -c /etc/squid/passwd primeiro usuario Cria o arquivo de senhas do squid.

31
31.1

Relat orios com sarg

o e o comando sarg Congurac a

/etc/squid/sarg.conf

output dir /www/docs/relatorios/

access log /var/log/squid/access.log

resolve ip yes

FI

o A t

o do sarg Utilizac a O comando crontab pode ser usado para rodar o comando sarg diariamente:
# m i n u t o h o r a d i a mes d i a d a s e m a n a comando 0 12 15 / u s r / b i n / s a r g && e c h o > / v a r / l o g / s q u i d / a c c e s s . l o g

O comando indicado ser a executado as 12:00, qualquer dia de qualquer m es, de segunda (1) a sexta (5)

-U

as

report type topsites users sites sites users date time denied auth failures site user time date

In

language Portuguese

d so e A
71

te

u rn la o

htpasswd /etc/squid/passwd outro user Adiciona outro usu ario a lista de senhas do squid.

-2

01

# A u t e n t i c a c a o dos U s u a r i o s ( Squid ) # usando n c s a a u t h # L e i a d o c u m e n t a c a o em / u s r / s h a r e / doc / s q u i d auth param b a s i c realm Squid a u t h p a r a m b a s i c p r o g r a m / u s r / l i b / s q u i d / n c s a a u t h / e t c / s q u i d / passwd auth param basic c h i l d r e n 5 auth param b a s i c realm D i g i t e sua senha auth param basic c r e d e n t i a l s t t l 2 hours auth param basic c a s e s e n s i t i v e off a c l a u t e n t i c a d o s p r o x y a u t h REQUIRED h t t p a c c e s s allow a u t e n t i c a d o s

32
32.1

lab: squid
Limpeza do arquivo squid.conf

Obtemos o arquivo sem coment arios e espac os em branco, como o exemplo abaixo:
h i e r a r c h y s t o p l i s t c g i b i n ? a c l QUERY u r l p a t h r e g e x c g i b i n \ ? n o c a c h e deny QUERY h os t s f il e / etc / hosts 1440 20% 10080 refresh pattern ftp : r e f r e s h p a t t e r n gopher : 1440 0% 1440 refresh pattern . 0 20% 4320 acl all src 0.0.0.0/0.0.0.0 a c l manager p r o t o c a c h e o b j e c t acl localhost src 127.0.0.1/255.255.255.255 acl to localhost dst 127.0.0.0/8 a c l S S L p o r t s p o r t 443 563 # h t t p s , snews a c l S S L p o r t s p o r t 873 # rsync a c l S a f e p o r t s p o r t 80 # http # ftp a c l S a f e p o r t s p o r t 21 a c l S a f e p o r t s p o r t 443 563 # h t t p s , snews a c l S a f e p o r t s p o r t 70 # gopher a c l S a f e p o r t s p o r t 210 # wais a c l S a f e p o r t s p o r t 1025 65535 # u n r e g i s t e r e d p o r t s a c l S a f e p o r t s p o r t 280 # h t t p mgmt # g s s h t t p a c l S a f e p o r t s p o r t 488 a c l S a f e p o r t s p o r t 591 # filemaker a c l S a f e p o r t s p o r t 777 # multiling http a c l S a f e p o r t s p o r t 631 # cups a c l S a f e p o r t s p o r t 873 # rsync # SWAT a c l S a f e p o r t s p o r t 901 a c l p u r g e method PURGE a c l CONNECT method CONNECT h t t p a c c e s s a l l o w manager l o c a l h o s t h t t p a c c e s s deny manager h t t p a c c e s s allow purge l o c a l h o s t h t t p a c c e s s deny p u r g e h t t p a c c e s s deny ! S a f e p o r t s h t t p a c c e s s deny CONNECT ! S S L p o r t s acl our networks src 172.20.0.0/24 192.168.2.0/24 127.0.0.1 h t t p a c c e s s allow our networks h t t p a c c e s s deny a l l h t t p r e p l y a c c e s s allow a l l i c p a c c e s s allow a l l coredump dir / var / spool / squid # P a r a o u s o do p r o x y c a c h e p e e r 1 9 2 . 1 6 8 . 6 0 . 8 p a r e n t 3128 3130 no q u e r y

Prof. Alexander Luz Sperandio

FI

o A t

32.2

Clientes com acesso ao proxy


72

-U

as

d so e A

In

te

u rn la o

-2

01

$ g r e p v # s q u i d . c o n f . o r i g | g r e p v $ > s q u i d . c o n f

renomeie o arquivo squid.conf para squid.conf.orig e utilize o comando abaixo:

Dena as redes que podem acessar o servidor proxy e negue o acesso a todas as outras
acl our networks src 172.20.0.0/24 192.168.2.0/24 127.0.0.1 h t t p a c c e s s allow our networks h t t p a c c e s s deny a l l

32.3

Bloqueio de sites

1. Vamos inserir duas novas ACLs (Access Control Lists)


a c l bl oqu ea dos u r l r e g e x i / e t c / s q u i d / block . t x t a c l naobloqueados u r l r e g e x i / e t c / s q u i d / unblock . t x t

Prof. Alexander Luz Sperandio

2. Adicionar uma linha http access para negar o acesso a primeira acl e permitir o) o acesso a segunda (usando ! para negac a
h t t p a c c e s s deny b l o q u e a d o s ! n a o b l o q u e a d o s

3. Criar os arquivos block.txt e unblock.txt com palavras que ser ao proibidas es, respectivamente, uma por linha. e excec o Ex.: proibir a palavra yahoo em block.txt e permitir yahoogroups em unblock.txt.

Parte X

33.1

o Introduc a

o A t

servic os: portmap e nfs comandos: mount, umount arquivos: /etc/exports, /etc/fstab

FI

-U

as

permite o compartilhamento de sistemas de arquivos Servic os, arquivos e comandos relacionados:

In

33

NFS - Network File System

73

te

NFS

d so e A

u rn la o

-2

01

33.2

O servidor NFS

o do servidor Congurac a

ro - read only

Prof. Alexander Luz Sperandio

/etc/init.d/portmap start /etc/init.d/nfsserver start

33.3

Montagem do sistema de arquivos via NFS

o do cliente Congurac a

mount servidor:/diretorio /mnt (root) /etc/fstab


# / etc / fstab s e r v e r : / pub

rsize - n umero de bytes usados na leitura de arquivos wsize - n umero de bytes usados na escrita de arquivos es em d timeo - tempo limite para requisic o ecimos de segundo

FI

o A t

es man nfs para mais informac o

-U

as

es bloqueadas intr - permite aos usu arios interromperem as operac o (fazendo com que retorne um erro)

d so e A
/ mnt nfs

r s i z e =8192 , w s i z e =8192 , t i m e o =14 , i n t r

In

74

te

u rn la o

-2

es de gravac o de maneira assincrona. Mel async - processa solicitac o a o, mas possibilita a perda de dados no hora o desempenho na gravac a caso de queda.

01

# / etc / exports # / pub 1 0 . 1 . 1 . 0 / 2 4 ( ro , a s y n c ) L01Micro07 ( rw , s y n c )

/etc/exports

33.4

tcp wrappers

/etc/hosts.deny nega o acesso a servic os

/etc/hosts.allow permite o acesso a servic os


# / etc / hosts . access portmap : 1 0 . 1 . 1 . 0 / 2 4

es man hosts access para mais informac o

Prof. Alexander Luz Sperandio

Parte XI

34
34.1

Conhecendo o Samba
o Introduc a

o Samba? O que e

UNIX, Linux, IBM System 390, OpenVMS e outros sistemas operacionais

Cliente de uma rede Windows Servidor de dom nio para clientes Windows Controle de acesso em n vel de usu ario

FI

o A t

Servidor de impress ao para redes Windows Servidor WINS etc.

-U

as

Como posso usar o Samba?

In

Protocolo SMB (Server Message Block) ou CIFS (Common Internet File System)

75

te

Servidor e conjunto de ferramentas para Unix para conversar com redes Windows

d so e A

u rn la o

samba

-2

01

# / e t c / h o s t s . deny ALL : ALL

34.2

Daemons

O servidor Samba consiste essencialmente em dois ou tr es daemons:

membro de um dom winbindd - utilizado quando Samba e nio Windows.

34.3

Programas utilit arios

Prof. Alexander Luz Sperandio

o para acesso a recursos de uma m smbclient - ferramenta de navegac a aquina SMB remota; possui interface similar a de um cliente FTP; smbmount, smbumount - monta/desmonta um compartilhamento de uma m aquina SMB remota; testparm - faz a checagem do arquivo smb.conf;

smbpasswd - cria os usu arios samba na m aquina Linux;

smbtree - similar ao ambiente de rede do windows, em modo texto; swat SWAT

o do Samba Interface WEB para facilitar a congurac a Necessita do servidor WEB

Acess vel em: http://localhost:901/

35.1

O arquivo smb.conf

FI

o A t

/etc/samba/smb.conf 21

> /usr/sbin/smbd -b | grep smb.conf CONFIGFILE: /etc/samba/smb.conf

21 smbd

a mesma dos arquivos .ini desde Windows3.1 Sintaxe e


-b mostra os par ametros com os quais o samba foi compilado (ver man smbd)

-U

as

35

Congurando o Samba

d so e A
76

In

te

u rn la o

-2

01

o smbd - respons avel pelo compartilhamento de arquivos e impressoras, autenticac a o para clientes SMB; e autorizac a

nmbd - suporta o servic o de nomes NetBIOS e WINS. Participa no mecan o de rede; ismo de navegac a

es s nomes de sec o ao colocados entre colchetes ( [ ] ) a sec o principal de congurac o Ex.: [global ] e a a o cont es na forma: chave = valor cada sec a em congurac o Ex.: workgroup = meugrupo dene o grupo de trabalho onde o servidor samba estar a inserido. smb.conf
[global] workgroup = home netbios name = linux [share] path = /tmp comment = Arquivos [homes] guest ok = no read only = no

Prof. Alexander Luz Sperandio

o global Sec a

workgroup - O grupo de trabalho ao qual pertence essa m aquina

o de compartilhamento share Sec a

o de compartilhamento homes Sec a

FI

o A t

35.2

o de um PDC Congurac a

es para um PDC Modicac o ltimo arquivo de congurac o para obtermos um PDC. Uma Vamos modicar o u a m aquina Windows NT Server.

PDC

-U

as

guest ok - usu ario guest conecta sem senha. read only - se somente para leitura.

In

comment - Coment ario sobre o compartilhamento

77

te

path - Diret orio do Unix a ser compartilhado

d so e A

netbios name - Nome da m aquina na rede SMB

u rn la o

Palavras-chave

-2

01

o global Sec a
announce as = NT Server security = user domain master = yes prefered master = yes

o com algumas vantagens para ser prefered master - Forc a uma eleic a eleito sempre como o controlador de dom nio

Prof. Alexander Luz Sperandio

o de contas de m Criac a aquinas arquivo /etc/passwd

useradd -g domainmac -c Maquina de Dominio -s /bin/false -d /dev/null master$ arquivo /etc/samba/smbpasswd smbpasswd -m -a master

o das contas de m Criac a aquina automaticamente o global do arquivo smb.conf: Por, na sec a

FI

o A t

o de scripts de logon Criac a


[global] domain logons = yes logon script = logon.cmd logon drive = H:

Palavras-chave domain logons - ativa o recurso de logon scripts do samba 78

-U

as

add machine script = useradd -g domainmac -c Maquina de Dominio -s /bin/false -d /dev/null %u

d so e A

In

te

u rn la o

Contas de m aquinas de dom nio Uma conta de m aquina de dom nio garante que nenhum outro computador possa utilizar o mesmo nome de uma m aquina con avel e assim utilizar os compartilhamentos que ela tem permiss ao.

-2

announce as - Seleciona o nome com o qual o samba (nmbd) se anunciar a na lista de pesquisa de rede

01

Palavras-chave

o script que ser logon script - e a executado na m aquina cliente quando zer o logon logon drive - unidade de disco que ter a o homedir do usu ario mapeado. M aquinas NT/2000/XP

o de scripts de logon Criac a


[netlogon] path = /pub/samba/netlogon read only = yes write list = ntadmin

Prof. Alexander Luz Sperandio

Palavras-chave

http://focalinux.cipsga.org.br/ avanc ado - cap. 18

man pages

FI

o A t

37.1

Objetivos

Utilizar as ferramentas do pacote samba o b Utilizar uma congurac a asica do arquivo smb.conf Congurar um controlador de dom nio

-U

as

37

lab: samba

In

pacote samba-doc SAMBA Developers Guide Samba-3 by Example HOWTO and Reference Guide Using Samba, 2nd Edition

79

te

o, vers http://www.samba.org/ documentac a ao (3.0), fontes, bin arios, GUIs, es ao desenvolvedor,.. informac o

d so e A

36

o Documentac a

u rn la o

write list - Lista de usu arios separados por espac o ou v rgula que poder ao ler e gravar no compartilhamento. Caso o nome for iniciado por @, o nome especicado ser a tratado como um grupo UNIX (/etc/group) e todos o os usu arios daquele grupo ter ao acesso de gravac a

-2

01

37.2
37.2.1

Utilit arios
smbclient

Para a listagem dos compartilhamentos existentes em um servidor: smbclient -L servidor Lista os compartilhamentos de servidor;

smbclient //servidor/pasta -U aluno -W grupo Acessa o compartilhamento como usu ario aluno e grupo de trabalho grupo. Comandos como ls, put e get s ao aceitos para transfer encia de arquivos.
> smbclient -L w2k -U aluno -W home Password: Domain=[W2K] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] Sharename Type Comment -----------------IPC$ IPC IPC remoto temp Disk arquivos temporarios ADMIN$ Disk Administrac ao remota C$ Disk Recurso compartilhado padrao Domain=[W2K] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager] Server --------Workgroup --------Comment ------Master -------

Prof. Alexander Luz Sperandio

> smbumount mnt/

37.2.2

smbmount

Permite a montagem de um disco compartilhado por uma m aquina SMB re o. mota como uma partic a

FI

o A t

> smbmount //w2k/C$ mnt/ -o username=administrador Password: > ls mnt/ arcldr.exe Documents and Settings PDFs arcsetup.exe IO.SYS RECYCLER Arquivos de programas MSDOS.SYS System Volume Information AUTOEXEC.BAT NTDETECT.COM temp Bootfont.bin ntldr WINNT boot.ini pagefile.sys CONFIG.SYS PDF LIVRE

-U

as

smbmount //sarge/aluno mnt/ -o username=aluno,workgroup=home smbumount mnt/

d so e A
80

In

te

u rn la o

-2

01

37.2.3

nmblokup

Resolve nome ou IP de um cliente e lista suas caracter sticas.


> nmblookup sarge querying sarge on 192.168.2.255 192.168.2.5 sarge<00> > nmblookup w2k querying w2k on 192.168.2.255 querying w2k on 192.168.0.255 querying w2k on 172.20.255.255 172.20.0.2 w2k<00>

Quanto ao c odigo em hexadecimal: 00 = O servic o NetBEUI est a sendo executado na m aquina.

Prof. Alexander Luz Sperandio

03 = Nome gen erico da m aquina (nome NetBIOS).

1d - GRUPO = Navegador Local de Dom nio/Grupo. 1b = Navegador Principal de Dom nio.

03 - GRUPO = Nome Gen erico registrado por todos os membros do grupo de trabalho. 1c - GRUPO = Controladores de Dom nio / Servidores de logon na rede. 1e - GRUPO = Resolvedores de Nomes Internet (WINS).

37.3

o do arquivo smb.conf Congurac a

FI

o A t

1. Editar o arquivo /etc/samba/smb.conf Faremos modicac o es para o Linux aparecer no ambiente de rede do Windows; 81

[global] # secao global workgroup = HOME # grupo de trabalho da maquina netbios name = linux # Nome da maquina na rede SMB # share1 e share2 sao secoes de compartilhamento [share1] path = /tmp # Diretorio do Unix a ser compartilhado comment = Diretorio temporario do sistema read only = no valid users = aluno [share2] path = /pub comment = Arquivos # Comentario sobre o compartilhamento [homes] # Compartilhamento dos diretorios de usuarios do Unix comment = Home oirectories browseable = no writable = yes create mask = 0700 directory mask = 0700

-U

as

d so e A

In

te

u rn la o

-2

01

2. testparm Para testar o novo arquivo smb.conf 3. Editar arquivo /etc/hosts.allow Samba vem com tcpwrappers: arquivos hosts.allow e hosts.deny controlam acesso pela rede; es sejam lidas 4. Reiniciar servidor samba para que as novas congurac o Os scripts que iniciam os servic os cam em /etc/init.d

37.4

Controlador de Dom nio

Prof. Alexander Luz Sperandio

o abaixo, faz com que o samba trabalhe como um PDC - Primary A congurac a Domain Controller.
# Global parameters [global] workgroup = HOME netbios name = LINUX server string = Linux Server passdb backend = tdbsam security = user log file = /var/log/samba/%m.log max log size = 500 # # # # # # #

#log por m aquina

FI

o A t

# impressora printcap name = cups printing = cups

[homes] comment = Home Directories writable = Yes browseable = No create mask = 0600 directory mask = 0700

-U

o de dom # configurac a nio domain logons = Yes os level = 100 preferred master = Yes domain master = Yes wins support = Yes time server = Yes

as

In

# script de login para ser executado no windows logon script = logon.cmd logon path = \\%N\%U\profile #profiles no diret orio do usu ario logon drive = X: logon home = "\\%N\%U"

d so e A
82

add user script = /usr/sbin/useradd -m %u delete user script = /usr/sbin/userdel -r %u add group script = /usr/sbin/groupadd %g delete group script = /usr/sbin/groupdel %g add user to group script = /usr/sbin/groupmod -A %u %g delete user from group script = /usr/sbin/groupmod -R %u %g add machine script = /usr/sbin/useradd -s /bin/false -d /var/lib/nobody %u

te

u rn la o

-2

01

valid users = %S

#apenas para usu arios autenticados

Prof. Alexander Luz Sperandio

[print$] comment = Printer Drivers Share path = /var/lib/samba/drivers write list = aluno, @admin printer admin = aluno, @admin [tmp] comment = Temporary file space path = /tmp read only = No guest ok = Yes

smbpasswd -a root

mkdir -p /var/lib/samba/netlogon/scripts

FI

o A t

4. Crie o script logon.cmd no diret orio criado

5. Crie usu arios do sistema Linux que podem logar a partir do windows

net use X: /HOME net time \\LINUX /set /yes

-U

as

o dos scripts de 3. Crie o diret orio netlogon/scripts utilizado para a manutenc a logon

In

2. Crie uma conta para o root no samba

83

te

useradd -g maquina -c "maquina de dominio" -s /bin/false \ -d /dev/null w2000$ smbpasswd -m -a w2000

d so e A

1. Crie uma conta de m aquina no servidor Linux

u rn la o

-2

[printers] comment = All Printers path = /var/spool/samba printer admin = aluno, @admin create mask = 0600 printable = Yes browseable = No

01

[netlogon] comment = Network Logon Service path = /var/lib/samba/netlogon admin users = aluno, @admin guest ok = Yes browseable = No

useradd -s /bin/false user passwd user smbpasswd -a user 6. Congure o Windows para logar no dom nio Se o script logon.cmd for criado no sistema Linux, estar a no formato Unix; nesse caso, use o utilit ario unix2dos para convert e-lo para o formato DOS. o prompt de comando. No exemplo abaixo, # e # unix2dos logon.cmd # ls logon.cmd # file logon.cmd logon.cmd: ASCII text, with CRLF line terminators # dos2unix logon.cmd # file logon.cmd logon.cmd: ASCII text

Prof. Alexander Luz Sperandio

FI

o A t

-U

as

d so e A
84

In

te

u rn la o

-2

01

Comandos b asicos o na posic o do cursor i - entra em edic a a < ESC > - volta para o modo de comandos :wq - salva (w) e sai (q) q! - sai sem salvar (! forc a)

Prof. Alexander Luz Sperandio

Outros comandos :r arquivo - adiciona arquivo na linha abaixo do cursor :w nome - salva arquivo com o nome fornecido

o abrindo uma linha abaixo do cursor o - entra em edic a o abrindo uma linha acima do cursor O - entra em edic a

o :syntax on - liga as cores para sintaxe em linguagens de programc a

Au
In
85

:set nu - enumera as linhas

o de linhas :set nonu - retira a numerac a

:10,20 w arquivo - salva o intervalo da linha 10 a linha 20 em arquivo

qemu e vde2

ta

FI A

No

um virtualizador e emulador de m qemu e aquinas[?]. Usado como emulador, ele pode rodar sistemas e programas de uma m aquina/arquitetura (ex.: ARM) em uma m aquina diferente (ex.: PC); Quando usado como virtualizador, o qemu atinge performances pr oximas da nativa quando utilizado junto com o m odulo kqemu. Para o aproveitamento da o por hardware contida nos processadores atuais, deve-se utilizar o virtualizac a kvm. um software do projeto Virtual Square[?]. Esse projeto inclui v vde e arios criar um ambiente unicado que softwares e bibliotecas. O principal objetivo e permita a m aquinas virtuais, sistemas e redes se comunicarem e iteragirem entre si.

Us o

de

te

rn

la

20 11

Comandos do vim

B.1

o dos pacotes necess Instalac a arios

B.2

o do switch virtual Criac a

Prof. Alexander Luz Sperandio

# vde_switch -d -s /tmp/vde1 -tap tap0 -m 666 -daemon

B.3

Conex ao com a internet via DHCP

O comando slirpvde pode ser executado pelo usu ario comum e permite a o de rede atrav conex ao do switch virtual a internet, fornecendo a congurac a es do protocolo DHCP, para as m aquinas no switch. $ slirpvde -s /tmp/vde1 --dhcp --network 172.20.0.0 --daemon o --network permite a especicac o da rede que ser A opc a a a distribu da via dhcp.

B.4

M aquinas virtuais com o qemu

FI

o A t

# Exemplo de um dos scripts debian_vma.sh # $ vdeqemu -m 128 -hda debian5.img -boot c -net nic,macaddr=00:11:22:33:44:50 -net vde,sock=/tmp/vde1 -snapshot

o O comando dhclient pode ser utilizado nas m aquinas virtuais para a congurac a o padr via DHCP se essa j a n ao for a congurac a ao na m aquina virtual. Pode ser utilizado, tamb em na m aquina host, para congurar a interface tap0 via DHCP.

# dhclient tap0

-U

as

Os scripts debian vma.sh e debian vmb.sh utilizam o comando ATENC AO: vdeqemu para levantar duas m aquinas virtuais a partir da imagem do arquivo debian vm.img. Cada script levanta uma m aquina com um enderec o MAC diferente, para que se comuniquem atrav es do switch virtual. Execute esses scripts para obter as m aquinas rodando.

d so e A
86

In

te

u rn la o

-2

O comando abaixo deve ser executado pelo root. Criar a um switch virtual em /tmp/vde1 com uma interface tap0 para conex ao com o host. A interface tap0 deve ser congurada para o acesso a m aquina virtual a partir do host. O comando ifcong -a mostra todas as interfaces.

01

# aptitude install kqemu-common kqemu-source module-assistant # aptitude install qemu vde2

Note o s mbolo # antes dos comandos. Signica que o comando deve ser executado como root. Quando utilizado o s mbolo $, o comando deve ser executado pelo usu ario.