Você está na página 1de 165

Linux Network Servers

452
Ver-11-2009
www.4linux.com.br
- 2
Sumrio
Captulo 1
Ajustes Iniciais........................................................................................................................... 8
1.1. Objetivos......................................................................................................................... 8
1.2. Introduo terica .........................................................................................................8
1.3. Confurando a rede ..................................................................................................... !
1.". Confurando a resoluo de no#es............................................................................... !
1.$. Confurao do %ostna#e............................................................................................1&
1.'. Confurando o repositrio de rede.............................................................................. 1&
1.(. )e#over servios desnecess*rios ................................................................................ 11
1.8. +efnindo vari*veis e alias de siste#as.........................................................................12
1.!. ,unciona#ento do -iste#a........................................................................................... 13
1.1&. ./erccios 0ericos..................................................................................................... 1$
1.11. 1aboratrio..................................................................................................................1$
Captulo 2
2A3.......................................................................................................................................... 1'
2.1. Objetivos....................................................................................................................... 1'
2.2. Introduo terica.........................................................................................................1'
2.3. 3dulos.........................................................................................................................1(
2.". Controles....................................................................................................................... 1(
2.$. 2r*tica diriida............................................................................................................. 18
2.'. ./erccios 0ericos....................................................................................................... 21
2.(. 1aboratrio....................................................................................................................21
Captulo 3
)AI+......................................................................................................................................... 22
3.1. Objetivos....................................................................................................................... 22
3.2. Introduo terica.........................................................................................................22
3.2.1. 4veis de )AI+.................................................................................................................... 23
3.3. 2r*tica diriida............................................................................................................. 2'
3.". Criando o )AI+............................................................................................................. 2'
3.$. 5erifcando o 6unciona#ento do )AI+7......................................................................... 2(
3.'. Ad#inistrando o )AI+...................................................................................................28
3.(. ./erccios 0ericos....................................................................................................... 2!
3.8. 1aboratrio ..................................................................................................................3&
Captulo "
- 3
153.......................................................................................................................................... 31
".1. Objetivos....................................................................................................................... 31
".2. Introduo terica.........................................................................................................31
".3. Co#o 6unciona o 153................................................................................................... 32
".". +efnindo as 2arti8es ..................................................................................................33
".$. 2r*tica +iriida............................................................................................................. 3"
".'. 9sando o 153............................................................................................................... 3'
".(. Ad#inistrando o 153.................................................................................................... 3(
".8. 0roubles%ootin............................................................................................................ 38
".!. ./erccios 0ericos....................................................................................................... "&
".1&. 1aboratrio.................................................................................................................."1
Captulo $
+:C2........................................................................................................................................"2
$.1. Objetivos....................................................................................................................... "2
$.2. Introduo terica........................................................................................................."2
$.3. 2r*tica diriida............................................................................................................. ""
$.3.1. Confurando u# servidor +:C2........................................................................................ ""
$.3.2. 2rincipais diretri;es do ar<uivo de confurao................................................................ "$
$.". Confurando os clientes +:C2.................................................................................... "$
$.$. ,i/ar I2 via +:C2......................................................................................................... "'
$.'. ./erccios tericos........................................................................................................ "8
$.(. 1aboratrio ..................................................................................................................."8
Captulo '
,02........................................................................................................................................... "!
'.1. Objetivos....................................................................................................................... "!
'.2. Introduo terica........................................................................................................."!
'.3. 2r*tica diriida............................................................................................................. $&
'.3.1. -ervidor ,02........................................................................................................................$&
'.". Conectando=se a u# servidor ,02 co#o cliente........................................................... $2
'.$. Co#andos ,02.............................................................................................................. $"
'.'. ./erccios tericos........................................................................................................ $'
'.(. 1aboratrio....................................................................................................................$'
Captulo (
4,-.......................................................................................................................................... $(
(.1. Objetivos....................................................................................................................... $(
(.2. Introduo terica.........................................................................................................$(
(.3. 2r*tica +iriida............................................................................................................. $8
- 4
(.3.1. Instalao e confurao do 4,-....................................................................................... $8
(.". ./erccios tericos........................................................................................................ '2
(.$. 1aboratrio....................................................................................................................'2
Captulo 8
-ervidor -A3>A...................................................................................................................... '3
8.1. Objetivos....................................................................................................................... '3
8.2. Introduo terica.........................................................................................................'3
8.3. 2r*tica +iriida............................................................................................................. '"
8.". -a#ba co#o controlador de +o#nio 2ri#*rio............................................................ '(
8.$. Cadastrando usu*rios no 2+C...................................................................................... (&
8.'. ./erccios 0ericos....................................................................................................... (1
8.(. 1aboratrio....................................................................................................................(1
Captulo !
+o#ain 4a#e -?ste#.............................................................................................................. (2
!.1. Objetivos....................................................................................................................... (2
!.2. Introduo terica.........................................................................................................(2
!.2.1. Caractersticas.....................................................................................................................(3
!.3. )esoluo...................................................................................................................... ("
!.3.1. )esoluo )ecursiva............................................................................................................($
!.3.2. )esoluo Iterativa.............................................................................................................. ((
!.". Ar<uivo @etc@%osts......................................................................................................... ((
!.$. ,erra#entas de consulta...............................................................................................(8
!.'. 2r*tica diriida............................................................................................................. (!
!.(. >I4+!........................................................................................................................... 81
!.8. -ervidor cac%e.............................................................................................................. 82
!.!. )estrinindo consultas..................................................................................................8"
!.1&. -ervidor de ;onas........................................................................................................8$
!.1&.1. 0ipos de ;onas e )eistros................................................................................................ 8'
!.11. Confurao do -ervidor >ind!................................................................................. 88
!.12. ./erccios tericos...................................................................................................... !3
!.13. 1aboratrio..................................................................................................................!"
Captulo 1&
Apac%e......................................................................................................................................!$
1&.1. Objetivos..................................................................................................................... !$
1&.2. Introduo terica.......................................................................................................!$
1&.3. 323 AorBer e 323 2re,orB .................................................................................... !'
1&.3.1. 323 2re ,orB ................................................................................................................. !'
- 5
1&.3.2. 323 AorBer ....................................................................................................................!'
1&.". 2r*tica diriida........................................................................................................... !(
1&.".1. Instalao do Apac%e 2......................................................................................................!(
1&.$. Ajustes do #dulo AorBer e 2re,orB.........................................................................!!
1&.'. -eurana................................................................................................................. 1&&
1&.(. -uporte a 2:2........................................................................................................... 1&1
1&.8. +o#nios virtuais...................................................................................................... 1&2
1&.!. -uporte a :002-...................................................................................................... 1&"
1&.1&. ./erccio terico..................................................................................................... 1&(
1&.11. 1aboratrio..............................................................................................................1&(
Captulo 11
2ostf/..................................................................................................................................... 1&8
11.1. Objetivos................................................................................................................... 1&8
11.2. Introduo terica.....................................................................................................1&8
11.3. Caractersticas do 2ostf/..........................................................................................1&!
11.". 2r*tica diriida......................................................................................................... 11&
11.$. -302......................................................................................................................... 112
11.'. Courier 2O23 e Courier I3A2.................................................................................. 113
11.'.1. Criando cai/as postais7.................................................................................................... 11"
11.(. Criando alias no 2ostf/.............................................................................................11'
11.8. ./erccios tericos................................................................................................... 11(
11.!. 1aboratrio................................................................................................................11(
Captulo 12
Aeb 2ro/? co# -<uid.............................................................................................................118
12.1. Objetivos................................................................................................................... 118
12.2. Introduo 0erica.................................................................................................... 118
12.3. ,unciona#ento de u# Aeb 2ro/? ............................................................................ 11!
12.". 2ro/? 3anual#ente Confurado..............................................................................11!
12.$. 2ro/? 0ransparente................................................................................................... 12&
12.'. Access Control 1ists.................................................................................................. 121
12.(. 0ipos co#uns de AC1Cs............................................................................................. 121
12.(.1. -inta/e das AC1-............................................................................................................ 122
12.8. AC1Cs de orie#........................................................................................................ 122
12.!. AC1Cs de destino........................................................................................................122
12.1&. AC1Cs de %or*rio .....................................................................................................123
12.11. ,iltros...................................................................................................................... 123
12.12. 2r*tica +iriida....................................................................................................... 12"
12.13. Confura8es Iniciais............................................................................................. 12$
- 6
12.1". ,iltrando acessos co# -<uid.................................................................................. 12'
12.1$. >lacBlist e A%itelist................................................................................................ 128
12.1'. Autenticao 4C-A................................................................................................. 12!
12.1(. Auditoria de acesso co# -A)D............................................................................... 13&
12.18. ./erccios 0ericos................................................................................................. 131
12.1!. 1aboratrio..............................................................................................................131
Captulo 13
Open1+A2.............................................................................................................................. 132
13.1. Objetivos................................................................................................................... 132
13.2. Introduo terica.....................................................................................................132
13.3. 2r*tica diriida......................................................................................................... 133
13.". Confurando u# cliente 1+A2 ................................................................................ 1"1
13.$. Acessando o Open1+A2 via >roEser co# 2%p1dapAd#in....................................... 1""
13.'. Autenticando o -<uid na base de usu*rios 1+A2.....................................................1"$
13.(. ./erccio terico....................................................................................................... 1"$
13.8. 1aboratrio................................................................................................................1"'
Captulo 1"
,ireEall.................................................................................................................................. 1"(
1".1. Objetivos................................................................................................................... 1"(
1".2. Introduo terica.....................................................................................................1"(
1".3. Co#preendendo as polticas >F-ICA- e o conceito das .GC.HI.-.......................1"8
1".". 2r*tica diriida......................................................................................................... 1"!
1".$. ,ireEall co#o ateEa? de rede................................................................................ 1$3
1".'. -cript de freEall.......................................................................................................1$$
1".(. ./erccios tericos.................................................................................................... 1$(
1".8. 1aboratrio................................................................................................................1$8
Captulo 1$
Open524................................................................................................................................ 1$!
1$.1. Objetivos................................................................................................................... 1$!
1$.2. Introduo 0erica.................................................................................................... 1$!
1$.3. 2r*tica +iriida......................................................................................................... 1'&
1$.3.1. Confurando o servidor.................................................................................................. 1'&
1$.". Confurando o cliente.............................................................................................. 1'1
).,.)J4CIA-
>I>1IOD)F,ICA-.................................................................................................................. 1'3
A4.GO-................................................................................................................................. 1'"
Captulo 1 Ajustes Iniciais - 7
-?ste# I#aer = "1inu/ .................................................................................................... 1'"
O <ue K ....................................................................................................................................... 1'"
Instalando o prora#a. .............................................................................................................. 1'"
1$.".1. >acBup ao fnal de cada aula .......................................................................................... 1'$
1$.".2. )estore antes de cada aula .............................................................................................1'$
ndice de tabelas
ndice de Figuras
Captulo 1 Ajustes Iniciais - 8
Captulo 1
Ajustes Iniciais
1.1. Objetivos
Confurar a redeL
Confurar resoluo de no#esL
Confurar %ostna#eL
+esativar -ervios desnecess*riosL
Confurar repositrio de rede.
1.2. Introduo terica
Antes de iniciar o trabal%o de instalao e confurao de serviosM K
necess*rio c%ecar se alu#as confura8es so v*lidas. 9tili;e o co#ando7
# si_cliente
>ai/ar u#a i#ae# padro co# +ebian 1enn? e Dno#e instalado direto do
servidorM por 6avor no tro<ue a sen%a padro 123"$' <ue utili;a#osM para <ue o
pessoal do suporte possa se#pre ajudar e# caso de proble#as.
2ara saber #ais sobre o -?ste# I#aerM <ue K o siste#a de salva#ento de
i#aensM acesse7
http://wiki.systemimager.org
Captulo 1 Ajustes Iniciais - 9
1.. !on"#urando a rede
5a#os nos certifcar <ue o ar<uivo @etc@netEorB@inter6aces est* correta#ente
confurado7
# vim /etc/network/interfaces
1 # Interface Loopback
2 auto lo
3 iface lo inet loopback
4
5 # Interface de rede primria
6 auto eth0
7 iface eth0 inet static
8 address192.168.200.X
9 netmask255.255.255.0
10 network192.168.200.0
11 broadcast 192.168.200.255
12 gateway192.168.200.254
Red Hat:
# vim /etc/sysconfg/network/ifcfg-et!
1.4. !on"#urando a reso$uo de no%es
1) Edite o arquivo /etc/resolv.conf:
# vim
2) Adicione o endereo !" do servidor #$S da Embratel:
nameserver 200.176.2.10
Captulo 1 Ajustes Iniciais - 10
1.5. !on"#urao do &ostna%e
.# u# servidorM a confurao correta do %ostna#e e do ar<uivo %osts K
essencial para eli#inar proble#as e# servios de rede. Abra o ar<uivo
@etc@%ostna#eM adicione o no#eM / K o nN#ero de sua #*<uina Ocaso esteja erradoP7
# vim /etc/hostname
microX
1) Edite o arquivo de /etc/%osts:
# vim /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.200.X microX.microx.com.br microX
1.'. !on"#urando o re(ositrio de rede
2ara instalar prora#as no +ebian D49@1inu/M K necess*rio <ue o repositrio
de rede correta#ente confurado. 5a#os confur*=lo para buscar os so6tEares e#
u# repositrio interno da "linu/.
1) Abra o arquivo res&onsvel &ela con'gura(o do re&osit)rio:
# vim /etc/a"t/sources.list
2) Edite*o a&ontando &ara o re&osit)rio interno da +,inu-:
deb tt"://#$%.#&'.#.#/debian lenny main contrib non-free
Captulo 1 Ajustes Iniciais - 11
.) #e&ois de con'gurado/ faa o u&date do banco de dados do
a&titude:
# a"titude u"date
+) Agora/ vamos instalar e con'gurar o nosso editor de te-tos
%abilitando destaque de sinta-e e lin%as numeradas:
# a"titude install vim
# eco (syntax on( )) /etc/vim/vimrc
# eco (set number( )) /etc/vim/vimrc
*rocedimentos de *+s ,nstala-.o/ conecidos tamb0m como Hardening/ s.o
assuntos discutidos no treinamento de 1eguran-a 4#2 3 ,14%5!!%.
1.). *e%over servios desnecess+rios
0odo Ad#inistrador de -iste#as te#M ou deveria ter ciQncia de <ue u#
servidor deve e/ecutar so#ente os so6tEares necess*riosM eli#inando assi# riscos de
seurana e ajudando a #el%orar a per6or#ance.
2ara <ue isso seja 6eitoM precisa#os antes verifcar <uais servios de rede
esto %abilitados e aceitando cone/8es.
1) 0eri'cando servios de rede com netstat:
# netstat -nltup
2) Encerrando os servios encontrados:
# invoke-rc.d exim4 stop
# invoke-rc.d nfs-common stop
# invoke-rc.d portmap stop
# invoke-rc.d openbsd-inetd stop
Captulo 1 Ajustes Iniciais - 12
.) 1emovendo servios da iniciali2a(o:
# update-rc.d -f exim4 remove
# update-rc.d -f nfs-common remove
# update-rc.d -f portmap remove
# update-rc.d -f openbsd-inetd remove
Red Hat:
# ckconfg --list
# ckconfg --level %642 "ortma" sto"
4 comando runlevel/ mostra 7ual 0 o n8vel de iniciali9a-.o 7ue nos
encontramos.
:oc; tamb0m "ode abilitar os servi-os/ com o "rogramas sysv-rc-conf e
com o rcconf/ 7ue foram utili9ados no treinamamento 42#:
R aptitude install rccon6 s?sv=rc=con6
R rccon6
Rs?sv=rc=con6
1.,. -e"nindo vari+veis e a$ias de siste%as
O -iste#a Operacional ve# %abilitado por padro se# alias e so#ente as
variavKis essenciais ao seu 6unciona#ento. .nto ire#os confurar nosso
D49@1inu/.
1) Agora vamos colocar as variveis e alias/ &ara isso/ edite o arquivo:
# vim /etc/profile
Captulo 1 Ajustes Iniciais - 13
2) 0amos inserir estas o&3es no 'nal do arquivo:
alias ls='ls color'
alias lsl='ls -l'
TMOUT=1200
HISTSIZE=1000
.) "ara validar as mudanas no disco/ e-ecute:
# source /etc/profile
4s comandos set e env/ v.o ser cobrados na "rova do <*,/ eles s.o uteis
"ara listarem as variav0is globais e locais.
1... /unciona%ento do Siste%a
0odos os itens <ue vere#os aora j* con%ece#osM #as so cobrados na 12I.
1) "ara identi'car a vers(o do 4ernel instalado e distribui(o:
# uname -r
# cat /pro/version
2) 5 4ernel 'ca carregado na mem)ria 1A6/ este 7 seu arquivo:
# cd /boot
# file vmlinuz-2.6.26-2-686
# du -sh vmlinuz-2.6.26-2-686
.) ,ogo que o 4ernel 7 carregado em mem)ria/ logo inicia*se os
&rocessos:
# cd /proc
# ls
# ps aux
# cat cpuinfo
Captulo 1 Ajustes Iniciais - 14
+) 5s arquivos do diret)rio /etc/ s(o lidos/ onde s(o montados os
dis&ositivos e a iniciali2a(o dos servios:
# cat /etc/fstab
# cat /etc/mtab
8) 1e&are o que est montado no sistema:
# cat /proc/mounts
# cat /proc/partitions
# df -h
9) 5s di&ositivos 'cam /dev/ e seu sistema de arquivos 7 o udev.
# ls -l /dev
:e=a novamente estes t+"icos no 42! e no 42#.
:) 5s m)dulos carregados no sistema:
# ls -l /lib/modules
# lsmod
# modprobe -l
# cat /proc/modules
;) "ara e-ibir todas bibliotecas do sistema:
# ldconfig -p
# ls /lib
# cat /etc/ld.so.conf
>i7ue atento/ "or7ue tudo 7ue estudamos no "rimeiro ca"8tulo/ ir.o cair no
exame da <*,/ estude as a"ostilas da forma-.o. *ara informa-?es acesse:
tt"://www.l"ibrasil.com.br/
Captulo 1 Ajustes Iniciais - 15
1.10. 1xerc2cios 3ericos
1P Sual a i#portTncia dos procedi#entos de ps=instalaoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Sual K o diretrio #enos i#portante 6a;er bacBup no -site#aU O,:-P
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Co#o eu consio verifcar <uais ar<uivos te# per#iss8es WespeciaisX
%abilitadas de -D9I+ e -9I+U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P Sual a #*scara padro do siste#as para criao de ar<uivos e diretriosM
<ual ar<uivo ela fca ar#a;enadaU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
$P Co#o fcaria as per#iss8es de ar<uivos e diretriosM se a u#asB do siste#a
6osse 23 e '$U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
'P Suais diretrios te# sticB bit ativadoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
1.11. Laboratrio
1. Instale o %top para erQnciar os processosL
2. +esabilite o d# do runlevel padroM utili;ando s?sv=rc=rcon6.
Captulo 2 PAM - 16
Captulo 2
PAM
2.1. Objetivos
.ntender a confurao do 2A3L
Con%ecer seus #dulosL
.ntender seus controlesL
I#pedir loin de super usu*rio via console.
2.2. Introduo terica
A cada diaM #ais e #ais #ecanis#os de autenticao di6erentes sure# no
#ercado. I#aine <ue para cada #Ktodo de autenticaoM 6osse necess*rio rescrever
aplica8es co#o ,02M apac%eM ss% e o siste#a de loin console e r*fco do 1inu/U
,oi pensando neste tipo de es6oro <ue 6oi criado o #ecanis#o de
autenticao 2A3 ou 2luable Aut%entication 3odulesM <ue o6erece u#a ca#ada de
abstrao para autenticao e# siste#as 9ni/. Assi#M se <uiser#os adicionar u#
novo #odelo de autenticao via leitor de diitaisM por e/e#ploM basta apenas instalar
o #dulo 2A3 <ue o6erea essas 6uncionalidades e confurar as aplica8es para
trabal%ar co# este #duloM se# a necessidade de recriar ou rei#ple#entar 6un8es
no aplicativo.
AlK# dissoM co# o 2A3 K possvel controlar %or*rios e ter#inais disponveis
para loinsM <uais sero os usu*rios <ue pode# e6etuar u# su no siste#a
operacionalM autenticar e# bases de dados di6erentesM alK# de outros #dulos <ue
Captulo 2 PAM - 17
esto disponveis no seuinte endereo7
http://www.kernel.org/pub/linux/libs/pam
2.. 4du$os
O 2A3 trabal%a co# #dulos e controlesM e cada tipo de #dulo prove# u#a
6uncionalidade di6erente dentro do siste#a. 5a#os co#entar pri#eiro os #dulos7
account: 5erifca se a conta K valida no siste#aM se a passEord do usu*rio
e/pirou e se o usu*rio real#ente te# direitos de acessar a<uele servio.
aut%entication: 5erifca <uest8es de autenticaoM seja por sen%as ou
i#press8es diitais O<uando 6ala#os de bio#etriaP. Y o #dulo aut%entication
<ue o6erece a Ze/ibilidade do 2A3M j* <ueM para cada #Ktodo de autenticao
criadoM e/iste u#a biblioteca <ue ser* adicionada [ este #dulo.
&ass<ord: .ste #dulo K respons*vel por cuidar dos aspectos relacionados a
tare6as envolvendo sen%asM co#o atuali;ao e solicitao de nova sen%a de
acesso no caso da troca da #es#a.
session: )espons*vel por tare6as ps autenticaoM co#o #ontar u#
co#partil%a#ento de ar<uivos re#otos <ue contK# o diretrio @%o#e do
usu*rio e# <uestoM por e/e#plo.
2.4. !ontro$es
AlK# dos #dulosM e/iste# ta#bK# os controlesM os <uais co#entare#os
aora7
required: C%eca a e/istQncia do #dulo solicitadoM caso esse #dulo 6al%eM
so#ente depois de verifcar todos os #dulos do #es#o tipo disponveis K <ue
o usu*rio ser* avisado.
requisite: C%eca a e/istQncia do #dulo solicitado e avisa o usu*rio
i#ediata#ente caso este #dulo 6al%e.
Captulo 2 PAM - 18
su=cient: -o#ente a verifcao do #dulo K sufciente para a autenticaoM
desde <ue nen%u# #dulo #arcado co#o re<uired 6al%e.
o&tional: O sucesso ou a 6al%a deste #dulo no inter6ere no processo de
autenticao.
@ maioria das distribui-?es trabalam com o *@A/ as Bnicas distribui-?es
7ue n.o trabalam com *@A s.o as baseadas em Slackware.
2.5. 5r+tica diri#ida
1) 0amos veri'car quais m)dulos do "A6 > est(o instalados em nosso
sistema:
# ls /lib/security/
2) 0amos ol%ar dentro do diret)rio do "A6 &rocurando &or arquivos
de con'gura(o &ara os &rogramas instalados:
# ls /etc/pam.d
.) "ara entendermos como o "A6 funciona/ vamos ativar um m)dulo
sim&les que serve &ara bloquear usurios comuns. Edite o
arquivo /etc/&am.d/login e visuali2e o m)dulo &am?nologin.so:
# vim /etc/pam.d/login
auth requisite pam_nologin.so
+) "ara esse &lugin funcionar ele necessita que o arquivo nologin
este>a criado dentro do diret)rio /etc. @rie o arquivo nologin dentro
do diret)rio /etc:
# touch /etc/nologin
Co# isso tente loar co# u# usu*rio co#u# e# outro ter#inal
Captulo 2 PAM - 19
Re"are 7ue a "artir do momento 7ue o "lugin estC ativado no "rograma
login e o ar7uivo necessCrio estC criado/ os usuCrios comuns n.o
conseguem mais logar/ somente o usuCrio root. ,sso n.o 0 muito viCvel mas
serve de exem"lo "ara entendermos como o *@A funciona.
9#a #aneira pr*tica de usar o 2A3 K 6a;er#os co# <ue o usu*rio root no
ten%a acesso direto ao loinM 6orando a loar co# usu*rio co#u# e depois 6a;er u#
su para virar root.
8) "ara isso aconter/ editamos o arquivo e visuali2amos a regra:
# vim /etc/pam.d/login
account requisite pam_time.so
9) Edite o arquivo time.conf dentro de /etc/securitA e acrescente na
Bltima lin%a:
# vim /etc/security/time.conf
login;*;root;!Al0000-2359
4s cam"os acima s.o:
loin = -ervio <ue ir* ser controlado
\ = 0er#inal
root = 9su*rio
Al&&&&=23$! = +ias e %or*rios de fltrae#.
.6etue loin co# o usu*rio root e# outro ter#inal e veja <ue no ser* possvel
e6etuar o loin.
Captulo 2 PAM - 20
Co# o 2A3M pode#os li#itar <uais usu*rios podero ter acesso a utili;ar o
co#ando su. 2ara issoM crie u# rupo c%a#ado ad#ins para os usu*rios <ue podero
ter acesso a 6a;er o su.
:) Adicione o gru&o onde os usurios que &oderam fa2er o su:
# groupadd admins
;) Agora vamos adicionar o usurio aluno ao gru&o admins:
# adduser aluno admins
C) @rie uma &olDtica que n(o &ossibilite o uso de su/ e-ceto &elos
usurios do gru&o admins:
# vim /etc/pam.d/su
auth requiredpam_wheel.so group=admins
2ara 6a;er o testeM loue=se co#o o usu*rio <ue pertence ao rupo ad#ins e
tente virar root usando o su.
1E) Em seguida tente com um usurio que n(o &ertence ao gru&o
admins:
$ su -
11) $o 'nal dos arquivos &ossibilite ss% no %orrio das ::.E Fs
1C:EE. "ara isso insira o m)dulo &am?time.so no arquivo do ss%
em /etc/&am.d:
# a"titude install ss
# vim /etc/pam.d/ssh
account required pam_time.so
Captulo 2 PAM - 21
12) Em seguida coloque a regra no time.conf:
# vim /etc/security/time.conf
sshd;*;*;Al0730-1900
2.'. 1xerc2cios 3ericos
1P Sual K a 6uno do 2A3 e co#o ele trabal%aU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Suais aplica8es pode# ser interadas co# o 2A3U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Sual a di6erena do re<uired para o re<uisite nas diretivas do 2A3U
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
2.). Laboratrio
1. 2er#ita o loin de root apenas no tt?'L
2. Crie o usu*rio ]#anutencao] 6aa co# ele e6etua loin ss% apenas de seunda a
se/ta 6eiraM das 87&& as 187&&.
Captulo 3 RAI - 22
Captulo 3
RAID
.1. Objetivos
.ntender os principais nveis de )AI+L
Confurar )AI+=1L
5erifcar o estado do )AI+L
-i#ular 6al%as no )AI+.
.2. Introduo terica
5 1A!# G1edundant ArraA of !ne-&ensive #is4s) 6oi desenvolvido e# 1!88
co#o u#a soluo barata para arantir a disponibilidade da in6or#ao ar#a;enada
e# discosM utili;ando para isso u#a confurao especial de discos ridosM <ue
pode# o6erecer redundTncia e# caso de 6al%as e an%o de per6or#ance e# escrita
ou leituraM dependendo da confurao do conjunto )AI+.
Co#o principais vantaensM o )AI+ o6erece7
Dan%o de dese#pen%o no acesso para leitura ou ravaoL
)edundTncia e# caso de 6al%a e# u# dos discosL
9so #Nltiplo de v*rias unidades de discosL
,acilidade e# recuperao de conteNdo perdido.
Captulo 3 RAI - 23
./iste# duas 6or#as de criar#os u# )AI+.
0ia Soft<are: ,eito por aplicativos e #dulos do siste#a operacionalM o )AI+
via so6tEare s entra e# 6unciona#ento depois <ue o ^ernel K carreado na
#e#ria do co#putador. A principal vantae# K a 6acilidade de confurao e
a Ze/ibilidadeM j* <ue pode#os trabal%ar co# v*rios discos di6erentes. A
principal desvantae# K a dependQncia da correta confurao do siste#a
operacional.
0ia Hard<are: ,eito por u#a placa controladora <ue conecta u# disco ao
outro. A principal vantae# K o dese#pen%oM j* <ue u# )AI+ via %ardEare K
#ais r*pido e independe do siste#a operacional. A principal desvantae#M K
<ue a placa controladora se torna u# -2O, O-inle 2oint o6 ,ailurePM ou sejaM K
necess*rio ter u#a controladora de discos iual ou co#patvel co# a <ue vocQ
possui para o caso de 6al%as neste %ardEare.
3.2.1. Nveis de RAID
Os principais nveis de )AI+ utili;ados %oje no #ercado so os nveis &M1M $M e
suas deriva8esM co#o por e/e#ploM o )AI+ 1&. 5a#os entendQ=los7
1A!# E: .ste K o Nnico nvel de )AI+ <ue no i#ple#enta redundTncia. -ua
fnalidade K au#entar o dese#pen%o de leitura e ravaoM u#a ve; <ue ao
ravarM divide os dados e# partes iuais e ar#a;ena cada 6ra#ento e# u#
disco di6erente si#ultanea#ente. 2or issoM co# dois discosM a velocidade de
leitura pratica#ente dobra. Co# trQs discosM triplica. . assi# por diante. -ua
desvantae# K <ue se <ual<uer u# dos disco 6al%arM o siste#a operacional para
de 6uncionarM alK# de ocasionar perda dos dados. -o necess*rios ao #enos
dois discos para i#ple#entar )AI+ &M e eles pode# ser de ta#an%os
di6erentes.
1A!# 1: O nvel #ais lara#ente utili;ado. -ua principal fnalidade K arantir
redundTncia dos dados. A redundTncia K arantida pela duplicao dos discos
<ue so iual e si#ultanea#ente ravados e# cada par de discosM looM se u#
deles 6al%arM o outro continuar* operando M atK <ue a substituio do disco
de6eituoso seja 6eita. O an%o de dese#pen%o est* na leituraM u#a ve; <ue os
Captulo 3 RAI - 24
dados so lidos e# partes iuais e si#ultanea#ente de todos os discos.A
desvantae# desse nvel K <ue s #etade do volu#e total de ar#a;ena#ento
nos discos utili;ados fcar* disponvel para o siste#a operacional. Y preciso no
#ni#o dois discos para i#ple#entar )AI+ 1M se#pre e# pares.
1A!# 8: 4este nvel de )AI+ tere#os u# balano das vantaens e
desvantaens do nveis anterioresM ou sejaM )AI+ $ provK# u# an%o de
dese#pen%o e tolerTncia a 6al%as a custos #enores <ue )AI+ & ou )AI+ 1
individual#ente. O an%o de dese#pen%o est* #ais u#a ve; na leitura. Suanto
#ais discos 6ore# adicionados a co#posioM #ais r*pida ser* a leituraM u#a
ve; <ue a ravao K distribudas e# blocos de ta#an%o iual por todos os
discos. A #*ica do )AI+ $ est* justa#ente na diviso e distribuio destes
blocos. 4u#a co#posio de trQs discos os dados sero divididos e# dois
blocosM A1 e >1M sendo <ue os bits destes dois blocos sero co#parado atravKs
de u# GO) O]ou e/clusivo]P. O resultado ser* ravado no terceiro volu#e co#o
21. AlK# dissoM os blocos de paridade so alternada#ente ravados e# cada
discoM au#entando a tolerTncia. ./e#plo7
A1 B1 P1
A2 P2 C2
P3 B3 C3
Sual<uer u# dos discos <ue 6al%ar pode ser rapida#ente reconstrudo atravKs
de novas opera8es GO) entre os dados restantes. 0o#e#os por e/e#plo A1 _
&1&&11&& e >1 _ 1&1&&1&1.
01001100 XOR
10100101
--------
11101001
Aora supon%a <ue o bloco >1 6oi perdido. 2ara recuper*=lo basta aplicar u#
Captulo 3 RAI - 25
GO) entre A1 e 21.
01001100 XOR
00010110
--------
01011010
A operao GO) sinifca <ue se so iuais ]& e &] ou ]1 e 1]M ento o
resultado K verdadeiro O&P. -e %ouver #ais de dois blocos para sere# co#paradosM
calcule a paridade dos dois pri#eirosM e co# resultadoM co#pare co# o terceiroM e
assi# sucessiva#ente. A principal desvantae# do )AI+ $ K o custo de
processa#ento da paridade. 2ortantoM )AI+ $ K #enos efciente na ravao <ue
seus antecessores.
A <uantidade #ni#a de discos no )AI+ $ K 3M podendo suportar <ual<uer
nN#ero #aior <ue 3M #es#o para discos de ta#an%os di6erentes. O volu#e
disponvel para ar#a;ena#ento K dado pela e<uao OS=1P\+#enorM onde S K a
<uantidade de discosM e +#enor o ta#an%o do #enor disco.
Os nveis de )AI+ pode# ser co#binados para se potenciali;ar alu#a das
vantaens deles. As co#bina8es #ais co#uns so os c%a#ado )AI+ 1&M )AI+ &`1 e
)AI+ $&.
@ "rova <*, "ode cobrar conecimentos do aluno sobre os n8veis de R@,D
citados.
Captulo 3 RAI - 26
.. 5r+tica diri#ida
1) Abra o &articionador e marque as &arti3es sda11/ sda12 e sda1.
sendo do ti&o I1A!# autodetectI/ caso n(o e-istam/ crie:
# cfdisk /dev/sda
2) 0eri'que se o &acote mdadm > est instalado/ e instale*o se
necessrio:
# d"kg -l mdadm
# a"titude install mdadm
.) #e&ois de instalar o &acote mdadm/ abra um segundo terminal
visuali2e o estado do 1A!# no Jernel:
# watch cat /proc/mdstat
.4. !riando o *6I-
1) 0amos criar o 1A!# utili2ando o nDvel 1 utili2ando Idois discosI e
um Is&areI:
# mdadm --create /dev/md0 --level=1 --raid-devices=2 --spare-devices=1
/dev/sda11 /dev/sda12 /dev/sda13
4o seundo ter#inalM verif<ue a sincroni;ao do )AI+
2) #e&ois de criarmos o 1A!#/ 7 necessrio editar o arquivo
/etc/mdadm/mdadm.conf/ que ser utili2ado durante a
administra(o do 1A!#:
# vim /etc/mdadm/mdadm.conf
Captulo 3 RAI - 27
.) 6odi'que o arquivo/ adicionando o seguinte conteBdo:
DEVICE /dev/sda11 /dev/sda12 /dev/sda13
ARRAY /dev/md0 devices=/dev/sda11,/dev/sda12,/dev/sda13
+) #e&ois de criarmos o 1A!#/ a&lique o sistema de arquivos e-t. no
dis&ositivo /dev/mdE:
# mkfs.ext3 /dev/md0
8) @rie um &onto de montagem em /mnt/raid
# mkdir /mnt/raid
9) 6ontando o 1A!#:
# mount -t ext3 /dev/md0 /mnt/raid
:) @on'gure o /etc/fstab:
/dev/md0 /mnt/raidext3defaults0
.5. 7eri"cando o 8unciona%ento do *6I-9
1) 0eri'cando os dis&ositivos individualmente:
# mdadm -E /dev/sda11
# mdadm -E /dev/sda12
# mdadm -E /dev/sda13
Captulo 3 RAI - 28
2) "ara testar a redundKncia/ vamos criar um scri&t c%amado
IraidLest.s%I que escreve em um arquivo de . em . segundos:
vim /root/TestaRaid.sh
#!/bin/bash
while true ; do
date >> /mnt/raid/dados.txt
sleep 3
done

chmod +x TestaRaid.sh
/root/TestaRaid.sh
.'. 6d%inistrando o *6I-
5a#os aprender a adicionarM re#over e si#ular u#a 6al%a e# u# dos discos
do )AI+.
1) "rovocando uma fal%a:
# mdadm /dev/md0 --fail /dev/sda11
2) 0eri'cando os detal%es do 1A!# a&)s a fal%a:
# mdadm --detail /dev/md0
.) 1emovendo o disco defeituoso:
# mdadm /dev/md0 --remove /dev/sda11
# mdadm --detail /dev/md0
Captulo 3 RAI - 29
+) Adicionando um disco ao 1A!#:
# mdadm /dev/md0 --add /dev/sda11
# mdadm --detail /dev/md0
8) "ara &arar o 1A!#:
# mdadm -S /dev/md0
9) 1einiciando o 1A!#:
# mdadm -As /dev/md0
@ "rova de certifca-.o contem"la o uso comum do comando mdadm bem
como ar7uivos de confgura-.o.
.). 1xerc2cios 3ericos
1P Suais so as vantaens e desvantaens de usar o )AI+ $U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Sual a di6erena e# se 6a;er u# )AI+ via so6tEare e u# )AI+ via
%ardEareU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Captulo 3 RAI - 30
3P Suais so as vantaens e desvantaens de usar o )AI+ 1U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
.,. Laboratrio
1. 9tili;ando os con%eci#entos obtidos neste captuloM crie u# volu#e )AI+=1&L
2. )e6a;er todas as parti8es necess*rias co# o c6disBM para <ue possa#os testar
o 153 no pr/i#o captuloL
3. 4o es<uecer de co#entar as lin%as dentro no @etc@6stab co# a confurao do
)AI+M por<ue nosso siste#a de salva#ento de i#aens precisa das parti8es
padr8es criadas.
Captulo 4 !"M - 31
Captulo 4
LVM
4.1. Objetivos
Criar novas parti8es no siste#a co# 153L
Aprender as di6erenas entre volu#es 6sicosM rupos de volu#es e volu#es
licosL
Criao de volu#es 6sicosM rupos de volu#es e volu#es licosL
Aplicar -iste#as de Ar<uivos nas parti8es criadas no 153L
Au#entar o ta#an%o das parti8es <ue utili;a# 153.
4.2. Introduo terica
A sila ,06 sinifca7 ,ogical 0olume 6anager. .le K u# erenciador de
discos <ue trabal%a co# ca#adas licasM <ue pode# ser redi#ensionadasM
au#entando ou di#inuindo se# prejudicar o 6unciona#ento do siste#a.
A necessidade de se usar 153 K para <ue possa#os aproveitar ao #*/i#o o
ta#an%o do :+ ou de v*rios :+Cs. O 153 K bastante utili;ado e# siste#as
virtuali;adosM onde %* rande necessidade de v*rias parti8es.
Captulo 4 !"M - 32
4.. !o%o 8unciona o L74
O 153 K usado para arupar v*rios discos de 6or#a <ue o erencia#ento dos
#es#os seja vi*vel e# u# servidor de produo <ue no pode fcar desliado.
5a#os i#ainar <ue te#os 3 :+Cs e# nossa #*<uinaM e ostara#os de
aproveitar ao #*/i#o de seus ta#an%os.
2ara no ter <ue se preocupar co# o ta#an%o das parti8es loo de i#ediatoM
ire#os usar o 153 para <ue possa#os erQnciar os ta#an%os das parti8es se#
precisar 6a;er as 6a#osas aaa#biarrasCC.
2ara trabal%ar co# 153 as parti8es precisa# estar 6or#atadas co# o tipo
153. O ,06 trabal%a com Mru&os de 0olumes para alocar todas as parti8es <ue
esto defnidas co#o 5olu#e ,sicos do 153. .sses volu#es 6sicos sero divididos
e# v*rios 5olu#es licos co#o se 6osse# u#a diviso de u# disco OpartioP para
alocar o deter#inado ponto de #ontae#M e isso vai tra;er a Ze/ibilidade para
redi#ensionar a deter#inada partio. Co# #ais detal%es veja#os as seuintes
ca#adas <ue o 153 trabal%a7
"0 "%Asical 0olumeG0olume FDsico)7 Os 25Cs so as parti8es <ue sero
usadas para co#por u# disco no 6or#ato 153M eles serve# para dar o 99I+M
<ue K nN#ero de identifcao de cada disco.
0M 0olume Mrou&GMru&o de 0olume)7 Os 5DCs so u# arupa#ento de 25CsM
pode#os ter v*rios 5DCs. 9# e/e#plo K <ue pode#os pear a parti8es %da3 e
%db" <ue esto declaradas co#o 25Cs e di;er <ue eles so o 5D&1M nisso
pode#os dividir esse rupo e# v*rios pedaos co# ta#an%os especfcos para
ser associados a u# diretrio. 2ode#os utili;ar todo o ta#an%o ou pode#os
dei/ar u# espao sobrando para <uando precisarM au#entar os pedaos.
,0 ,ogical 0olumeG0olume ,)gico)7 Os 15s so os pedaos <ue 6ala#os
aora poucoM pode#os classifca=los co#o sendo as parti8es de u# discoM e 5D
sendo o disco. .les so as partes <ue pode# ser acessadas pelos usu*rios e <ue
sero associados a u# ponto de #ontae# especfco. 9# e/e#plo K 6alar <ue
o 15&1 ser* #ontado no diretrio @%o#e.
Captulo 4 !"M - 33
4.4. -e"nindo as 5arti:es
Antes de criar#os as parti8es 153M te#os <ue ter e# #ente nossa tabela de
particiona#ento7
# cat /etc/fstab
Aora ire#os ver nossas parti8es7
# cat /"roc/"artitions
2or causa do captulo de )AI+ ire#os ter <ue recriar as parti8es nova#enteM
e dei/ar estas 2arti8es 1ivres7
Tipo Device Ponto de Montagem Tamanho em MB Filesystem
1o @dev@sda1& 4o #ontado $12 3> -e# 6s
1o @dev@sda11 4o #ontado $12 3> -e# 6s
1o @dev@sda12 4o #ontado $12 3> -e# 6s
1o @dev@sda13 4o #ontado $12 3> -e# 6s
1o @dev@sda1" 4o #ontado $12 3> -e# 6s
4as parti8es para reali;ao deste trabal%oM defna o tipo das parti8es co#o
8.M e utili;e o c6disB para reali;ao desta tare6a. 4o es<uea de reiniciar o
co#putador.
# cfdisk /dev/da
Eo fnal do ca"8tulo/ retire as linas do /etc/fstab 7ue iremos incluir e
remova as confgura-?es criadas com o <:A e R@,D/ "ara "odermos salvar
as imagens.
Captulo 4 !"M - 34
4.5. 5r+tica -iri#ida
1) 0eri'que os &acotes necessrios ao ,06/ no #ebian:
# d"kg -l lvm%
@aso n(o ten%a:
# a"titude install lvm%
2) 1ed Hat: $o 1ed Hat:
# r"m -7a Fgre" lvm
.) @aso n(o ten%a:
# yum install lvm%
+) Mere o arquivo de con'gura(o do ,06/ utili2e o comando vgscan.
# vgscan
8) #e'na as novas &arti3es como "0 G"%isical 0olume ou 0olume
FDsico).
# "vcreate /dev/sda##
# "vcreate /dev/sda#%
9) 0eri'que que as novas &arti3es > est(o utili2ando ,06 com
sucesso:
# "vscan
O pvscanM vai #ostrar o dispositivoM o ta#an%o de cada partioM e a so#a das
duas parti8es.
Captulo 4 !"M - 35
:) #e'na um Mru&o de 0olumes com os volumes fDsicos criados/ nosso
caso ser o vgE1:
# vgcreate vg!# /dev/sda## /dev/sda#%
;) @onsultando o Mru&o de 0olumes G0M).
# vgdis"lay
# vgdis"lay -v vg!#
C) @riando um 0olume ,)gico G,0) denominado teste:
# lvcreate -< 2#%mb -n lv!# vg!#
1E) ,istando informa3es do 0olume ,)gico G,0):
# lvdis"lay -v /dev/vg!#/lv!#
11) @onsultando o Mru&o de 0olumes G0M). 1e&are que agora temos
tamb7m os detal%es do I,0 testeI:
# vgdis"lay -v vg!#
12) ,istando o device do ,0 criado:
# ls -l /dev/vg!#/lv!#
1.) 0eri'cando os ,0s criados:
# lvs
1+) @riando o sistema de arquivo ENL. no 0olume ,)gico:
# mkfs -t ext6 /dev/vg!#/lv!#
Captulo 4 !"M - 36
4.'. ;sando o L74
1) @riando um &onto de montagem &ara ,06 Gcaso se>a necessrio):
# mkdir /lvm
2) 6ontando manualmente o sistema ,06 criado:
# mount -t ext6 /dev/vg!#/lv!# /lvm
.) 0eri'cando se o dis&ositivo est montado:
# df -
# mount
Caso esteja utili;ando )ed:at Oou u#a distribuio <ue sia o #es#o
padroPMverif<ue a necessidade de criao de u# label para o device. -e 6or
necess*rioM 6aa=o. )ed :at7 Co# 1abel7
# e%label /dev/vg!#/lv!# /lvm
Caso a #*<uina seja iniciali;ada neste #o#entoM o 153 no seria #ontado
para utili;ao. 2ara <ue o volu#e 153 seja #ontado auto#atica#enteM K necess*rio
<ue seja editado o ar<uivo @etc@6stab e se adicione estas lin%as no @etc@6stab7
+) @om label G&ara 1ed Hat):
<@GH<I/lvm /lvm ext6 defaults ! %
8) Sem label G&ara #ebian):
/dev/vg!#/lv!# /lvm ext6 defaults ! %
Captulo 4 !"M - 37
4.). 6d%inistrando o L74
1) #esmonte o ,06:
# umount /lvm
2) 1edimencione o 0olume ,)gico G,0):
# lvextend -< J%2&mb /dev/vg!#/lv!#
.) 0eri'que o volume:
# e%fsck -f /dev/vg!#/lv!#
.ssa verifcao K #uito i#portanteM 6a; a verifcao no disco. Caso %ouver
alu# erroM K necess*rio 6a;er u# ]restaurao].
+) 1eestruturando o sistema de arquivos do 0olume ,)gico G,0):
# resi9e%fs /dev/vg!#/lv!#
8) 6ontando o ,0:
# mount -t ext6 /dev/vg!#/lv!# /lvm
9) 0eri'cando a tabela de &arti3es montadas:
# df -
:) @o&ie alguns dados dentro do diret)rio /lvm:
# c" -r /etc /lvm
# c" -r /sbin /lvm
;) 0eri'que que os arquivos foram co&iados corretamente:
# ls -l /lvm
Captulo 4 !"M - 38
C) 0eri'que a tabela de &arti3es:
# df -
1E) #esmonte o volume ,06:
# umount /lvm
4.,. 3roub$es&ootin#
Lroubles%ooting K a 6or#a co# a <ual ire#os resolver o proble#a.
1) 0eri'que o sistemas de arquivos:
# e%fsck -f /dev/vg!#/lv!#
2) 1eestruturando o sistema de arquivos do 0olume ,)gico G,0):
# resize2s !p "dev"vg#$"lv#$ 2%&###
.) 1edu2indo o ,0. Em toda redu(o de es&ao/ % risco de &erda de
dados. Se quiser/ &ara e-ecutar este &rocedimento/ e-ecute um
bac4u& da rea de disco:
# lvreduce -< -%2&mb /dev/vg!#/lv!#
+) 0eri'cando a tabela de &arti3es montadas:
# df -
8) 0ocO ira &erceber que o taman%o da ,0 realmente diminuiu.
# lvs
Captulo 4 !"M - 39
9) 6ontando o ,0:
# mount -t ext6 /dev/vg!#/lv!# /lvm
:) @o&ie alguns dados dentro do diret)rio /lvm:
# c" -r /bin /lvm
5erif<ue <ue os ar<uivos 6ora# copiados correta#ente7
# ls -l /lvm
;) #esmonte o volume ,06:
# umount /lvm
C) 1emovendo o ,0:
# lvremove /dev/vg!#/lv!#
Caso a partio esteja #ontadaM no vai ser possvel re#over.
1E) A&)s a remo(o/ veri'que que n(o F mais o ,0E1:
# lvs
11) 1emovendo o gru&o:
# vgremove vg!#
12) 5 comando vgdis&laA n(o ira mostrar mais nada:
# vgdis"lay
Captulo 4 !"M - 40
1.) 0e>a todas as suas ,vs:
# lvs
1+) 0eri'que os detal%es do ,06:
# "vscan
4... 1xerc2cios 3ericos
1P Co#o eu 6ao para estender u#a partio criada co# 153U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Co#o eu 6ao para re#over u#a partio criada co# 153U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P .u posso aplicar u# novo siste#a de ar<uivos [ partio da 153M #es#o
<ue ela conten%a dados j* criados nelaU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P Suando e por <ueM vocQ utili;aria 153 e# seu siste#aU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
$P Sual K o #*/i#o de parti8esM <ue pode#os ter e# u# +I-COM utili;ando
u#a controladora I+.U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Captulo 4 !"M - 41
'P Sual K o ar<uivo <ue #ostra todas as parti8es criadas na #*<uinaU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
(P Co#o eu consio e/ibir a tabela de parti8es co# os co#andos7 6disB e
c6disBM se# entrar no prora#aU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
8P Sual co#ando <ue eu consio sincroni;arM novas parti8es criadas e# #eu
discoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
4.10. Laboratrio
1. 2eue duas parti8es <ue no esto sendo utili;adas e crie u# )AI+1L
2. Adicione a partio co#o 25L
3. 5erif<ue se esto todas 6uncionadoL
". Crie duas novas parti8es O15P M a pri#eira 2$'#b e outra co# 1D>L
$. Apli<ue o siste#as de ar<uivos sEap na pri#eira e /6s na seundaL
'. Crie u# ponto de #ontae# para a seunda 15 co# o no#e de ).-0O).L
(. Colo<ue as entradas no ar<uivo @etc@6stabL
8. )einicie a #*<uina e verif<ue se est* tudo be#L
!. Aps todos os testesM re#ova tudo <ue 6oi 6eito co# o )AI+ e 153M inclusive
suas entradas no @etc@6stab.
Captulo 5 #CP - 42
Captulo 5
DHCP
5.1. Objetivos
.ntender o protocolo +:C2L
.ntender os #Ktodos de atribuio de endereosL
Confurar u# servidor +:C2L
Atribuir u# endereo de acordo co# 3AC A++).--.
5.2. Introduo terica
O +:C2 #Anamic Host @on'guration "rotocol K u# protocolo <ue <ue
6unciona nas ca#adas 2 e 3 do #odelo O-I e K a#pla#ente utili;ado para o6erecer
enderea#ento I2 * u# %ost <ue ainda no est* confuradoM o <ue o6erece u#
Ze/ibilidade ao Ad#inistrador de -iste#as. O protocolo +:C2 opera da seuinte
6or#a7
#H@"#!S@50E1 = 9# cliente envia u# <uadro broadcast Odestinado a todas
as #*<uinasP co# u# pedido +:C2L
#H@"5FFE1 = O servidor +:C2 captura o <uadro e o6erece u# endereo I2
ao clienteL
#H@"1EPQESL = O cliente envia u# +:C2 ).S9.-0 endereado para o
servidor +:C2 aceitando o I2L
#H@"A@J = .sse K o pacote <ue confr#a a atribuio de u#a confurao de
Captulo 5 #CP - 43
rede a u# clienteM ou sejaM a<uele cliente aora possui confura8es
distribudas pelo servidor +:C2L
#H@"$AJ = Caso o cliente no aceite a<uele endereo I2M ele enviar* u#
+:C24A^ para o servidorM e reali;ar* o +:C2+I-CO5.) nova#ente.
O +:C2 o6erece trQs tipos de alocao de endereos I27
Atribui(o manual = Suando deseja#os <ue certo cliente ten%a deter#inado
endereo I2M te#os <ue ]a#arrar] o endereo 3AC da #*<uina do cliente no
endereo I2 desejado. O servidor de +:C2 descobre o 3AC A++).-- do
cliente atravKs do +:C2+I-CO5.)M assi# identifcando <uais so as #*<uinas
<ue iro receber confura8es personali;adasL
Atribui(o automtica = Onde o cliente obtK# u# endereo de u# espao de
endereos possveis c%a#ado de raneM especifcado pelo ad#inistrador.
Deral#ente no e/iste vnculo entre os v*rios 3ACCs %abilitados a esse espao
de endereos. Assi# <ue o cliente se loa pela pri#eira ve; na redeM ele recebe
u# enderea#ento defnitivoL
Atribui(o dinKmica = O Nnico #Ktodo <ue disp8e a reutili;ao dinT#ica dos
endereos. O ad#inistrador disponibili;a u# espao de endereos possveisM e
cada cliente ter* o so6tEare 0C2@I2 da sua inter6ace de rede confurados para
re<uisitar u# endereo por +:C2 assi# <ue a #*<uina iniciali;e. A alocao
utili;a u# #ecanis#o de aluuel do endereoM caracteri;ado por u# te#po de
vida. Aps a #*<uina se desliarM o te#po de vida natural#ente ir* e/pirarM e
da pr/i#a ve; <ue o cliente se liueM o endereo provavel#ente ser* outro.
Alu#as i#ple#enta8es do so6tEare servidor de +:C2 per#ite# ainda a
atuali;ao dinT#ica dos servidores de +4- para <ue cada cliente dispon%a ta#bK#
de u# +4-. .ste #ecanis#o utili;a o protocolo de atuali;ao do +4- especifcado
no ),C 213'.
Captulo 5 #CP - 44
5.. 5r+tica diri#ida
5.3.1. Confgurando um servidor DHCP
1) !nstalar o &acote do servidor d%c&.:
# aptitude install dhcp3-server
2) 5 arquivo de con'gura(o 7 o d%c&d.conf no e-em&lo abai-o/ e 'ca
dentro de /etc/d%c&.:
# vim /etc/dhcp3/dhcpd.conf
Onde GM K a rede <ue o pro6essor in6or#ar7
1 ddns-update-style none;
2 subnet 192.168.X.0 netmask 255.255.255.0 {
1 range 192.168.X.10 192.168.X.200;
2 option subnet-mask 255.255.255.0;
3 option domain-name "microx.com.br";
4 option domain-name-servers 200.176.2.10,4.2.2.2;
5 option routers 192.168.X.254;
6 default-lease-time 600;
7 max-lease-time 7200;
8 }
@ "rova de certifca-.o "ode cobrar a utili9a-.o de cada o"-.o/ como
(o"tion routers( ou (o"tion domain-name-servers(.
.) Qma ve2 criado o arquivo de con'gura(o/ basta iniciali2ar o
servidor #H@":
# invoke-rc.d dhcp3-server stop
# invoke-rc.d dhcp3-server start
Captulo 5 #CP - 45
5.3.2. Principais diretries do ar!uivo de confgura"#o
default*lease*time 9EE = -ervidores +:C2 cede# endereos sob pedido por
u# te#po prK=deter#inado. O padro nesse e/e#plo K ceder o endereo I2 por
'&& seundosM ou 1& #inutosL
ma-*lease*time :2EE = Caso o cliente solicite u# te#po #aiorM o te#po
#*/i#o per#itido ser* de (.2&& seundos O2 %orasPL
o&tion subnet*mas4 288.288.288.E = .ssa opo defne a #*scara de
subrede a ser 6ornecida aos clientesL
o&tion broadcast*address 1C2.19;.2EE.288 = .ssa opo defne o endereo
de envio para re<uisi8es de broadcastL
o&tion routers 1C2.19;.2EE.28+ = O clienteM alK# do nN#ero I2M recebe
ta#bK# a in6or#ao do nN#ero do %ost <ue K o ateEa? de sua redeL
o&tion domain*name*servers 2EE.1:9.2.1E/+.2.2.2 = .ssa opo lista os
servidores de no#es O+4-P a sere# utili;ados para resoluo de no#esL
o&tion domain*name micro-.com.br = O no#e de do#nio do cliente.
5.4. !on"#urando os c$ientes -<!5
1) #o lado cliente/ temos duas o&3es &ara 'ns de teste:
# dhclient
Kaso n.o tena o comando dclient:
# a"titude install dc"6-client
Captulo 5 #CP - 46
2) 5u editando o arquivo /etc/net<or4/interfaces/ trocando static &or
d%c&/ 'cam assim:
# vim /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
*ara visuali9ar a "laca de rede 7ue estC utili9ando:
# mii-tool
O ar<uivo dos leases do d%cp se locali;a e# @var@lib@d%cp3@d%cpd.leases.
.) Este 7 o arquivo onde 'cam registrados os em&r7stimos de !"Rs.
5bserve*o:
# more /var/lib/dhcp3/dhcpd.leases
5.5. /ixar I5 via -<!5
Y possvel f/ar o I2 via +:C2 para #*<uinas respectivas. 2ara issoM
precisa#os associar o 3AC A++).-- da placa co# u# I2.
1) @onsidere que:
M'()*+, M,- ,D./SS *P F*0,D1
#icro 1 &&78&7C(7+27,87+$ 1!2.1'8.2&&.21&
#icro 2 8873+7>.7&&7C(7&& 1!2.1'8.2&&.21"

Captulo 5 #CP - 47
2) "ara esse cenrio ser &ossDvel/ seria necessria a res&ectiva entrada
no arquivo de con'gura(o /etc/d%c&./d%c&d.conf:
3 host micro1 {
1 hardware ethernet 00:80:C7:D2:F8:D5;
2 fixed-address 192.168.200.210;
3 }
4
5 host micro2 {
6 hardware ethernet 88:3D:BE:00:C7:00;
7 fixed-address 192.168.200.214;
8 }
.) 5 Arquivo /etc/d%c&./d%c&d.conf 'caria assim:
4 ddns-update-style none;
5
1 subnet 192.168.X.0 netmask 255.255.255.0 {
2 range dynamic-bootp 192.168.200.1 192.168.200.200;
3
4 option routers192.168.X.254;
5 option subnet-mask 255.255.255.0;
6 option domain-name microx.com.br;
7 option domain-name-servers200.204.0.10, 200.204.0.138;
8 default-lease-time 21600;
9 max-lease-time 43200;
10
11 host micro1 {
12 hardware ethernet 00:80:C7:D2:F8:D5;
13 fixed-address 192.168.X.210;
14 }
15
16 host micro2 {
17 hardware ethernet 88:3D:BE:00:C7:00;
18 fixed-address 192.168.X.214;
19 }
20 }
Captulo 5 #CP - 48
5.'. 1xerc2cios tericos
1P 9# servidor +:C2 precisa ser necessaria#ente o ateEa? da redeU
./pli<ue.
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P 2ode#os ter #ais de u# servidor de +:C2 e# u#a redeU ./pli<ue.
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Suais so as trQs 6or#as de alocao enderea#ento I2U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
5.). Laboratrio
1. )etire o dae#on de iniciali;ao do +:C2 do runlevelL
2. )einicie a #*<uina e veja se o servio do +:C2 est* inativo.
Captulo 6 $%P - 49
Captulo 6
FP
'.1. Objetivos
Instalar e confurar u# servidor ,02L
.ntender as di6erenas entre ,02 passivo e ativoL
9tili;ar co#andos de ,02 para doEnload e uploadL
2er#itir a utili;ao do ,02 co# usu*rio anbni#o.
'.2. Introduo terica
O ,02 ,ile 0rans6er 2rotocol K u# protocolo si#ples para trans6erQncia de
ar<uivos. O cliente ,02 6a; u#a solicitao ao servidor ,02M a seo K estabelecida e
ento K solicitado o usu*rio e sen%a v*lidos no caso de u# ,02 autenticadoM ouM caso
este servidor per#ita naveao anbni#aM basta entrar co#o o usu*rio ]anon?#ous]
e u# endereo de e=#ail <ual<uer co#o sen%a. O ,02 pode atuar co#o servidor ativo
ou passivo.
4o #odo ativoM os co#andos so enviados por u#a porta alta pelo clienteM e so
recebidas pela porta 21 no servidorM en<uanto <ue os dados so trans#itidos pelo
servidor ao cliente atravKs da porta 2&. O proble#a desta i#ple#entao K <ue os
dados pode# ser barrados por u# ,ireEall de acordo co# as reras estabelecidas
pelo Ad#inistrador de -iste#as.
Captulo 6 $%P - 50
c* no #odo passivoM os co#andos ta#bK# so enviados para o servidor atravKs
de u#a porta alta pelo clienteM e so recebidas na porta 21 do servidor. 4este
#o#entoM o cliente avisa ao servidor <ue ele deve utili;ar o #odo passivo atravKs do
co#ando ]2A-5]M e ento os dados sero enviados utili;ando portas altas tanto pelo
cliente <uando pelo servidor. 4este casoM no te#os #ais proble#as co# o freEall
no lado do clienteM porK#M te#os <ue %abilitar a utili;ao de portas altas no servidorM
o <ue pode erar #uitos proble#as. ,eli;#enteM na confurao do servidor ,02
pode#os especifcar o rane de portas <ue o servidor deve utili;arM #ini#i;ando
assi# o proble#a no lado do servidor.
1obre seguran-a/ um dos "rinci"ais "roblemas do >L* 0 7ue a maioria dos
servidores n.o im"lementa cri"tografa/ ent.o/ caso voc; dese=a um
ambiente seguro com >L*/ 0 necessCrio a im"lementa-.o de cri"tografa/
como 4"en11< ou L<1.
'.. 5r+tica diri#ida
$.3.1. %ervidor &'P
1) 0eri'que se vocO &ossui o servidor &roft&d instalado em seu
sistema:
# dpkg -l proftpd
2) 0amos instal*lo com o a&titude:
# aptitude install proftpd
Red Hat:
@ "lataforma Red Hat utili9a o vsft"d "or "adr.o.
Captulo 6 $%P - 51
.) "ara con'gurar o seu servidor FL"/ edite o arquivo de con'gura(o
e altere as diretivas listadas a seguir:
# vim /etc/proftpd/proftpd.conf
+) "ara trabal%ar em modo standalone:
ServerType standalone
8) #e'na o valor &adr(o de Q6ASJ &ara grava(o:
Umask 022 022
9) #e'na o nBmero m-imo de logins simultKneos:
MaxInstances 20
:) Habilite at7 8 cone-3es de usurios anonAmous:
MaxClients 5
Cada usu*rio do ,02 pode ter u#a #ensae# de loin di6erente. Crie o ar<uivo
Eelco#e.#s na %o#e do usu*rio.
;) 0ocO &ode usar o arquivo de boas vindas &ara logins anSnimos
/%ome/ft&/<elcome.msg como base:
# cp /home/ftp/welcome.msg /home/aluno
.dite o ar<uivo copiado7
# vim /home/aluno/welcome.msg
Inicie o servio do 2ro6tpd7
# invoke-rc.d proftpd stop
# invoke-rc.d proftpd start
Captulo 6 $%P - 52
C) 0eri'que em qual &orta o servidor FL" est escutando:
# netstat -nltup
'.4. !onectando=se a u% servidor /35 co%o c$iente
9# servidor ,02 pode ser usando de duas 6or#as7
Lradicional = 4este 6or#atoM o servidor aceita cone/8es de u# usu*rio e sen%a
v*lidos para liberar u# s%ell para ele.
AnonAmous = O -ervidor ,02 co# anon?#ous K #uito utili;ado na Internet
pelo #otivo de no ser necess*rio ter u# usu*rio no servidor. +esta 6or#aM o
usu*rio pode abrir u# broEser e c%a#ar o endereo 6tp7@@servidor para ter
acesso ao diretrio disponibili;ado pelo servio. Deral#enteM esse diretrio K o
%o#e do usu*rio ,02 <ue no +ebian K @%o#e@6tp.
1) @onecte*se ao servidor FL" do colega ao lado/ fornecendo o nome
de usurio aluno e a sen%a &adr(o:
# ftp 192.168.200.X
2) 0eri'que se a cone-(o foi bem sucedida e encerre a sess(o.
ftp> quit
.) Agora conecte*se como um usurio anonAmous/ fornecendo um e*
mail qualquer como sen%a.
# ftp 192.168.200.x
Connected to localhost.
220 ProFTPD 1.3.0 Server (Debian) [::ffff:127.0.0.1]Name
(localhost:aluno): anonymous
331 Password required for anonymous.
Password:
Captulo 6 $%P - 53
+) A cone-(o foi recusada &orque o &adr(o do "roft&d 7 n(o aceitar
cone-3es anSnimas. 0amos %abilitar a navega(o anSnima. :)
# vim /etc/proftpd.conf
0ire u# co#ent*rio por lin%aM da lin%a 132 atK o fnal do ar<uivo7
# <Anonymous ~ftp>
136 #User ftp
137 #Group nogroup
138 ## We want clients to be able to login with "anonymous" as well as
"ftp"
139 #UserAlias anonymous ftp
140 ## Cosmetic changes, all files belongs to ftp user
141 #DirFakeUser on ftp
142 #DirFakeGroup on ftp
143 #
144 #RequireValidShell off
145 #
146 ## Limit the maximum number of anonymous logins
147 #MaxClients10
...
At o final do arquivo retirar um # comentrio por linha.
8) 1einicie o servio &ara que as altera3es ten%am efeito:
# invoke-rc.d proftpd restart
9) Lente novamente a cone-(o como usurio anSnimo. Agora dever
funcionar. 0e>a o quadro abai-o:
# ftp 192.168.200.X
Name (localhost:aluno): anonymous
Password:
Continue loado co#o usu*rio anbni#o. Ire#os 6a;er aluns testes a seuir.
Captulo 6 $%P - 54
'.5. !o%andos /35
Os servidores de ,02 #uito rara#ente #uda#M #as novos prora#as clientes
,02 aparece# co# bastante reularidade. .stes clientes varia# no nN#ero de
co#andos <ue i#ple#enta#. A #aioria dos clientes ,02 co#erciais i#ple#enta#
apenas u# pe<ueno subrupo de co#andos ,02. 3es#o <ue o ,02 seja u# protocolo
orientado [ lin%a de co#andosM a nova erao dos clientes ,02 esconde esta
orientao nu# a#biente r*fco #uitas ve;es bastante desenvolvido.
As inter6aces clientes do ,02 do >-+ 94IG e do D49@1inu/ possue# #uitos
co#andosM aluns deles arcaicos e se# utilidade %oje e# diaM co#o por e/e#plo o
tene/ e o carriae control. c* outros so bastante utili;ados7 cdM dirM lsM etM #etM put
e #put.
4s comandos listados abaixo "odem ser cobrados na "rova de certifca-.o.
Abai/o esto listados aluns dos #ais utili;ados co#andos ,027
%el& = 1ista os co#andos disponveis. 9# sinbni#o K U
%el& @6# = 3ostra u#a ajuda para o co#ando C3+
ls = 1ista os a<uivos no servidor. 9# sinbni#o K dir
cd = 0roca de diretrio no servidor
lcd = 0roca de diretrio da #*<uina local
Tls = 1ista os ar<uivos da #*<uina local
T@6# = ./ecuta na #*<uina local o co#ando C3+
get = ,a; doEnload de u# ar<uivo do servidor para a #*<uina local.
mget = ,a; doEnload de #ais de u# ar<uivo.
&ut = ,a; upload de u# ar<uivo da #*<uina local para o servidor.
m&ut = ,a; upload de #ais de u# ar<uivo.
Captulo 6 $%P - 55
.nto co#o usu*rio anbni#oM va#os 6a;er aluns testes7
1) ,iste o conteBdo do servidor:
ftp> ls
2) ,iste o conteBdo do seu diret)rio local:
ftp> !ls
.) Faa o do<nload de algum arquivo:
ftp> get ARQUIVO
+) 0eri'que se o arquivo foi co&iado:
ftp> !ls
8) Lente agora fa2er o u&load de um arquivo:
ftp> put ARQUIVO
2or padroM usu*rios anbni#os no deve# ter per#isso para 6a;er upload de
ar<uivos.
9) Encerre a sess(o e logue*se em seguida como um usurio vlido no
servidor FL" da mquina de algum colega:
ftp> quit
221 Goodbye.
# ftp 192.168.200.X
0ente aora 6a;er o upload do ar<uivo. +ever* 6uncionar desta ve;.
:) Faa o do<nload de vrios arquivos:
ftp> mget *
4ote <ue K e/iida a confr#ao para cada ar<uivo copiadoM o <ue pode ser
incb#odo.
Captulo 6 $%P - 56
;) #esligue o modo interativo/ e tente novamente:
ftp> prompt
Interactive mode off.
ftp> mget *
C) Faa o u&load de vrios arquivos:
ftp> mput *
1E) 0eri'que o log de atividade do FL":
# less /var/log/proftpd/xferlog
'.'. 1xerc2cios tericos
1P 2ara <ue serve a porta 6tp=dataU
????????????????????????????????????????????????????????????????????????????????
2P Sual a di6erena dos #odos passivo e ativoU
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
3P .# ter#os de seuranaM <ual a #aior 6al%a do ,02U
????????????????????????????????????????????????????????????????????????????????
'.). Laboratrio
1. 2er#ita <ue o usu*rio anon?#ous poste dados e# u# diretrio c%a#ado
inco#inL
Captulo 7 &$' - 57
Captulo !
"F#
).1. Objetivos
Instalar o dae#on 4,-L
.ntender a confurao do 4,-L
./portar u# diretrio usando 4,-.
).2. Introduo terica
O 4,- 4etEorB ,ile -?ste#M K u# siste#a de ar<uivos especial capa; de
e/portar u# diretrio via rede.
Ao i#portar u# diretrioM a i#presso <ue o cliente te# K de <ue o diretrio
est* locali;ado no prprio co#putadorM o <ue torna o acesso e utili;ao do diretrio
transparente para o usu*rio fnalM o <ue torna o 4,- u#a soluo interessante para
centrali;ao de diretrios pessoais e recursos co#partil%ados e# redeM j* <ue as
opera8es de bacBup e #anuteno sero centrali;adas.
2ara <ue os clientes possa# acessar o servidor 4,- K necess*rio <ue os
seuintes servios esteja# sendo e/ecutados no servidor7
Captulo 7 &$' - 58
nfsd = -ervio 4,- <ue atende as re<uisi8es dos clientes 4,-L
mountd = -ervio <ue e/ecuta as solicita8es de #ontae# dos clientes 4,-L
&ortma& = -ervio <ue per#ite <ue clientes 4,- descubra# <ual porta o
servidor 4,- est* utili;ando.
).. 5r+tica -iri#ida
(.3.1. Insta)a"#o e confgura"#o do N&%
SE10!#517
1) $o #ebian/ basta instalar o &acote nfs*4ernel*server que os outros
ser(o instalados:
# aptitude install nfs-kernel-server
2) Agora &odemos determinar quais diret)rios &retendemos
com&artil%ar/ editando o arquivo /etc/e-&orts:
# vim /etc/exports
.) Sinta-e do arquivo:
/diretrio_compartilhado
192.168.200.0/24(rw,no_root_squash,subtree_check)
/outro_diretrio 192.168.100.1(ro,root_squash)
@ "rova de certifca-.o "ode conter "erguntas sobre a confgura-.o de um
servidor E>1
Captulo 7 &$' - 59
Eote as o"-?es rootMs7uas e noMrootMs7uas:
@ o"-.o rootMs7uas n.o "ermite 7ue o root local tena "oderes
administrativos dentro do diret+rio com"artilado/ ou se=a/ 0 como se o root
("erdesse os "oderes( sobre 7ual7uer o"era-.o na7uele diret+rio.
NC a o"-.o noMrootMs7uas "ermite 7ue o root local administre a7uele
diret+rio/ "odendo causar s0rios "roblemas/ =C 7ue o root local terC "oderes
administrativos em um diret+rio com"artilado/ "odendo a"agar ar7uivos
de outros usuCrios/ ler documentos e mudar as "ermiss?es.
+) @rie o diret)rio /srv/nfs &ara ser e-&ortado e em seguida/ adicione
alguns arquivos nele:
# mkdir -p /srv/nfs
# cp /etc/apt/* /srv/nfs
8) Edite o arquivo /etc/e-&orts &ara que o diret)rio criado se>a
e-&ortado:
/srv/nfs 192.168.200.0/24(rw,root_squash)
9) 1einicie o servio $FS:
# invoke-rc.d portmap restart
# invoke-rc.d nfs-kernel-server restart
:) 0eri'cando em quais &ortas locais o nfs est trabal%ando:
# rpcinfo -p localhost
programa verso protocoloporta
100000 2tcp 111 portmapper
100024 1udp 722 status
100003 2udp2049 nfs
Captulo 7 &$' - 60
@,!E$LE:
1) $a mquina cliente/ basta instalarmos o &acote nfs*client:
# aptitude install nfs-common
2) 0eri'que todos os diret)rios com&artil%ados &elo colega atrav7s do
comando:
# showmount -e 192.168.200.X
.) @rie um &onto de montagem:
# mkdir /mnt/nfs
+) 6onte o diret)rio com&artil%ado:
# mount -t nfs 192.168.200.X:/srv/nfs /mnt/nfs
8) "odemos veri'car todas as cone-3es com o servidor:
# showmount -a 192.168.200.X
9) 0isuali2e tamb7m com o comando mount os &ontos de montagem :
# mount
:) E-&lore o diret)rio remoto:
# ls /mnt/nfs
Captulo 7 &$' - 61
;) @omo administrador/ tente remover algum arquivo do diret)rio
remoto:
# cd /mnt/nfs
# rm ARQUIVO
SE10!#51:
Co#o in6or#adoM por padroM o 4,- assu#e a opo rootVs<uas% <ue no
reZete os direitos de ad#inistrador aos clientes. 5a#os alterar isso e 6a;er aluns
testes.
1) Edite o arquivo /etc/e-&orts e acrescente:
/srv/nfs 192.168.200.0/24(rw,no_root_squash)
2) $(o 7 necessrio reiniciar o $FS. 5 comando e-&ortfs &ermite
gerenciar os diret)rios com&artil%ados de forma dinKmica:
# exportfs -r
@ o"-.o -r fa9 com 7ue o ar7uivo /etc/ex"orts se=a relido. Konsulte a
man"age do ex"ortfs "ara saber sobre outras o"-?es 7ue "ermitem
ex"ortar novos diret+rios sem a necessidade de alterar o ar7uivo
/etc/ex"orts ou reiniciar o E>1.
@,!E$LE:
AoraM na #*<uina cliente tente nova#ente re#over alu# ar<uivo.
1) Faa este teste como administrador:
# cd /mnt/nfs
# rm ARQUIVO
Observe <ue no %* a necessidade de re#ontar o siste#a de ar<uivos
co#partil%adoM toda alterao 6oi 6eita de 6or#a dinT#ica.
Captulo 7 &$' - 62
).4. 1xerc2cios tericos
1P 2ara <ue serve a opo noVrootVs<uas% no ar<uivo @etc@e/portsU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Sual tipo de fles?ste# deve ser utili;ado co# o 4,-U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P 5ocQ centrali;ou os diretrios pessoais e# u# servidor. Co#o vocQ deve
confurar o cliente para <ue o co#partil%a#ento seja #ontado durante o
bootU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
).5. Laboratrio
1. Crie u# #es#o diretrio co# per#isso de escrita para u# I2 e so#ente
leitura para u# outro I2. ./porte esse diretrio atravKs do 4,-L
2. Crie u# co#partil%a#ento c%a#ado publico e e/porte=o para a rede
1!2.1'8.2&&.&@2".
Captulo 8 'e()i*o( 'AM+A - 63
Captulo $
#e%&i'o% #AM(A
,.1. Objetivos
.ntender as 6uncionalidades do -A3>AL
.ntender seu ar<uivo de confuraoL
Criar co#partil%a#ento de diretriosL
Criar u# servidor de autenticao.
,.2. Introduo terica
A sute -A3>A co#eou a ser desenvolvida por AndreE 0ridell e# 1!!2
co#o 6erra#enta para co#partil%a#ento de diretrios e ar<uivos entre #*<uinas
\ni/ e #a<uinas co# siste#a operacional AindoEs e O-@2M da I>3.
9tili;ando enen%aria reversa no protocolo -3>M -erver 3essae >locBM
AndreE 6oi capa; de i#ple#entar alu#as 6uncionalidades -3> e# #*<uinas \ni/.
3ais tardeM o I.0, bati;ou este conjunto de 6uncionalidades co#o CI,-M Co##on
Internet ,ile -?ste#. AlK# de pro#over esta interoperabilidadeM o -A3>A ta#bK# K
capa; de reali;ar alu#as tare6as citadas abai/o7
Co#partil%ar u# ou #ais tipos de siste#as de ar<uivosL
Co#partil%ar i#pressoras e# u#a rede 40M ou atuar co#o clienteL
Autenticao de clientes e# u# do#nio AindoEs.
Captulo 8 'e()i*o( 'AM+A - 64
A sute -A3>A precisa de trQs co#ponentes para reali;ar sua 6uno. -o
eles7
nmbd = )espons*vel pela resoluo de no#es
smbd = )espons*vel por co#partil%ar recursos
<inbind = Au/ilia na autenticao e# u# do#nio A+
,.. 5r+tica -iri#ida
1) 0amos instalar a suDte SA6UA/ algumas ferramentas au-iliares e o
&acote de documenta(o:
# a"titude install samba samba-doc smbclient smbfs
2) 0e>a o arquivo de con'gura(o/ e ten%a como %bito sem&re
guardar uma c)&ia do arquivo original:
# vim /etc/samba/smb.conf
# mv /etc/samba/smb.conf /etc/samba/smb.conf.original
Red Hat:
Ea "lataforma Red Hat/ o ar7uivo de confgura-.o do samba fca em
/etc/smb.conf
Captulo 8 'e()i*o( 'AM+A - 65
Ire#os aora erar u# novo ar<uivo @etc@sa#ba@s#b.con6 co# as op8es <ue
co#enta#os aci#a7
[global]
workgroup = microx
server string = Servidor de Arquivos
security = SHARE
wins support = Yes
[Publico]
comment = Diretorio Publico
path = /srv/samba/publico
force user = smbuser
force group = users
read only = No
guest ok = Yes
Corresponde#7
[global]
workgroup = Grupo de Trabalho;
server string = Comentrio para o servidor;
security = Compartilhamento sem a necessidade de controle de
usurios e senhas;
wins support = O samba se torna um Servidor Wins, resolve nome
para mquinas Windows.
[Publico]
comment = Adicionar comentrio ao compartilhamento;
path = Diretrio que ser utilizado para compartilhamento;
force user = Define um usurio padro que ser usado por todos que
acessarem este compartilhamento;
force group = Define um grupo padro que ser usado por todos que
acessarem este compartilhamento;
read only = Permisses de leitura e gravao;
guest ok = Define que usurios convidados tero acesso ao
compartilhamento.
Captulo 8 'e()i*o( 'AM+A - 66
.) 5 SA6UA oferece um comando &ara veri'car a sinta-e do arquivo
de con'gura(o. 0amos utili2*lo:
# testparm
+) $)s de'nimos que todo arquivo criado no com&artil%amento seria
do usurio smbuser e do gru&o users. 0amos criar este usurio e
alterar seu gru&o:
# useradd smbuser -g users
8) Lamb7m 7 necessrio criar o diret)rio que ser com&artil%ado:
# mkdir -p /srv/samba/publico
# chown smbuser:users /srv/samba/publico
9) 1einicie o SA6UA &ara que as altera3es ten%am efeito:
# invoke-rc.d samba stop
# invoke-rc.d samba start
:) 0eri'que se os daemons Gsmbd e nmbd) est(o atendendo
requisi3es:
# netstat -putan
;) 0eri'que o com&artil%amento:
# smbclient -L localhost
C) 0eri'que o com&artil%amento da mquina ao lado:
# smbclient -L 192.168.200.X
Captulo 8 'e()i*o( 'AM+A - 67
1E) Se tudo ocorreu bem/ &odemos montar o com&artil%amento/
escol%a uma das formas abai-o:
# smbmount //192.168.200.X/Publico /mnt
# mount -t cifs //192.168.200.X/Publico /mnt
11) @on'rme se o com&artil%amento foi montado/ e ent(o crie um
arquivo no com&artil%amento:
# mount
# touch /mnt/$HOSTNAME.txt
12) 0eri'que as &ermiss3es do arquivo criado &elo colega:
# ls -la /srv/samba/publico
,.4. Sa%ba co%o contro$ador de -o%2nio 5ri%+rio
Aora <ue j* esta#os #ais 6a#iliari;ados co# o -A3>AM pode#os confur*=
lo para atuar co#o u# Controlador de +o#nio 2ri#*rio.
.
@on'gura(o &ara "#@
@ maior vantagem de ter um controlador de dom8nios 1amba 0 ter a
estabilidade e Oexibilidade do <inux controlando os logins em uma rede
Aicrosoft.
2ara <ue isso seja possvelM ns ire#os editar o nosso ar<uivo
@etc@sa#ba@s#b.con6 de 6or#a o -a#ba f<ue apto a erenciar os loins e
co#putadores da rede.
Captulo 8 'e()i*o( 'AM+A - 68
Edite o seu arquivo /etc/samba/smb.conf &ara que ele 'que como o
e-em&lo abai-o:
1 [Global]
2 netbios name = SERVER
3 workgroup = EMPRESA
4 server string = Primary Domain Controller
5 log file = /var/log/samba/%m.log
6 max log size = 100
7 security = user
8 unix password sync = Yes
9 passwd program = /usr/bin/passwd %u
10 smb passwd file = /etc/samba/smbpasswd
11 socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
12 domain logons = Yes
13 os level = 100
14 preferred master = Yes
15 domain master = Yes
16 local master = yes
17 logon drive = H:
18 logon home = \\%L\homes\%U
19 logon path = \\%L\Profiles\%U
1.) Agora/ vamos criar o com&artil%amento %omes que ir(o
arma2enar os dados &essoais dos usurios:
1 [homes]
2 comment = Diretorio Pessoal
3 path = /srv/samba/homes/%U
4 valid users = %U
5 read only = No
6 browseable = No
1. Co#partil%a#ento %o#esL
2. Co#ent*rioL
3. 1ocali;ao do co#partil%a#ento no servidorL
". 9su*rios <ue pode# acessar o co#partil%a#ento Od9 _ usu*rio da seoPL
$. -o#ente leitura desativadoL
Captulo 8 'e()i*o( 'AM+A - 69
'. 4o per#ite visuali;ao por outros usu*rios.
Hste=a atento a confgura-.o de com"artilamentos e suas o"-?es comunsP
1+) "or ultimo/ iremos criar os "er's 6)veis/ que arma2enar(o as
con'gura3es do usurio:
7 [Profiles]
8 comment = Perfis Moveis
9 path = /srv/samba/profiles
10 read only = No
11 guest ok = Yes
12 browseable = No
1. Co#partil%a#ento 2roflesL
2. Co#ent*rioL
3. 1ocali;ao do co#partil%a#entoM no servidorL
". -o#ente leitura desativadoL
$. :abilitando perfl #vel para usu*rio convidadoL
'. 4o per#ite visuali;ao por outros usu*rios.
Kom essas confgura-?es/ o 1@AG@ estC "ronto "ara atuar como
controlador de dom8nios/ "or0m/ serC necessCrio cadastrar os usuCrios e
com"utadores Qindows no samba/ criar as contas de usuCrios e acertar as
"ermiss?es dos usuCrios tamb0m. :amos ver isso na "r+xima se-.o.
18) 0amos manter o @om&artil%amento "Bblico aberto &ara todos:
[Publico]
path = /srv/samba/publico
browseable = yes
writeable = yes
public = yes
Captulo 8 'e()i*o( 'AM+A - 70
,.5. !adastrando usu+rios no 5-!
2ara <ue nossos usu*rios possa# AindoEs possa# e6etuar loin no do#nioM K
necess*rio <ue tanto o %ost <uanto o usu*rio esteja# cadastrados na conta nor#al
do co#putador e ta#bK# na conta -A3>A. 5a#os confurar isto.
1) 5 usurio root 7 quem &oder adicionar uma mquina a um
domDnio samba:
# smbpasswd -a root
2) Antes de &rosseguirmos/ 7 necessrio criar os diret)rios:
# mkdir /srv/samba/profiles
# mkdir /srv/samba/homes
.) E alterar suas &ermiss3es:
# chmod 775 /srv/samba/profiles
# chmod 775 /srv/samba/homes
# chown root:users /srv/samba/profiles
+) Lamb7m &recisamos criar o usurio que ir autenticar*se no
SA6UA:
# useradd -c "Seu Nome Completo" -m -d /srv/samba/homes/microx -g
users -s /bin/false microx
8) Atribuir a sen%a &ara o novo usurio:
# smbpasswd -a microx
Captulo 8 'e()i*o( 'AM+A - 71
9) E cadastrar a mquina que entrar no domDnio:
# useradd -c "HOSTNAME" -d /dev/null -s /bin/false hostname$
>i7ue atento com a <*,/ ele "ode cobrar os nomes dos modulo de
autentica-.o do samba:
/etc/"am.d/common-aut
aut re7uired /lib/security/"amMwinbind.so
account re7uired /lib/security/"amMwinbind.so
,.'. 1xerc2cios 3ericos
1P O 6a;e# os servios n#bd e s#bdU
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
2P O <ue K u# )oa#in 2rofle e <uais as suas vantaensU
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
,.). Laboratrio
1. I#ple#ente u# co#partil%a#ento pNblicoL
2. I#ple#ente o -a#ba co# 2+C.
Captulo 9 o,ain &a,e '-ste, - 72
Captulo )
Do*ain "a*e #+ste*
..1. Objetivos
.ntender sobre resoluo de no#esL
)eali;ar consultas +4-L
Confurar u#a ;ona de do#nio +4-L
Confurar u#a ;ona reversa de do#nio +4-.
..2. Introduo terica
4o fnal dos anos (&M a introduo do protocolo 0C2@I2 e conse<eente#ente a
r*pida e/panso da A)2Anet tornou obsoleto o siste#a de atuali;ao #anual e
centrali;ado do ar<uivo :O-0-.0G0M <ue contin%a u#a tabela associando todas
in6or#a8es sobre os %osts da A)2AnetM incluindo seus endereos. .ra si#ples
#antQ=lo para poucas centenas de #*<uinasM #as tornou=se i#pratic*vel para
#il%ares e #il%ares <ue se conectava# a rede e# u# processo e/ponencial de
cresci#ento. +iante desse proble#aM a direo da A)2Anet contratou pes<uisadores
para desenvolver u#a soluo <ue atendesse [s seuintes especifca8es7
2er#itir ad#inistrao local e ao #es#o te#po publicao lobalL
Darantir univocidade do no#e do %osts atravKs de u#a distribuio %ier*r<uica
de do#nios.
Captulo 9 o,ain &a,e '-ste, - 73
.# 1!8" 6oi liberado o +o#ain 4a#e -?ste#M descritos nas ),CCs 882 e 883.
Atual#ente estas ),CCs 6ora# suplantadas pelas de nN#eros 1&3" e 1&3$M alK# de
),CCs suple#entares de seuranaM ad#inistraoM atuali;ao dinT#ica de
servidores de no#eM e #uitas outras.
*.2.1. Caractersticas
>anco de dados %ier*r<uico e distribudo representado no 6or#ato de u#a
*rvore invertida e 12( nveisL
4a#espace de atK '3 caracteresL
Y capa; de associar outras in6or#a8es a u# %ost e no s seus endereos I2CsL
Ar<uitetura cliente@servidorL
Os clientes so c%a#ados resolversM e costu#a# ser bibliotecas do siste#a
operacional Olibresolv no linu/P co#partil%adas entre os #ais diversos
prora#asM co#o o pin ou o naveador EebL
+o outro lado esto os servidores de no#e +4- O+4- na#eserverPL
A rai; da *rvore te# no#e nulo ou ]]M por isso a representa#os si#ples#ente
co#o ponto O.PL
Os ns abai/o do do#nio rai; so c%a#ados do#nios de nvel #ais elevado
Otop level do#ainsPL
-ua <uantidade e no#es so i#postos pela ICA44 OInternet Corporation 6or
Captulo 9 o,ain &a,e '-ste, - 74
Assined 4a#es and 4u#bersPL
.les so divididos e# 01+ e cc01+M onde te#os respetiva#ente o do#nios
enKricos co#M eduM ovM #ilM etcL e os cdios de pases Ocountr?=codePM se#pre
co# duas letrasL
A ICA44 deleaM de acordo co# tratados internacionaisM a responsabilidade
pela ad#inistrao de u# cc01+L
4o caso do >rasilM essa responsabilidade pertence atual#ente ao CDI.brM #ais
especifca#ente ao ).DI-0)O.brL
9#a ve; deleado u# do#nioM sua nova autoridade pode delear subdo#nios
se# necessitar notifcar a entidade respons*vel pelo do#nio paiL
9# subdo#nio est* para u# subdiretrio assi# co#o u# do#nio est* para
u# diretrioM e u# %ost est* para u# ar<uivoL
,inal#enteM vale a pena #encionar <ue o ar<uivo :O-0-.0G0 6oi portado para
a#biente 9ni/ Oe posterior#ente 1inu/P co#o @etc@%osts. .ste ar<uivo K nor#al#ente
o pri#eiro a ser consultado pelo resolvedorM <ue ir* buscar por u# servidor de no#es
apenas e# caso de o %ost no ser encontrado no ar<uivo @etc@%osts.
... *eso$uo
-oluo +4- K o processo pelo <ual u# prora#a consulta dados a respeito
de u# %ostna#e. 4a rande #aioria das ve;esM consulta=se o endereo I2 deste %ostM
para ento e6etuar alu# tipo de cone/o [ alu# servioM co#o :002M -302. 2O2M
dentre inN#eros outros.
O processo de resoluoM a partir do pri#eiro na#eserver consultadoM pode
ser7
recursiva
iterativa
Captulo 9 o,ain &a,e '-ste, - 75
*.3.1. Reso)u"#o Recursiva
0o#ando u# naveador Eeb co#o e/e#ploM a resoluo para acesso a u#
Eebsite te# as seuintes etapas7
1. 9su*rio solicita acesso a EEE.e/e#plo.co#.brL
2. 4aveador c%eca se j* con%ece o endereo I2 do %ostna#e solicitado Ocac%e do
broEserPL
3. -e no con%eceM o naveador passa a solicitao para a biblioteca de resoluo
OresolverPL
Captulo 9 o,ain &a,e '-ste, - 76
". O resolver procura o %ostna#e solicitado no ar<uivo @etc@%osts localL
$. -e no encontrarM ele c%eca o ar<uivo @etc@resolv.con6 para saber a <uais
na#eservers deve solicitar a in6or#aoL
'. O resolver repassa a solicitao ao pri#eiro na#eserver da listaM e loo aps
para o pr/i#o atK o f# da listaM auardando por u#a resposta de <ual<uer
u# delesL
(. O servidor de no#es acionado consulta seu cac%eM se %ouverL
8. -e no encontrar e# seu cac%eM o servidor e# <uesto vai direta#ente ao
servidor rai; e trans6ere a consulta OEEE.e/e#plo.co#.brUPL
!. O servidor rai; no 6a; cac%eM e ta#bK# no K autoridade sobre ;onas de bai/o
nvelM ento ele apenas responde u#a parte da <uesto7 ]4o sei <ue# KM #as
sei <ue# pode responder #el%or7 br.]L
1&. O servidor de no#es reenvia a consulta para o servidor .br.
OEEE.e/e#plo.co#.brUPL
11. .br retorna o #es#o tipo de respostaM porK# co#o u#a dica #ais
pr/i#a7 ]4o sei <ue# KM #as sei <ue# pode responder #el%or7 co#.br.]L
12. 2asso 1& e 11 so e6etuados #ais u#a ve;M e aora a resposta K ]4o sei
<ue# KM #as sei <ue# pode responder #el%or7 e/e#plo.co#.br.]L
13. Aps repetir o passo 1&M fnal#ente a resposta ser* da autoridade sobre o
do#nio e/e#plo.co#.br. 5ai ser respondido o I2M junta#ente ao 001 do
reistroM ou ser* respondido ]ine/istente]L
1". O servidor de no#es 6ar* cac%e da respostaM ao #es#o te#po <ue a
repassa para o resolvedor oriinalL
1$. O resolvedor repassa a resposta para o naveadorL
1'. & naveador inicia u#a cone/o :002 co# o I2 descoberto.
Konceitos de DE1 e a confgura-.o do DE1 em <inux utili9ando Gind$/ s.o
cobrados na *rova do <*, %!# 3 "eso%.
Captulo 9 o,ain &a,e '-ste, - 77
*.3.2. Reso)u"#o Iterativa
.n<uanto o servidor cac%e do e/e#plo aci#a e/ecuta u# processo recursivo
de consultas sucessivas descendo a *rvore atK a autoridade capa; de responder
defnitiva#ente ao <uestiona#ento apresentadoM os servidores ].]M ]br.]M ]co#.br.]M
apenas in6or#a# <ue con%ece# aluK# #ais preciso <ue eles. .ssa K u#a consulta
iterativa. IteraoM nesse casoM sinifca ]apontar para o #ais pr/i#o con%ecido].
..4. 6r>uivo ?etc?&osts
+erivado do ar<uivo :O-0-.0G0 oriinalM a<uele <ue era atuali;ado e
distribudo antes do suri#ento do +o#ain 4a#e -?ste#M o ar<uivo @etc@%osts
continua tendo u# papel #uito i#portante no processo de resoluo. 4o passo a
passo descrito anterior#enteM observe <ue ele K a pri#eira 6onte de consulta do
resolver.
.ste co#porta#ento pode ser #odifcado atravKs do ar<uivo @etc@nssEitc%M
porK#M isso s seria 6eito e# u# cen*rio #uito particular. 2ode#os considerar <ue
<uase a totalidade dos siste#as \ni/ vo seuir a orde# de resoluo padro.
-endo assi#M K bo# con%ecer a sinta/e desse ar<uivo7
Endereco_IP hostname_canonico [aliases...]
192.168.200.254 gateway.com.br gateway
-o possveis u# endereo I2 por lin%aM seuido de u# endereo canbnico e
opcional#ente aliases. O no#e de %ost canbnico pode ser <ual<uer no#e no 6or#ato
+4-M porK#M e# aluns casosM co#o o de servidores de e=#ailsM K ade<uado <ue os
I2s presentes nesta #*<uina ten%a# u# ,S+4 pertinente. ,ull=Sualifed +o#ain
4a#e K u# %ostna#e <ue identifca se# a#bieidade a posio da<uele n dentro
da *rvore +4-.
2or essa ra;oM u# ,S+4 deve ter#inar co# u# ].]M <ue representa a rai; da
*rvore. O aliases pode# ser outros %ostna#es canbnicosM ou si#ples suf/osM para
si#plifcar a escrita de deter#inados endereos. Aps a instalao do siste#aM o
ar<uivo %osts costu#a conter u#a entrada re6erente ao I2 da inter6ace loopbacBM e
u#a entrada para cada outra inter6ace presente na #*<uina para <ual u# endereo
6oi atribudo. 2or e/e#plo7
Captulo 9 o,ain &a,e '-ste, - 78
127.0.0.1 localhost
192.168.1.23 micro23.microx.com.br. micro23
2ode ser acrescentadas <uantas entradas 6ore# necess*riasM inclusive para
I2s e/ternos. Atual#enteM os siste#as baseados e# +ebian j* contK# entradas para
enderea#ento I2v'M <ue seue# a #es#a lica.
..5. /erra%entas de consu$ta
Caso ainda no esteja# presentesM va#os bai/ar instalar as 6erra#entas de
pes<uisa.
# a"titude install dnsutils
nsloo4u&
A I-C di; literal#enteM no #anual de utili;ao do >I4+7 ]+evido a sua
inter6ace #isteriosa e 6re<eente co#porta#ento inconsistenteM ns no
reco#enda#os o uso do nslooBup. 9se# o di no luar dele]. 2orK#M o pacote K
#antido pela prpria I-C e# no#e da leio de ad#inistradores <ue se %abituara# a
utili;ar o nslooBup co#o 6erra#enta de soluo de proble#as.
+entre suas vantaens est* o 6ato de ter u#a biblioteca de resoluo
independente do siste#a OresolvedorPM e consultar u# servidor por ve;M dentre os
listados no resolv.con6. 2ode dei/ar a consulta #ais lentaM #as torna a triae# #ais
control*vel.+entre os proble#as #ais crbnicos do nslooBup esto7 respostas con6usas
e erros indefnidos.
%ost
O co#ando %ost K concebido para dar respostas objetivasM li#itando=se na
#aioria dos casos a u#a s lin%a. 2orK#M repostas #ais detal%adas pode# ser
obtidas co# a utili;ao de parT#etros.
Ao contr*rio do diM o %ost consulta a searc% list do ar<uivo @etc@resolv.con6
Captulo 9 o,ain &a,e '-ste, - 79
dig
O co#ando di K o acrbni#o para do#ain in6or#ation roperM <ue sinifca
alo co#o ]a<uele <ue busca por in6or#a8es de do#nio no escuro]M e ao #es#o
te#poM a palavra di e# inlQs sinifca literal#ente ]escavar]. Ac%o <ue #encionar
estas curiosidades de#onstra o es6oro de i#ainao dos criadores do diM e no [
toaM ele K o co#ando de pes<uisa #ais poderoso no pacote de utilit*rios >I4+.
4o di %* de;enas de op8es e incont*veis co#bina8es entre elasM por isso
consultar o #anM e sobretudoM ter u# 6orte do#nio do 6unciona#ento do siste#a de
no#es de do#nio K necess*rio para do#in*=las.
O di no utili;a a opo searc% do @etc@resolv.con6M por isso K necess*rio
utili;ar ,S+4 e# todas as buscas.
..'. 5r+tica diri#ida
2ara perceber as vantaens e desvantaens dos co#andos a seuirM e/ecute=os
junta#ente co# o pro6essor e oua as suas e/plica8es.
1) 0amos comear &or um nsloo4u& interativo:
# nslookup
2) E-ibindo as con'gura3es do nsloo4u&:
> server
> set all
.) Uuscando &or registros de endereos !"/ entrega de e*mails/
autoridade sobre o domDnio e dados adicionais:
> www.uol.com.br.
> set type=MX
> gmail.com.
Captulo 9 o,ain &a,e '-ste, - 80
+) E-ibir as informa3es do registro do domDnio e S"F Gitem que
eremos estudar a frente):
> set type=SOA
> uol.com.br.
> set type=TXT
> terra.com.br.
8) Agora vamos e-&erimentar o ob>etivo comando %ost:
# host www
# host -v www.4linux.com.br.
# host -v -t mx 4linux.com.br
# host -v -t soa 4linux.com.br
# host -l -v -t any 4linux.com.br
9) E 'nalmente/ o VverborrgicoW comando dig:
# dig www
# dig www.4linux.com.br.
# dig @200.204.0.138 www.4linux.com.br.
# dig -t mx 4linux.com.br.
# dig -t soa 4linux.com.br.
# dig @192.168.0.254 exemplo.com.br axfr
# dig -x 200.212.122.137
# dig +trace www.4linux.com.br.
Captulo 9 o,ain &a,e '-ste, - 81
..). @IN-.
O >I4+ O>erBele? Internet 4a#e +o#ainP K o servidor de no#es utili;ado na
rande #aioria dos servidores da InternetM provendo u#a est*vel e robusta
ar<uitetura sobre a <ual as orani;a8es pode# construir sua estrutura de no#es.
1) "ara instalar o U!$#C no #ebian basta e-ecutar:
# a"titude install bind$
O ar<uivo de confurao do >I4+! c%a#a=se na#ed.con6M e nas
distribui8es )ed :at e -use ele fca e/ata#ente no diretrio @etc. 4o +ebianM
entretantoM este ar<uivo 6oi 6ra#entado e# trQs. O ar<uivo principal ainda c%a#a=se
na#ed.con6 #as contK# apenas confura8es est*ticas. .le utili;a a cl*usula include
para ane/ar os ar<uivos na#ed.con6.options e na#ed.con6.local. -endo <ue desses
doisM o pri#eiro serve para personali;ar todas op8es re6erentes ao 6unciona#ento
do prprio >I4+M en<uanto <ue o seundo serve para declarar todas as ;onas pelas
<uais este servidor deve responder.
# ls -lh /etc/bind
O ar<uivo db.root O@var@na#ed@na#ed.ca no )ed:atP relaciona os endereos
dos 13 servidores rai;M e K lido co#o ;ona %intM <ue ser* e/plicada adiante.
4 G,ED vai utili9ar a "orta 26/RD* "ara receber consultas/ a "orta 26/LK*
"ara transferir 9onas "ara servidores escravos/ a "orta $26/LK* "ara
receber comandos via rndc S7ue de"endem de caves cri"tografadasT/ e
"ortas ud" altas "odem ser dinamicamente atribu8das "ara efetuar
consultas em outros servidores.
2) 0amos observar a recursividade e as &ortas envolvidas utili2ando o
tc&dum&/ mas antes vamos veri'car as &ortas:
# netstat -nltup
Captulo 9 o,ain &a,e '-ste, - 82
.) Em um segundo terminal:
# a"titude install tc"dum"
+) E-ecute o sniXer tc&dum& &ara veri'car os &acotes saindo de uma
&orta alta at7 a &orta 8./ud&:
# tcpdump -i eth0 -n port 53
8) $o terminal anterior:
# dig @localhost -t any wikipedia.com
9) 5s logs do servio U!$# ser(o lanados/ &or &adr(o/ no arquivo
/var/log/daemon.log:
# tail /var/log/daemon.log
Eo Red Hat e 1use os eventos do servi-o ser.o logados diretamente no
/var/log/messages.
..,. Servidor cac&e
As bibliotecas do resolvedor da #aioria dos siste#as operacionais no so
capa;es de e/ecutar o processo de resoluo co#pletoM c%a#ado recursivoM co#o
vi#os aci#a. Ao invKs disso elas depende# de u# servidor inter#edi*rio co# essa
capacidade.
Suando nos conecta#os de casa direta#ente [ InternetM o servio +:C2 do
provedor se encarrea de nos atribuir o endereo de seus servidores cac%e. Caso
contr*rioM nosso resolver no teria a <ue# consultar e no conseuira#os navear.
4o entantoM #uitos ad#inistradores de rede utili;a# os I2s desses provedores
para confurar v*rias esta8es de trabal%o de u#a rede. O e6eito disto K <ue cada
estao vai 6a;er suas prprias consultas individuaisM #ultiplicando o volu#e de
Captulo 9 o,ain &a,e '-ste, - 83
dados tra6eados atravKs do linB de InternetM desperdiando te#po e ocupando
larura de banda.
Suanto #aior a redeM pior o i#pacto. A alternativa para evitar estes proble#as
K #anter u# servidor +4- cac%in onl?. -ervidores cac%e reserva# o resultado de
suas buscas na #e#ria pelo te#po li#ite estabelecido pela autoridade sobre o
do#nio consultado. +essa 6or#aM independente da <uantidade de #*<uinas da redeM
as consultas sero 6eitas na Internet apenas u#a ve; a cada intervalo de atuali;ao.
1) $osso servidor U!$# rec7m instalado > est o&erando como
servidor cac%e. "ara testar:
# dig @localhost -t soa fsf.org
2) 5bserve os dados no roda&7 da consulta e re&ita o comando:
# dig @localhost -t soa fsf.org
Observe o <uer? ti#e no rodapK da sada do di.
.) "ara que a &artir de agora todas nossas a&lica3es utili2em o
&otencial de nosso servidor cac%e/ edite o arquivo /etc/resolv.conf e
manten%a a&enas as lin%as a seguir:
# vi /etc/resolv.conf
nameserver 127.0.0.1
Captulo 9 o,ain &a,e '-ste, - 84
.... *estrin#indo consu$tas
9# cuidado #uito i#portante <ue deve#os to#ar co# servidores cac%e K
li#itar <ue# est* autori;ado a utili;ar esse servio. 2or padroM o nosso >I4+ est*
liberado para acesso pNblicoM ou sejaM se %ouver u#a inter6ace conectada
direta#ente a InternetM <ual<uer outro co#putador no #undo pode #andar nosso
servidor procurar u# deter#inado endereo. ,ica#os vulner*veis a abusos.
1) E-&erimente fa2er uma consulta atrav7s do servidor do seu colega:
# dig @192.168.200.x -t txt uol.com.br
2) "ara evitar este com&ortamento/ edite o arquivo
/etc/bind/named.conf.o&tions e acrescente a seguinte declara(o:
# vi /etc/bind/named.conf.options
allow-query { 127.0.0.1; 192.168.200.x; };
.) "ara carregar as modi'ca3es no Uind e-ecute:
# /etc/init.d/bind9 reload
+essa 6or#aM nosso servidor s responder* para consultas oriinadas
local#ente.
*ara carregar as modifca-?es nos ar7uivos confs do Gind:
# rndc reconfg
+) 1e&ita a e-&eriOncia com o colega:
# dig @192.168.200.x -t txt uol.com.br
Y possvel ser ainda #ais econb#ico e# ter#os de banda se ao invKs de
e/ecutar u#a busca recursiva a cada nova consultaM enca#in%ar a consulta para o
Captulo 9 o,ain &a,e '-ste, - 85
servidor disponibili;ado pelo provedor.
8) !sso &ode ser feito acrescentando ao named.conf.o&tions a clusula
for<arders com o i& do &rovedor:
# vi /etc/bind/named.conf.options
forwarders {200.176.2.10; };
4nde ,*MD4M*R4:HD4R 0 um servidor DE1 ca"a9 de fa9er consultas
recursivas.
..10. Servidor de Aonas
Cada do#nio na Internet te# sua autoridadeM <ue nada #ais K do <ue u#
servidor onde as in6or#a8es da<uele do#nio so criadasM #antidas ou alteradas.
3as co#o u# do#nio pode se sub=dividir e# inN#eros outros do#niosM sure u#
outro conceito7 fonas.
9#a ;ona K o conjunto dos %osts de u# do#nio sobre o <ual se #antK#
autoridade. 9#a ve; deleado u# subdo#nio a outra autoridadeM os %osts desse
do#nio pertence# a ;ona da<uela autoridadeM e no #ais a ;ona oriinal onde
inicia=se o subdo#nio.
Captulo 9 o,ain &a,e '-ste, - 86
*.1+.1. 'ipos de onas e Registros
.# relao as ;onasM o >I4+ pode operar de acordo co# ' tipos7 #asterM
slaveM stubM %intM 6orEard e deleation=onl?.
master = O >I4+ vai responder co#o autoridade sobre a<uele do#nio. Os
dados da ;ona sero criadosM publicados e ad#inistrados a partir dele.
slave = O >I4+ ta#bK# vai responder por esse do#nioM #as nen%u#a criao
ou alterao respectiva a essa ;ona ser* 6eita local#ente neste servidor. Os
dados sero se#pre trans6eridos de u# servidor #aster.
stub = .ste tipo de ;ona no K previsto e# nen%u#a ),C e 6oi i#ple#entado
apenas no bind. Asse#el%a=se a u#a ;ona slave #as replica do #aster apenas
os reistros do tipo 4-. .# desuso.
%int = .specfca para o >I4+ onde ele deve co#ear u#a busca recursiva
<uando estiver operando co#o cac%e. 2or padroM %* u#a ;ona %int criada co#
os endereos dos root servers.
for<ard = -erve para orientar o >I4+ a enca#in%ar a consulta sobre u#a
deter#inada ;ona para outro servidor e# especial. O enca#in%a#ento de
consultas ta#bK# pode ser especifcado de #aneira lobal no ar<uivo
na#ed.con6.options.
delegation*onlA = 2ara evitar abusos de alu#as autoridades sobre do#nios
de pri#eiro nvel OCO3M 4.0M O)DPM o >I4+ #antK# o tipo de ;ona ]deleao
apenas]. Sual<uer resposta <ue no ten%a u#a deleao e/plcita ou i#plicita
na seo autoridade ser* trans6or#ada e# u#a resposta 4G+O3AI4.
5a#os confurar nossa prpria ;ona +4- <ue vai se c%a#ar #icro/.co#.br.
2ode ser <ue na Internet j* e/ista u# do#nio co# este no#eM #as isso no i#porta
por<ue nossas consultas fcaro li#itadas ao laboratrio.
As ;onas deve# ser declaradas no ar<uivo na#ed.con6.local. 9#a ;ona #estre
precisaM no #ni#o do no#e do do#nioM tipo de ;ona e o ca#in%o para o banco de
dados de reistros. Suando apenas o no#e do ar<uivo K citadoM o servidor >I4+ vai
procur*=lo no diretrio defnido na opo director?M do ar<uivo na#ed.con6.options.
Captulo 9 o,ain &a,e '-ste, - 87
Isso sinifca <ueM por padroM o ca#in%o co#pleto corresponderia a
@var@cac%e@bind@db.#icro/
O conteNdo do banco de dados da ;ona <ue 6oi declarada ser* principal#ente
u#a sKrie de reistros de recursos Oresources recordsPM ou si#ples#enteM reistros.
4o entanto trQs diretivas so suportadas7
g001L
gO)IDI4L
gI4C19+..
3as co# e/ceo do g001M so rara#ente utili;adas.
Rm registro tem o seguinte formato:
dono ULL<V UclasseV ti"o dados.
dono = Y o no#e do reistro. Suando substitudo por u#a hM o dono K o
prprio do#nio. Caso o dono f<ue e# brancoM o >I4+ assu#e o no#e do
reistro i#ediata#ente superior.
LL, = 9# valor e# seundo para a per#anQncia dos dados deste reistro no
cac%e de u# servidor. )ara#ente utili;ado.
classe = 2ode# ser C:M :- ou I4. O padro K I4M de InternetM e no precisa ser
declarada.
ti&o = 4o #o#ento e/iste# #ais de 3& tipos de reistroM dentre os <uais
vere#os -OAM 4-M 3GM AM C4A3.M 0G0 e 20).
dados = +i6erentes tipos de dados so defnidos para di6erentes tipos de
reistros. 2ara u# reistro tipo A te#os u# endereo I2 por e/e#plo.
)ecente#enteM reistros do tipo 0G0 te# sido usados para au#entar o
controle contra spa#s. -o criados de acordo co# o 6or#ato defnido pelo projeto
-ender 2olic? ,ra#eEorBM ou si#ples#ente -2,.
Captulo 9 o,ain &a,e '-ste, - 88
O S"F di; <uais servidores pode# .45IA) e=#ails e# no#e do seu do#nio.
O objetivo K evitar <ue seu do#nio seja usado para 6orjar re#etentes 6alsos. Drandes
provedores j* adotara# o -2,M e cada ve; #ais outros do#nios ve# seuindo a
#es#a pr*tica. 0ende a tornar=se u#a i#posio. 3uito #ais antio <ue o -2,M e por
conse<uQnciaM u#a i#posio natural do ecossiste#a de e=#ailsM K arantir <ue o I2
do registro 6N ten%a endereo reverso. .sta K u#a 6or#a de c%ecar se o e=#ail
partiu de u# usu*rio do#Kstico cujo co#putador est* sendo usado co#o ;u#biM por
e/e#plo.
4or#al#enteM confurar o enderea#ento reverso no depende do
ad#inistrador do do#nioM e si# do provedor do linB. 2orK#M K possvel re<uisitar
autoridade sobre o bloco de I2s destinado [<uele linB. 5ai depender do provedor. 3as
co#o e# nosso caso esta#os utili;ando apenas endereos privadosM va#os assu#ir a
autoridade sobre todo o bloco 1!2.1'8.2&&@2".
..11. !on"#urao do Servidor @ind.
Aora ire#os confurar o bind!M le#brando <ue esta#os 6a;endo u# teste
internoM restrinindo as consultas apenas para local%ostM certif<ue=se dentro do
ar<uivo @etc@resolv.con6 e dentro do ar<uivo @etc@%osts esto corretosM e6etue teste
co# o co#ando pin. Ire#os prosseuir co# a confurao.
1) Acrescente as lin%as abai-o ao arquivo named.conf.local:
# vi /etc/bind/named.conf.local
zone "microx.com.br" {
type master;
file "db.microx";
};
zone "200.168.192.in-addr.arpa" {
type master;
file "rev.microx";
Captulo 9 o,ain &a,e '-ste, - 89
};
Aora <ue j* declara#os as duas ;onas pelas <uais nos tornare#os autoridade.
5a#os preenc%er o banco de dados de reistros.
2) @riaremos o banco de dados de registros de #$S/ teremos
servidores #$S/ e*mail/ <eb e ft&:
# vi /var/cache/bind/db.microx
1 $TTL 1h ; TTL default para todos os registros que no tiverem seu
prprio TTL.
2 @ IN SOAns1.microx.com.br. hostmaster.microx.com.br. (
3 2009090901 ; serial
4 1h ; refresh
5 15m ; retry
6 1w ; expire
7 1h) ; negative caching TTL
8 ;
9 ;
10 @ IN NS ns1.microx.com.br.
11 @ IN MX 10 mail.microx.com.br.
12 ns1 IN A 192.168.200.X
13 mail IN A 192.168.200.X
14 pop IN CNAME mail
15 smtp IN CNAME mail
16 www IN A 192.168.200.X
17 ftp IN CNAME www
18 @ IN A 192.168.200.X
19 @ IN TXT "v=spf1 a mx ip4:192.168.200.0/24 -all"
1obre o registro 14@/ v.o algumas ex"lica-?es:
serial = Y a re6erQncia para os slaves sabere# se a ;ona so6reu altera8esL
refres% = 0e#po <ue o servidor secund*rio vai auardar atK c%ecar se %*
atuali;a8es no servidor pri#*rioL
Captulo 9 o,ain &a,e '-ste, - 90
retrA = .# caso de 6al%a do re6res%M o te#po atK a pr/i#a verifcaoL
e-&ire = O te#po <ue o secund*rio auardar* o pri#*rio voltarM se esotarM o
secund*rio para de responder por essa ;onaL
negative cac%ing LL, = -e a ;ona e/pirarM esse ser* o te#po pelo <ual u#
servidor cac%e ar#a;enar* a in6or#ao 4G+O3AI4 antes de iniciar u#a
nova busca recursiva. O #*/i#o so 3 %oras.
@gora sobre o registro LWL:
a = Sual<uer reistro A desse do#nioL
m- = O servidor de e=#ailL
1C2.19;.2EE/2+ = Sual<uer %ost da rede 1!2.1'8.2&&.&@2"M <ual<uer outra
orie#M descarte.
.) Agora iremos con'gurar a 2ona reversa/ &ara com&letar nosso
registro 6N:
# vi /var/cache/bind/rev.microx
1 $TTL 1h ; TTL default para todos os registros que no tiverem seu
prprio TTL.
2 @ IN SOAns1.microx.com.br. hostmaster.microx.com.br. (
3 2009090901 ; serial
4 1h ; refresh
5 15m ; retry
6 1w ; expire
7 1h) ; negative caching TTL
8 ;
9 ;
10 @ IN NS ns1.microx.com.br.
11 X IN PTR mail.microx.com.br.
Captulo 9 o,ain &a,e '-ste, - 91
Hstamos "rontos "ara a"licar nossas confgura-?es. Aas "ara observar se
deu tudo certo ou n.o/ num segundo terminal inicie o comando:
# tail -f /var/log/daemon.log
+) 0oltando ao terminal anterior:
# /etc/init.d/bind9 restart
5erif<ue no seundo ter#inal se o lo no acusa nen%u# proble#a.
8) Se o servio levantou sem erros/ teste a resolu(o do seu domDnio:
# ping www.microx.com.br
# dig -t mx microx.com.br
# dig -x 192.168.200.x
# dig @localhost www.kernel.org
*ara registrarmos um dom8nio "Bblico/ "recisamos de "elo menos dois
servidores DE1 res"ondendo "elo nosso dom8nio. ,sso signifca um servidor
mestre e "elo menos um servidor escravo. @ exig;ncia 0 uma forma de
garantir 7ue seu dom8nio estarC sem"re dis"on8vel. 1e um servidor "arar/ o
outro continua res"ondendo.
-e os servidores estivere# e# eorafca#ente separadosM isso arante ainda
#ais disponibilidadeM pois #es#o <ue u# linB caiaM o outro certa#ente ainda estar*
disponvel. 1ooM nossa aula de >I4+ no estaria co#pleta antes de confurar u#
servidor escravo.
4a verdadeM u# #es#o servidor rodando >I4+ pode ser si#ultanea#ente
#estre para aluns do#niosM escravo para outrosM e cac%e para todo o resto.
Captulo 9 o,ain &a,e '-ste, - 92
9) Sendo assim/ cada um de n)s vai se tornar escravo do colega a
esquerda.
# vi /etc/bind/named.conf.local
Acrescente a ;ona <ue para <ual vocQ ser* escravo7
1 zone "nomedocolega.com.br" {
2 type slave;
3 masters { 192.168.200.x; };
4 file "sec.nomedocolega";
5 };
:) Ative a con'gura(o:
# /etc/init.d/bind9 reload
;) 5bserve nos logs se a 2ona foi transferida. Em caso &ositivo/ ve>a o
conteBdo do arquivo criado:
# cat /var/cache/bind/sec.nomedocolega
Aora responda7 -e vocQ conseuiu bai/ar a ;ona do seu coleaM <ue# #ais
conseuiriaU
*ara evitar abusos "odemos adicionar ao ar7uivo
/etc/bind/named.conf.o"tions Sconfgura-.o globalT:
C) Ent(o &ara validar as a3es de segurana/ editamos:
# vim /etc/bind/named.conf.options
allow-transfer { none; };
Captulo 9 o,ain &a,e '-ste, - 93
1E) Ficamos &rotegidos contra en-eridos/ mas agora &recisamos
autori2ar nossos escravos acrescentando:
# vim /etc/bind/named.conf.options
Onde G K o I2 do colea. 4o dia=a=dia do ser* do outro servidor.
allow-transfer { 192.168.200.x; 192.168.200.X;};
5a#os aproveitar e tornar #ais r*pida a atuali;aoM enviando u#a
notifcao se#pre <ue f;er#os u#a #udana na ;onaM ao invKs de esperar o re6res%
dos nossos escravos.
11) Uasta acrescentar em cada 2ona/ dentro do
/etc/bind/named.con.local:
also-notify { 192.168.200.x; };
..12. 1xerc2cios tericos
1P O <ue K +4- reverso e <ual sua i#portTnciaU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Co#o per#itir apenas trans6erQncia de ;onas para o I2 1!2.1'8.2&&.1&&U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
Captulo 9 o,ain &a,e '-ste, - 94
3P Co#o per#itir consultas recursivas apenas para a nossa redeU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P O <ue K -2,M e <ual sua relao co# o -ervidor +4-U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
..1. Laboratrio
1. Criar cria u#a vieE e/clusiva da ;ona #icro/.co#.br para consultas da rede
1&.&.&.&@2"L
Captulo 10 Apac.e - 95
Captulo 1,
Apac-e
10.1. Objetivos
.ntender a confurao b*sica do apac%e2L
:abilitar a linuae# 2:2$ no apac%e2L
Confurar do#nios virtuaisL
:abilitar suporte a --1.
10.2. Introduo terica
O Aeb -erver Apac%e K u# es6oro co#unit*rio 6eito por desenvolvedores ao
redor do #undoM no <ual o objetivo consiste e# desenvolver u# Aeb -erver de
cdio 6onte abertoM est*vel e seuro. .# 1!!'M tornou=se u# dos Aeb -ervers #ais
populares no #undoM eM desde entoM #antK# sua posio co#o o servidor Eeb co# a
#aior base instalada no #undo.
-eundo u#a pes<uisa 6eita pelo site 4etCra6tM o Apac%e est* servindo e#
#KdiaM $&d dos sites pes<uisados. Isso s 6oi possvel raas a u#a sKrie de
<ualidadesM das <uais alu#as sero listadas na lista abai/o7
Y so6tEare livreM podendo ser #odifcado e adptadoL
-uporta v*rias linuaensM co#o 2:2M 2?t%onM )ub?M 2erlM inclusive A-2 .4.0L
3ulti plata6or#aL
Captulo 10 Apac.e - 96
2ossu suporte a v*rias 6uncionalidades providas por #dulosL
2ode trabal%ar co# #ulti t%reads ou #ulti processos.
10.. 454 Borker e 454 5re/ork
+e acordo co# a docu#entao ofcial do projeto Apac%e#p#M K possvel
escol%er entre alu#as confura8es <ue ajuda# a oti#i;ar a per6or#ance ou
#anter a co#patibilidade co# aplica8es antiasM por e/e#plo. 5a#os enteder as
particularidades do #odo 2re,orB e AorBer.
1+.3.1. ,P, Pre &or-
4este #odoM o Apac%e trabal%ar* co# a i#ple#entao de #ulti processosM
de acordo co# a estrutura cl*ssica de u# processo de 9ni/M si#ilar a verso 1.3 do
Aeb server e# <uesto.
Assi# sendoM u# Nnico processo ser* respons*vel por e/ecutar novos
processos <ue sero utili;ados para auardar novas cone/8es e responder as
re<uisi8es e/istentes. .ste #odo K ideal para <ue# precisa #anter co#patibilidade
co# aplica8es e bibliotecas <ue no suporta# o o #odo t%read.
1+.3.2. ,P, .or-er
4o #odo 323 AorBerM o Apac%e trabal%ar* co# u#a i#ple#entao #ista
de processos e t%readsM o <ue possibilita atenteder #ais cone/8es si#ultaneas co#
u# custo #enor de %ardEareM j* <ue t%readsM por defnioM so #ais velo;es <ue
processos.
4este #odoM o apac%e #antK# u#a sKrie de t%reads ociosasM 6a;endo co# <ue
Captulo 10 Apac.e - 97
novas cone/8es seja# processadas e respondidas de u#a #aneira #ais r*pida do
<ue no #odo 2re ,orB. In6eli;#enteM ne# toda aplicao se d* be# co# t%readsM
co#o o 2:2$M por e/e#plo.

10.4. 5r+tica diri#ida
1+./.1. Insta)a"#o do Apac0e 2
1) 0amos instalar o A&ac%e 2:
# aptitude install apache2
4 @"ace% no Debian 0 dividido em uma s0rie de ar7uivos e diret+rios.
:amos conecer estes ar7uivos e suas res"ectivas fun-?es:
/etc/a"ace%/a"ace%.conf - @r7uivo de confgura-.o "rinci"alX
/etc/a"ace%/modules.conf - @r7uivo de confgura-.o de m+dulosX
/etc/a"ace%/"orts.conf- @r7uivo de confgura-.o de "ortasX
/etc/a"ace%/sites-available - Konfgura-.o de sites dis"on8veisX
/etc/a"ace%/mods-available - Aodulos abilitadosX
2) Abra o arquivo de con'gur(o &ara que &ossamos visuali2ar as
&rinci&ais o&3es de con'gura(o do A&ac%e:
#vim /etc/apache2/apache2.conf
A vari*vel -erver)oot defne aonde o Apac%e deve procurar por seus ar<uivos
de confurao. 4o e/e#plo abai/oM os ar<uivos de confurao sero procurados
e# @etc@apac%e27
ServerRoot /etc/apache2
c* a variavel +ocu#ent)oot di; ao Apac%e aonde procurar os sites <ue deve
Captulo 10 Apac.e - 98
ser apresentados aos usu*rios. 4o e/#eploM os sites sero ar#a;enados e#
@var@EEE7
DocumentRoot /var/www
O usu*rio e rupo <ue e/ecuta o apac%e so defnidos pelas vari*veis abai/o7
User $APACHE_RUN_USERS
Group $APACHE_RUN_GROUP
Caso seja encontrado alu# erro durante o 6unciona#ento do Apac%eM o
#es#o ser* reistrado de acordo co# o desiinos da vari*vel .rror1oM co#o no
e/e#plo abai/o7
ErrorLog /var/log/apache2/error.log
.M ainda 6alando e# losM o Apac%e suporta a declarao de reistros
personli;ados atravKs do uso da vari*vel 1o,or#at7
LogFormat "%h %l %u %t \"%r\" %>s %b \"%Refereri\" \"%User-Agenti\""
combined
.) 5s logs/ &or &adr(o/ ser(o arma2enados no formato IcombinedI/
dentro do diret)rio /var/log/a&ac%e2/access.log/ e o formato
IcombinedI far o registro dos seguintes itens:
Y% = :ostna#e ou endereo I2 do visitanteL
Yl = :6enL
Yu = 4o#e de usu*rioM caso e/istaL
Yt = :or*rio de acessoL
Yr = )e<uisio solicitadaL
YZs = O resultado da solicitao L
Yb = O ta#an%o e# b?tes da respostaL
1efereri = O site anterior a visitaM se in6or#adoL
Captulo 10 Apac.e - 99
Qser*Agenti = O naveador do visitanteM se in6or#ado.
@ "rova "ode "erguntar sobre as variaveis Hrror<og/ Kustom<og/
1erverRoot e DocumentRoot.
10.5. 6justes do %du$o Borker e 5re/ork
Ainda dentro do ar<uivo de confurao do apac%eM e/iste# ajustes de
per6or#ance para os #dulos 323 AorBer e 323 2re6orB. 2or padroM o apac%e
ve# confurado para trabal%ar e# 323 AorBerM entoM va#os entender suas
confura8es7
1 StartServers 2
2 MaxClients 150
3 MinSpareThreads25
4 MaxSpareThreads75
5 ThreadsPerChild25
6 MaxRequestsPerChild0
A variavel StartServers confura o nN#ero inicial de servidoresL
A vari*vel 6a-@lientsM o nN#ero #*/i#o de cone/8es si#ultaneasL
A vari*vel 6inS&areL%readsM confura o valor #ni#o de t%reads e#
esperaL
A vari*vel 6a-S&areL%readsM confura o valor #*/i#o de t%reads e#
esperaL
. a var*vel 6a-1equest"er@%ildM confura o valor #*/i#o por
processo.
O #dulo 2re,orB ta#bK# possui ajustes si#ilares ao #dulo AorBer7
Captulo 10 Apac.e - 100
1 StartServers 5
2 MinSpareServers 5
3 MaxSpareServers10
4 MaxClients 150
5 MaxRequestsPerChild0
A variavel StartServers confura o nN#ero inicial de servidoresL
A vari*vel 6inS&areServerM confura o valor #ni#o de processos e#
esperaL
A vari*vel 6a-S&areL%readsM confura o valor #*/i#o de processo e#
esperaL
A vari*vel 6a-@lientsM o nN#ero #*/i#o de cone/8es si#ultaneasL
. a var*vel 6a-1equest"er@%ildM confura o valor #*/i#o por processo.
10.'. Se#urana
+entro do ar<uivo securit?M va#os colocar as reras de seurana7
# cd /etc/apache2
# vim conf.d/security
As vari*veis abai/o ajuda# a difcultar o processo de descoberta da verso do
servidor e siste#a operacional7
ServerSignature Off
ServerTokens Prod
TraceEnable Off
Captulo 10 Apac.e - 101
Aps e6etuar os ajustesM se necess*rioM reinicie o servidor apac%e7
invoke-rc.d apache2 restart
10.). Su(orte a 5<5
A linuae# de prora#ao 2:2 K u#a das #ais populares entre os
desenvolvedores Aeb. 3uitas 6erra#entas de blosM Aeb-ites e ta#bK# 6erra#entas
Eeb para ad#inistrao de servios e servidoresM co#o o 2%p1dapAd#inM necessita#
ter o 2:2$ confurado co#o prK re<uisito para instalao.
1) !nstalando o su&orte a "H"8:
# aptitude install php5 libapache2-mod-php5
2) 0eri'que se os m)dulos do "H"8 est(o ativados:
# ls -l /etc/apache2/mods-enabled
# apache2ctl -M
.) 5 "H"8 7 ativado &or &adr(o durante a instala(o do m)dulo/
&or7m/ caso necessrio/ %abilite o su&orte manualmente:
#a2enmod php5
Ea "lataforma Red Hat/ a abilita-.o de m+dulos 0 feita utili9ando o
comando system-confg-tt".
Captulo 10 Apac.e - 102
+) 1einicie o A&ac%e:
# /etc/init.d/apache2 restart
8) Lestando o "H"/ &ara testar/ crie um arquivo com o nome inde-.&%&
no diret)rio /var/<<</ com o conteBdo a seguir e abra no seu
bro<ser:
# vim /var/www/index.php
<?
phpinfo()
?>
AoraM acesse sua p*ina A.> e verif<ue o resultado.
4 ar7uivo /etc/""2/a"ace%/"".ini/ arma9ena as confgura-?es do
funcionamento do ""2 com a"ace%.
@ fun-.o do ar7uivo e seu "at com"leto "odem ser cobrados na <*,.
4 @"ace% e sua confgura-.o "rova %!% - "eso 6.
10.,. -o%2nios virtuais
9# +o#nio 5irtual K u#a 6uncionalidade <ue per#ite ao seu servido Aeb
responder co# u# ou #ais sites e# u# #es#o I2M o <ue possibilita acessar servios
e p*inas di6erentes e# u# #es#o servidorM apenas apontando a entrada +4-
correta nos ar<uivos de confurao.
Os do#nios virtuais deve# ser confurados neste dois diretrios7
/etc/a&ac%e2/sites*available7 4este diretrio fca# todos os ar<uivos de
confurao dos do#nios virtuaisL
Captulo 10 Apac.e - 103
/etc/a&ac%e2/sites*enabled7 4este diretrio fca# todos os do#nios
virtuais ativosM <ue na verdade so linBs si#blicos para os ar<uivos de
confurao locali;ados no diretrio citado anterior#ente.
1) 0amos criar um domDnio virtual:
# vim /etc/apache2/sites-available/www.microx.com.br
1 # Host Virtual
2
3 NameVirtualHostwww.microx.com.br
4
5 <VirtualHost www.microx.com.br>
6 DocumentRoot /var/www/microx.com.br
7 ServerName microx.com.br
8 ServerAdmin webmaster@microx.com.br
9 ErrorLog /var/log/apache2/microx.com.br-error.log
10 CustomLog /var/log/apache2/microx.com.br-access.log common
11 </VirtualHost>
@ "rova de certifca-.o "ode cobrar o uso de "arametros como Hrror<og e
sua fun-.o
2) @rie o diret)rio onde vai 'car %os&edado o domDnio virtual:
# mkdir /var/www/microx.com.br
.) #entro do diret)rio rec7m criado/ crie um arquivo c%amado
inde-.%tml:
#vim /var/www/microx.com.br/index.html
1 <html>
Captulo 10 Apac.e - 104
2 <title> Minha pgina <title>
3 <body>
4 Funciona! :)
5 </body>
6 </html>
+) "ara testar a sinta-e de seu arquivo de 0irtual Host:
# apache2ctl -S
8) Qtili2e o comando a2ensite &ara %abilitar o domDnio virtual rec7m
criado:
# a2ensite
9) 5 a&ac%e &ossui um comando &ara %abilitar o domDnio virtual sem
a necessidade de criar os lin4s virtuais via lin%a de comando:
# a2enmod www.microx.com.br
:) 1ecarregue as con'gura3es sem reiniciar o a&ac%e:
# invoke-rc.d apache2 reload
AoraM no seu naveador AebM acesse o site EEE.#icro/.co#.br e veja se o
#es#o est* 6uncionando.
10... Su(orte a <335S
O --1M ou -ecure -ocBets 1a?erM K u# padro Aeb <ue per#ite tra6ear dados
senveis e confdenciaisM co# seurana atravKs da internetM utili;ando o protocolo
:002-. -endo assi#M K e/tre#a#ente i#portante <ue o ad#inistrador de redes
confure o acesso --1 para sites <ue necessita# deste tipo de proteo.
Captulo 10 Apac.e - 105
1) 0eri'que se o m)dulo ssl est %abilitado/ e/ em caso negativo/
%abilite*o:
# a2enmod ssl
O --1 trabal%a co# o conceito de certifcados pNblicosM entoM deve#os
e6etuar os procedi#entos de criao do certifcado <ue ser* 6ornecido aos clientes.
2) Entre no diret)rio que ir arma2enar o certi'cado:
# cd /etc/ssl
.) @rie a c%ave que ser usada &ara assinar o certi'cado:
# openssl genrsa -out microX.key 1024
+) @om a c%ave em m(os/ crie o certi'cado G'que atento as
&erguntas):
# openssl req -new -key microX.key -out microX.csr
+epois de criar o certifcadoM vocQ pode envi*=lo a u#a unidade certifcadoraM
<ue o assinar* por u# valor anualM ouM caso vocQ #es#o pode assinar o certifcadoM
le#brando <ueM neste casoM o cliente dir* <ue o certifcado no 6oi recon%ecido por
u#a unidade certifcadora.
8) "ara envi*lo a uma unidade certi'cadora:
# openssl x509 -req -days 365 -in microX.csr -signkey microX.key -out
microX.crt


Captulo 10 Apac.e - 106
9) A&)s gerar o certi'cado/ con'gure seu domDnio 0irtual:
1 NameVirtualHost *:443
2 <VirtualHost *:443>
3 DocumentRoot /var/www/microx.com.br
4 ServerName *:443
5 ServerAdmin webmaster@microx.com.br
6 ErrorLog /var/log/apache2/microx.com.br-error.log
7 CustomLog /var/log/apache2/microx.com.br-access.log common
8 SSLEngine on
9 SSLCertificateFile /etc/ssl/microX.crt
10 SSLCertificateKeyFile /etc/ssl/microX.key
11 </VirtualHost>
12
13 NameVirtualHost www.microx.com.br:80
14 <VirtualHost www.microx.com.br:80>
15 RewriteEngine On
16 Options +FollowSymlinks
17 rewriteCond %SERVER_PORT 80
18 rewriteRule ^(.*)$ https://www.microx.com.br/$1 [R,L]
19 </VirtualHost>
:) Ative o mod?re<rite &ara que/ toda ve2 que algu7m acessar seu
site/ se>a automticamente redirecionado &ara o site com HLL"S
ativado:
#a2enmod rewrite
;) 1einicie o a&ac%e:
#invoke-rc.d apache2 stop
#invoke-rc.d apache2 start
C) Agora/ abra o navegador e efetue o teste no endereo:
http://www.microx.com.br
Captulo 10 Apac.e - 107
10.10. 1xerc2cio terico
1P 5ocQ precisa alterar a porta de trabal%o do seu Apac%e para a porta 8&&&.
Sual seria o procedi#entoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Os usu*rios recla#a# <ue o site est* #uito lento na %ora de navear no
servidor. -abendo <ue vocQ te# #e#ria sobrando na #*<uina e <ue o
proble#a no K a redeM <ual atitude to#aria de i#ediatoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P -eu supervisor pediu <ue vocQ #udasse o diretrio padro do Apac%e para
o diretrio @sites. Suais procedi#entos deve# ser to#adosU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
????????????????????????????????????????????????????????????????????????????????
10.11. Laboratrio
1. 3ude a p*ina de erro padro "&" para u#a #ensae# personali;ada. +ICA7
9se os e/e#plos no prprio ar<uivoL
2. +escubra na docu#entao ofcial do apac%e o <ue 6a; o #odulo )eErite e
co#o ele 6uncionaL
3. Crie u# do#nio virtual co# o seu sobreno#e.
Captulo 11 Post/i0 - 108
Captulo 11
Post./
11.1. Objetivos
.ntender co#o 6unciona u# 30AL
.ntender as 6un8es b*sicas de u# 30AL
Instalar e confurar o servidor 2ostf/.
11.2. Introduo terica
4a dKcada de (&M as pri#eiras #ensaens era# enviadas pela A)2AnetM
antecessora da atual Internet.
A troca de #ensaens era 6eita e# sua #aioria por estudantesM pes<uisadores
e profssionais dos randes centros de pes<uisaM restrita a poucos usu*rios <ue
tin%a# acesso a essa rede. As #ensaens era# enviadas atravKs de u# protocolo
se#el%ante ao atual -302M <ue 6oi defnido apenas e# 1!82.
O -end#ail era o servidor de correios #ais utili;ado na dKcada de !&M
causando a#or e dio aos ad#inistradores de siste#a. Causava a#or a<ueles <ue
tin%a# te#po de lerM estudar e co#preender o seu 6unciona#ento co#ple/o e c%eio
de #acros. idio para a<ueles <ue precisava# apenas rotear suas #ensaens e no
%avia necessidade de perder %oras e #ais %oras tentando co#preender seu
6unciona#ento. A sua 6or#a #onoltica ta#bK# era u# rande ponto neativo.
-endo apenas u# Nnico processo controlando todas as etapas de trans#isso de
e#ailM o -end#ail apresentava inN#eras 6al%as de seuranaM de #aior risco <uando
Captulo 11 Post/i0 - 109
e/ecutado e# #odo root. 3uitos servidores era# invadidos por cracBers e
natural#ente os ad#inistradores de siste#a procurava# alternativas.
4a Kpoca no e/istia #uitas alternativasM os ad#inistradores continuava# a
utili;ar o -end#ail. .# 1!!8 as pri#eiras vers8es do 2ostf/ co#eara# a surir.
Aietse 5ene#a K seu criador e possui inN#eros trabal%os relacionados [ seurana
da in6or#ao. Aietse K pes<uisador da I>3 atK %oje. A pri#eira verso ofcial do
2ostf/M e# so6tEare livre 6oi lanada e# +e;e#bro de 1!!8.
11.. !aracter2sticas do 5ost"x
Sistema multitarefa = O 2ostf/ possui u# conjunto de #dulos <ue
dese#pen%a# u# papel especfco para cada etapa do tr*6eo de e=#ailsM
este co#porta#ento per#ite #el%or dese#pen%o e# e<uipa#entos
#ultiprocessados.
Se&ara(o de &rivil7gios = O 2ostf/ K e/ecutado e# c%root <ue restrine o
acesso a ar<uivos internos a jaulaM separando assi# #uito de seus #dulos.
6odular = Y possvel criar #dulos para trabal%ar e# conjunto co# o
2ostf/M tornando=o 6acil#ente e/tensvel.
@om&atibilidade = O 2ostf/ 6oi desenvolvido para suportar os 6or#atos de
ar#a;ena#entos de #ensaens e/istentes.
Os ar<uivos de confurao do 2ostf/M pode# ser encontrados no diretrio
@etc@postf/M onde os seus principais ar<uivos so7
main.cf = Ar<uivo principal do 2ostf/ onde fca# todas as confura8es
principais relacionadas ao 6unciona#ento do 2ostf/.
master.cf = Y o ar<uivo <ue controla a ao de cada dae#on do 2ostf/M co#
ele pode#os di;er <uantos processos s#tpd estaro e# e/ecuo. Caso
ten%a#os u#a estrutura rande de #*<uinaM u#a ajuste nesses dae#ons sero
be# co#pensadoras e# ter#os de per6or#ance.
Captulo 11 Post/i0 - 110
11.4. 5r+tica diri#ida
1) 0amos instalar o "ost'- via a&titude:
# aptitude install postfix
Eo Debian/ 7uando instalarmos o *ostfx/ ele automaticamente remove o
servidor "adr.o 7ue 0 o Hxim4.
2) 0e>amos o arquivo de con'gura(o main.cf:
# vi /etc/postfix/main.cf
1 ## Banner que ser mostrado nas conexes. importante mudar.
2 smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
3 biff = no
4 ## Modificar o domnio caso o MUA's no fizer corretamente, mas
deixamos ativado,
5 ## pois isso trabalho do prprio MUA.
6 # appending .domain is the MUA's job.
7 append_dot_mydomain = no
8
9 ## Tempo de aviso de mensagens de erro.
10 # Uncomment the next line to generate "delayed mail" warnings
11 #delay_warning_time = 4h
12
13 ## Parmetros de criptografia.
14 # TLS parameters
15 smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
16 smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
17 smtpd_use_tls=yes
18 smtpd_tls_session_cache_database = btree:$
{queue_directory}/smtpd_scache
19 smtp_tls_session_cache_database = btree:$
{queue_directory}/smtp_scache
Captulo 11 Post/i0 - 111
20
21 # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package
for
22 # information on enabling SSL in the smtp client.
23
24 ## Nessa opo, precisamos colocar o hostname da mquina e o domnio
que
25 ## conhecido como FQDN.
26 myhostname = mail.4linux.com.br
27
28 ## Arquivos onde so configurados os alias de e-mails.
29 alias_maps = hash:/etc/aliases
30 alias_database = hash:/etc/aliases
31
32 ## Define a origem local, que por padro o mesmo FQDN que est
em /etc/mailname.
33 myorigin = /etc/mailname
34
35 ## Domnios que o seu servidor pode receber mensagens.
36 mydestination = mail.4linux.com.br, localhost.4linux.com.br, ,
localhost
37
38 ## Essa opo s usada se o seu servidor faz Relay para outros
servidores
39 ## de e-mail.
40 relayhost =
41
42 ## Nesse campo deveremos colocar apenas os IP's que podem realmente
fazer relay
43 ## em seu servidor.
44 ## CUIDADO, se adicionarmos IP's ou classes demais, o servidor poder
virar alvo
45 ## de spammers.
46 mynetworks = 127.0.0.0/8 192.168.200.0/24
47
48 ## Padro de entrega das mensagens. Nesse caso usado o mbox.
49 mailbox_command = procmail -a "$EXTENSION"
50
51 ## Tamanho mximo de caixa-postal para entrega local
52 mailbox_size_limit = 0
53
54 ## Em alguns clientes, podemos adicionar um sinal espacial ao
Captulo 11 Post/i0 - 112
endereo de e-mail
55 ## para direcionar mensagens a uma determinada pasta, por exemplo.
56 recipient_delimiter = +
57
58 ## Interfaces de rede a qual o Postfix pode fazer bind, ou seja,
estabelecer
59 ## conexes. O padro do Debian seria todas as interfaces.
60 inet_interfaces = all
61 </comandoNumerado>
.) "odemos agora reiniciar o "ost'-:
# /etc/init.d/postfix restart
+) 0e>a se a &orta 28 S6L" est &ronta &ara receber cone-3es:
# netstat -nltup
11.5. S435
1) @om o comando LE,$EL iremos testar a cone-ao e enviar um email:
1 # telnet localhost 25
2 helo gmail.com
3 mail from:seuemaildogmail@gmail.com
4 rcpt to:aluno@microx.com.br
5 data
6 subject: Teste
7 Este um teste de email.
8 .
9 quit
Captulo 11 Post/i0 - 113
2) 6ande uma email ,ocal:
# telnet localhost 25
1 mail from:root@microx.com.br
2 rcpt to:aluno@microx.com.br
3 data
4 subject: Teste
5 Este um teste de email.
6 .
7 quit
.) 0eri'que o log de email:
# tail /var/log/mail.log
+) 0eri'que o diretorio de emails:
# cd /var/mail
# ls -la
# cat aluno
8) 0eri'que a lista de emails do servidor:
# mailq
11.'. !ourier 5O5 e !ourier I465
9# servidor de e#ail s estaria co#pleto se tiver#os a instalao de u#
dae#on pop3 e i#ap. 2ara issoM va#os reali;ar aluns testes.
Captulo 11 Post/i0 - 114
1) "ara que o @ourier funcione vamos instalar:
# aptitude install courier-authdaemon courier-authlib courier-base
courier-imap courier-pop
2) A&)s este &asso/ edite o arquivo:
# vim /etc/postfix/main.cf
home_mailbox = Maildir/
DEFAULT=$HOME/Maildir/
MAILDIR=$HOME/Maildir/
.) Agore visuali2e os arquivos e crie o smt&:
# cat /etc/pam.d/pop3
# cat /etc/pam.d/imap
# vim /etc/pam.d/smtp
@include common-auth
@include common-accont
@include common-password
@include common-session
11.$.1. Criando cai1as postais2
1) 0amos criar as cai-as &ostais:
# maildirmake /home/aluno/Maildir
# maildirmake /home/aluno/Maildir/.Enviadas
# maildirmake /home/aluno/Maildir/.Rascunhos
Captulo 11 Post/i0 - 115
# maildirmake /home/aluno/Maildir/.lixeira
# maildirmake /home/aluno/Maildir/.Spam
4 comando maildirmake 0 um comando do "acote courier/ ve=a este site:
tt"://www.courier-mta.org/maildirmake.tml
2) A>uste as &ermiss3es:
# chown aluno. /home/aluno -R
.) Leste do "5". na &orta 11E:
# telnet localhost 110
user aluno
pass 123456
quit
+) Leste do !6A" na &orta 1+.:
# telnet localhost 143
a login aluno 123456
logout
-e vocQ conseuir ler as #ensaensM sinifca <ue o seu servidor est* pronto
para receber e trans#itir #ensaens.
E.o es7ue-a de "ublicar o registro AW no seu DE1/ confgurar
corretamente o cam"o LWL/ tamb0m no DE1 RH:HR14.
Captulo 11 Post/i0 - 116
11.). !riando a$ias no 5ost"x
2ode#os criar alias para <ue u# usu*rio possa receber v*rios e=#ailCs
di6erentes na #es#a conta.
1) Edite o arquivo de alias e crie um &ara o seu usurio:
# vi /etc/aliases
usuario_de_alias: usuario_existente
2) "ara validar essas modi'ca3es e gerar o arquivo de %as%/
&recisamos usar o comando &ostalias:
# postalias /etc/aliases
.) 0eri'que se o arquivo aliases.db foi atuali2ado:
# stat /etc/aliases.db
+) Agora &odemos fa2er um teste via telnet/ enviando o e*mail &ara o
usurio de alias:
# telnet localhost 25
8) Se tudo deu certo/ a mensagem destinada ao usurio de alias/ vai
ser arma2enada no cai-a &ostal do usurio real:
# cd /var/mail
# cat usuario
Captulo 11 Post/i0 - 117
11.,. 1xerc2cios tericos
1P Suais so os dois tipos de 6or#ato de cai/as postais <ue pode#os utili;arU
. <ual K a di6erena entre elesU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P O protocolo 2O23 K u# protocolo seuroU ./pli<ue.
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Suais so os principais ar<uivos de confurao do 2ostf/M e <uais so as
suas 6un8esU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P O <ue acontece se confurar#os de #aneira errada a opo #?netEorBs
dentro do ar<uivo #ain.c6U
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
11... Laboratrio
1. ,aa u# teste via telnet no seu servidor e veja se ele responde ao co#ando
vr6?. 9se o co#ando vr6? aps o co#ando %elo. ./e#plo7 vr6? usuario. 9se esse
co#ando e# usu*rio v*lido e e# u# usu*rio inv*lido.
2. Aora <ue j* viu co#o o co#ando vr6? pode ser prejudicialM tente desativ*=lo.
+ica7 #an $ postcon6
3. Crie u#a lista c%a#ada todosM <ue <uando aluK# enviar u# e=#ail para elaM
todos os usu*rio v*lidos do siste#a receba# a #ensae#.
Captulo 12 1e2 P(o0- co, '3ui* - 118
Captulo 12
0e1 P%o/+ co* #2ui'
12.1. Objetivos
.ntender co#o u# Eeb pro/? trabal%aL
.ntender AC1Cs e seus tipos b*sicosL
Instalar e confurar o s<uidL
Confurar autenticao 4C-AL
Confurar u# analisador de 1oCs.
12.2. Introduo 3erica
4este captuloM ire#os observar alu#as particularidades do pro/? Eeb
-<uidMu#a soluo Open -ource a#pla#ente utili;ada no #ercado co#o acelerador
e fltro de conteNdo Aeb. Observare#os ta#bK#M co#o utili;ar alu#as AC1Cs <ue
podero 6acil#ente ser aplicadas ao <ue c%a#a#os de ]Cen*rios Co#uns]M aonde
tere#os aluns sites liberados e aluns sites blo<ueados. 0a#bK# ire#os ver co#o
6are#os para <ue u# usu*rio deva e6etuar autenticao e por ulti#oM vere#os co#o
erar relatrios de naveao a partir dos los erados pelo s<uid.
Captulo 12 1e2 P(o0- co, '3ui* - 119
12.. /unciona%ento de u% Beb 5roxC
I#aine <ue os seus usu*rios necessita# acessar co# 6re<eQncia u# site de
notcias. A cada re<uisioM o naveador Eeb resolve o +4- deste siteM 6a; a
re<uisio ao servidor Eeb encontradoM tra; o conteNdo atK o usu*rio. AoraM i#aine
<ue 3&& clientes esto acessando este site. +esperdcio de bandaM no ac%aU
As solu8es Aeb 2ro/? 6ora# desenvolvidas justa#ente para contornar este
proble#a. I#aine o #es#o cen*rio aci#aM s <ue desta ve;M ao invKs de consultar o
siteM o naveador consulta o Aeb 2ro/? previa#ente confuradoM e entoM o servidor
pro/? 6a; a consulta ao siteM s <ueM antes de entrear a re<uisio ao clienteM o
servidor pro/? ar#a;ena o conteNdo do site e# u# diretrio do disco rido eM
<uando u# seundo cliente acessar o #es#o siteM o servidor pro/? verifca se o
conteNdo esta ar#a;enado e# cac%e.
.# caso positivoM o servidor entrea o conteNdo do cac%eM acelerando a
naveao e econo#i;ando banda. AlK# dissoM o Aeb 2ro/? ta#bK# pode air co#o
fltro de conteNdoM verifcando se K desej*vel <ue a<uele conteNdo seja acessvel para
a<uele usu*rioM endereo I2 ou 3ac AddressM e ento libera ou nea o acesso de
acordo co# o especifcado nas AC1CsM ite# <ue vere#os da<ui a pouco. 9# Aeb
2ro/? ta#bK# pode ser transparente ou confurado #anual#ente pelo usu*rio ou
ad#inistrador. 5a#os ver as di6erenas7
12.4. 5roxC 4anua$%ente !on"#urado
.# u# pro/? #anual#ente confuradoM o broEser sabe <ue K necess*rio
6a;er u#a re<uisio ao servidor pro/?M entoM te#os u#a sKrie de 6un8es <ue o
broEser pode solicitarM co#o 6orar a atuali;ao do cac%eM verifcar se as
credenciais de autenticao 6ora# 6ornecidas previa#enteM ou sejaM o cliente sabe
<ue deve 6alar co# u# pro/? e 6ar* a re<uisio direto a este. AlK# dissoM o servidorM
por sua ve;M possui o nu#ero I2 do cliente <ue 6e; a<uela re<uisioM o <ue
possibilita criar AC1Cs especifcas e controles de lo #ais apurados. A i#ae# a
seuir #ostra co#o 6unciona u# pro/? #anual#ente confurado.
Captulo 12 1e2 P(o0- co, '3ui* - 120
12.5. 5roxC 3rans(arente
.# u# pro/? transparenteM no %* necessidade de confurar#os o broEser.
O cliente 6ara sua re<uisio ao ateEa? padro da<uela redeM e entoM co# u#a
rera de freEall previa#ente confuradaM o ateEa? 6ar* o redireciona#ento para o
pro/?M <ue por sua ve; reali;ar* seu trabal%o.
A #aior vantae# deste #odelo K <ue no te#os a necessidade de confurar
os broEsers #anual#enteM o <ue seria justifc*vel e# u#a rede aonde no te#os o
poder de #anipular o co#putador dos usu*rios Oco#o u# provedor de internetM por
e/e#ploP.
.# co#pensaoM perdere#os a Ze/ibilidade dos los e autenticaoM j* <ue o
naveador Eeb no sabe <ue est* passando por u# pro/?M e ta#bK# tere#os <ue
6a;er 4A0 para acessos para sites <ue utili;a# :002-M j* <ue o s<uid no sabe lidar
co# este tipo de conteNdo <uando esta trabal%ando de 6or#a transparente.
Captulo 12 1e2 P(o0- co, '3ui* - 121
Abai/oM u#a ilustrao si#plifcada de co#o esse processo 6unciona7
12.'. 6ccess !ontro$ Lists
AC1M ou Access Control 1istM co#o o prprio no#e di; K u#a #aneira de criar
listas de acesso no -<uid. Co# elas pode#os criar u#a rera di;endo <ue a AC1 de
no#e ]3?4etorB] enloba todos os endereos oriinados e# 1!2.1'8.2&&.&@2"M ou
sejaM K u#a AC1 <ue ]casa] co# a rede inteira. 0a#bK# pode#os defnir u#a AC1
c%a#ada ]-ite"linu/] <ue ]casaria] co# <ual<uer do#nio destino no <ual
constasse ."linu/.co#.br.
@K<Y1 de origem e destino "odem ser cobrados na <*,-,,/ bem como sua
forma de utili9a-.o.
12.). 3i(os co%uns de 6!LDs
>asica#enteM as AC1Cs disponveis no s<uid para utili;ao na #aioria dos
casos pode# ser arupadas na seuinte lista7
Captulo 12 1e2 P(o0- co, '3ui* - 122
AC1Cs de orie#
AC1Cs de destino
AC1Cs de %or*rio
12.(.1. %inta1e das AC3%
acl <nome da acl> <tipo da acl> <padro da acl>
5a#os co#entar estes trQs tipos nas se8es seuintes7
12.,. 6!LDs de ori#e%
AC1Cs de orie# so utili;adas para controlar todo e <ual<uer acesso <ue
ten%a co#o orie# u# deter#inado padro.
.ssa orie#M eral#ente K u# endereo de %ost ou endereo de rede.
0a#bK# pode ser confurado u# do#nioM #as ten%a e# #ente <ueM neste casoM K
necess*rio <ue seu servidor pro/? esteja co#pleta#ente %*bil a resolver estes
endereos.
Algumas aclRs de origem:
acl MyNetworksrc 192.168.200.0/24
acl gateway src 192.168.200.254
12... 6!LDs de destino
AC1Cs de destino so #ais co#uns e 6re<uente#ente utili;adas para criar
padr8es <ue case# co# deter#inados endereos de redeM endereos de do#nioM
partes de u# do#nio e ta#bK# por e/press8es reulares. 5a#os dar u#a ol%ada na
construo dessas AC1Cs.
Algumas aclRs de destino
Captulo 12 1e2 P(o0- co, '3ui* - 123
acl Servers dst 192.168.200.1 192.168.200.2 192.168.200.3
acl 4linuxdstdomain .4linux.com.br
acl Brasildstdomain .com.br
12.10. 6!LDs de &or+rio
AC1Cs de %or*rio so #uito uteisM <uando <uere#osM por e/e#ploM per#itir
acesso a sites de relaciona#ento durante o %or*rio de al#oo ou 6ora do %or*rio de
e/pediente. 5a#os ver u#a AC1Cs <ue podera#os utili;ar para especifcar o %or*rio
de al#ooM e outra para especifcar o %or*rio da #an%.
acl almoco time 13:00-14:00
acl parte_manha time 08:00-12:59
.sses so os tipos b*sicos de AC1CsM porK#M u#a AC1 so;in%a no 6a;
absoluta#ente nada. +urante a pr*tica diriidaM vere#os co#o tornar as AC1Cs Nteis
co# confura8es <ue per#ite# utili;ar as AC1Cs para blo<ueio e liberao de sitesM
do#nios e %or*rios.
12.11. /i$tros
Outro recurso interessante para o uso de u# pro/? K oconceito de fltro de
conteNdoM <ue possibilita a fltrae# do conteNdo Eeb dos usu*rios. 2ara reali;ar
essa confuraoM pode#os usar os seuintes fltros7
src j ,iltro por rede ou endereo I2L
time j ,iltro por %ora e dia da se#anaL
url&at%?rege- j fltro de co#ple#ento de u#a urlL
url?rege- j ,iltro de u#a strin na urlL
Captulo 12 1e2 P(o0- co, '3ui* - 124
dstdomain j ,iltro de u#a urlL
&ro-A?aut% j ,iltro por usu*rios autenticadosL
ar& = ,iltro por 3AC addressL
ma-conn j ,iltro por cone/8esL
&roto j ,itro por protocolosL
&ort j ,iltro por porta.
12.12. 5r+tica -iri#ida

1) 5 &rimeiro &asso 7 instalar e con'rmar a instala(o do Squid:
# aptitude install squid
# dpkg -l squid
4s ar7uivos e diret+rios "rinci"ais 7ue ele utili9arC:
/etc/s7uid/s7uid.conf - @r7uivo de confgura-.o
/var/log/s7uid/Z- @r7uivos de log do s7uid.
/var/s"ool/s7uid - Diret+rio 7ue cont0m o cace do s7uid
2) A&)s con'rmar a instala(o do squid/ veri'que o conteBdo dos
diret)rios mencionados.
# ls /var/spool/squid
# ls /var/log/squid
# ls /etc/squid
Captulo 12 1e2 P(o0- co, '3ui* - 125
.) 5 squid 7 um soft<are bem documentado/ e boa &arte desta
documenta(o est em forma de comentrios no arquivo de
con'gura(o. 0amos dar uma ol%ada nele.
# vim /etc/squid/squid.conf
12.1. !on"#ura:es Iniciais
A confurao padro do s<uid no per#ite nen%u# tipo de naveaoM por
#edidas de seurana. A pri#eira coisa <ue deve#os 6a;er K especifcar <ual rede o
s<uid deve ouvirM e ta#bK# deve#os especifcar u#a AC1 do tipo orie# <ue case
co# o nosso endereo I2. 5a#os 6a;er isso.
1) "ara que o squid oua a&enas uma rede/ troque o valor do
&arKmetro I%tt&?&ort .12;I &ara:
http_port 192.168.200.X:3128
2) 5utra con'gura(o im&ortante 7 o &arKmetro visible?%ostname.
Este &arKmetro di2 qual ser o %ostname que o squid ir utili2ar
&ara resolver seu endereo local e tamb7m 7 o endereo que ser
a&resentado nas &ginas de informa(o
# visible_hostname proxy.microx.com.br
5a#os aproveitar <ue esta#os co# a #o na #assa e va#os confurar aluns
parT#etros relativos ao cac%e.
.) A>uste do cac%e em disco: !remos es&eci'car 8126U de cac%e/ com
12; diret)rios e 289 subdiret)rios:
cache_dir ufs /var/spool/squid 512 128 256
Captulo 12 1e2 P(o0- co, '3ui* - 126
+) #e'nindo o cac%e que ser arma2enado em mem)ria:
cache_mem 16 MB
8) Agora/ iremos &arar o squid/ veri'car a sinta-e do arquivo de
con'gura(o/gerar o cac%e e ent(o reiniciaremos o squid.
# invoke-rc.d squid stop
# squid -k parse
# squid -z
# invoke-rc.d squid start
9) Loda ve2 que vocO mudar as A@,Rs vocO deve e-ecutar os comandos:
#squid -k parse
#squid -k reconfigure
+epois destes ajustes iniciaisM esta#os prontos para criar nossas AC1Cs e
verifcar o 6unciona#ento do s<uid co#o fltro de conteNdo.
12.14. /i$trando acessos co% S>uid
9#a das obria8es de u# Ad#inistrador de -iste#as e# aluns a#bientes K
controlar o <ue deve ou no deve ser acessvel na internet a partir da rede interna.
.ntoM para <ue possa#os entender co#o trabal%ar co# AC1CsM va#os criar o
seuinte cen*rioM onde deve#os criar u# conjunto de AC1Cs <ue resulte na seuinte
situaoM <ual<uer %ost na #in%a rede deve ser i#pedido de navear e# <ual<uer
do#nio .co#M tendo co#o Nnica e/ceo o site EEE.a#a;on.co#. Co#o 6a;er issoU
4 "rimeiro "asso 0 "rocurar a se-.o correta "ara cria-.o de @K<Ys dentro
do ar7uivo de confgura-.o do s7uid. *rocure uma lina semelante a esta:
# ,E1HRL [4RR 4QE RR<HS1T HHRH L4 @<<4Q @KKH11 >R4A [4RR
K<,HEL1
Captulo 12 1e2 P(o0- co, '3ui* - 127
1) Agora/ de&ois desta lin%a/ crie uma acl com a rede de origem/ uma
acl &ara domDnios .com e uma acl &ara o domDnio ama2on.com:
acl MyNetwork src 192.168.200.0/24
acl International dstdomain .com
acl Amazon dstdomain .amazon.com
. aoraM co# as AC1Cs criadasM ire#os especifcar as polticas de acesso e
blo<ueios co# o co#ando %ttpVaccess.
2) "rocure uma string c%amada %tt&?access denA all e coloque o
seguinte conteBdo/ antes desta regra:
http_access allow MyNetwork Amazon
http_access deny MyNetwork International
http_access allow MyNetwork
http_access deny all
.) @on'gure seu bro<ser e faa o teste de navega(o &ara os sites:
www.google.com
www.amazon.com
www.google.com.br
"P AoraM e/peri#ente inverter a orde# das reras de acesso7
http_access deny MyNetwork International
http_access allow MyNetwork Amazon
http_access allow MyNetwork
<embre-se 7ue a ordem das @K<Ys n.o im"orta/ "or0m/ o s7uid farC o fltro
de acordo com a ordem das regras de acesso confguradas "or tt"Maccess.
<embre-se disso 7uando f9er troublesooting ou criar novas regras. XT
Captulo 12 1e2 P(o0- co, '3ui* - 128
12.15. @$ack$ist e B&ite$ist
O conceito de >lacBlist e A%itelist K #uito si#ples7
Ulac4list = 9#a lista de palavras <ue eu <uero near.
[%itelist = 9#a lista de do#nios <ue eu <uero liberarM #as <ue casa# co# a
blacBlist.
1) "ara e-em&li'car o uso de blac4lists e <%itelists/ vamos criar duas
A@,Rs/ uma negando o qualquer url que conten%a a &alavra linu-/ e
outra liberando os sites <<<.linu-.com e <<<.+linu-.com.br.
4o se es<uea de li#par as AC1Cs e os %ttpVaccess anteriores.
acl blacklist url_regex linux
acl whitelist dstdomain www.linux.com www.4linux.com.br
2) Agora crie os %tt&?access:
http_access deny MyNetwork blacklist !whitelist
http_access allow MyNetWork
.) Agora/ tente acessar os seguintes sites:
www.4linux.com.br
www.vivaolinux.com.br
www.linux.com
www.br-linux.org
*ara a"render mais/ acesse www.s7uid-cace.org e leia a documenta-.o
ofcial do "ro=eto s7uid.
Captulo 12 1e2 P(o0- co, '3ui* - 129
12.1'. 6utenticao N!S6
O -<uid possui u# #ecanis#o de autenticao <ue pode trabal%ar de diversas
#aneirasM e u#a delasM a 4C-AM utili;a o #es#o #ecanis#o de autenticao do
apac%e. 5a#os confurar esse #odelo de autenticao e va#os criar u#a acl <ue
e/ija autenticao ta#bK#.
1) 0amos con'gurar a autentica(o no Squid:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
1. 1in%a 1 confura o autenticador
2. 1in%a 2 o nN#ero de processos de autenticao
3. 1in%a 3 confura o ttulo da cai/a de autenticao
". 1in%a " confura o te#po de validade da autenticao
2) Merando o arquivo de sen%as:
# aptitude install apache-utils
# htpasswd -c /etc/squid/passwd aluno 123456
.) Merando as A@,Rs de acesso com sen%a:
acl MyNetwork src 192.168.200.0/24
acl passwd proxy_auth REQUIRED
+) @on'gurando o acesso F internet mediante sen%a:
http_access allow MyNetwork passwd
Captulo 12 1e2 P(o0- co, '3ui* - 130
12.1). 6uditoria de acesso co% S6*E
O -A)D -<uid Anal?sis )eport Denerator K u#a 6erra#enta desenvolvida pelo
brasileiro 2edro 1ineu OrsoM cujo objetivo K analisar o ar<uivo
@var@s<uid@lo@access.lo e erar u# relatrio de acesso baseado no conteNdo
acessado pelos usu*rios.
1) Sua instala(o 7 bem sim&les/ bastando a&enas/ no #ebian/
e-ecutar um a&titude:
# aptitude install sarg
2) 0amos observar seu arquivo de con'gura(o. Fique a vontade e leia
alguns comentrios &ara entende as fun3es do SA1M.
# vim /etc/squid/sarg.conf
.) Saia do arquivo e e-ecute o sarg:
# sarg
+) Agora/ acesse o endereo local%ost/squid*re&orts e ve>a o seu
conteBdo
http://localhost/squid-reports
Captulo 12 1e2 P(o0- co, '3ui* - 131
12.1,. 1xerc2cios 3ericos
1P O <ue 6a;e# as op8es ]s<uid =B reconfure] e ]s<uid =;]
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Sual K o diretrio <ue contK# os %t#ls in6or#ativos do s<uidU Co#o vocQ
6aria para #ud*=losU Odica7 #an s<uid e s<uid.con6P
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Crie AC1Cs e reras de acesso <ue per#ita# apenas a naveao a sites
overna#entaisM ou sejaM do#nios do tipo .ov e .ov.br.
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P Co#o re#over a opo <ue #ostra a verso do s<uid das p*inas de
in6or#aoU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
12.1.. Laboratrio
1. Crie u# conjunto de AC1Cs <ue case# co#M sites de conteNdo indesejado7
EEE.pla?bo?.co#.brM EEE.?outube.co# e <ual<uer e/presso <ue conten%a as
palavras ]se/]M ]bu?] ...
2. Crie as rera de acesso necess*rias para <ue <ual<uer pessoa possa navear a
vontadeM porK#M na %ora de navear e# sites de conteNdo indesejado.
Captulo 13 4pen!AP - 132
Captulo 13
3penLDAP
1.1. Objetivos
I#ple#entar e confurar servidor Open1+A2L
.ntendi#ento dos principais protocolosL
3anipular base de dadosM locali;ao e edio de objetosL
)eali;ar +u#p da >ase de dados Open1+A2 e reali;ar restauraoL
Interar Open1+A2 co# -<uidL
Autenticao de cliente e# base do Open1+A2L
I#ple#entao de 6erra#enta para #anipulao de base Open1+A2 via
broEser.
1.2. Introduo terica
A cada dia <ue sure# novos siste#as nas e#presas af# de resolver diversos
tipos de proble#asM cresce a necessidade de ter u# #aior controle e #el%ores
#ecanis#os de busca de in6or#ao. -eurana e controle de dados K i#prescindvel
e# <ual<uer e#presaM u#as das vantaens do Open1+A2 K a possibilidade de <ue
v*rios siste#as possa# co#partil%ar de base de dados de usu*rios e sen%as de 6or#a
centrali;ada e interada.
O projeto Open1+A2 K u# servio de diretrioM <ue utili;a o protocolo 1+A2M
Captulo 13 4pen!AP - 133
baseado no protocolo G.$&&. O Open1+A2 utili;a o tra6eo de dados via 0C2@I2M
podendo ser i#ple#entado e# diversas plata6or#as e# redes I25" e I25'M
possibilitando autenticaoM #ecanis#os de seurana no uso de certifcados e
criptorafaM podendo ser confurado para restrinir acesso a socBet la?erM ter
#Nltipla instTncias de banco de dadosM #Nltiplas 0%readsM per#ite replicao e
confurao do servio de acordo co# a sua necessidade atravKs de -c%e#a.
A orani;ao da estrutura de dados do Open1+A2 K %ier*r<uicaM sendo
re6erenciada a 6or#a de FrvoreM co# conceito de orientao de objetos.
Open1+A2 constitui=se de7
sla&d = -ervio Open1+A2
slur&d = -ervio para replicao e atuali;ao Open1+A2
libraries = >ibliotecas para i#ple#entao do Open1+A2M co# utilit*rios e
6erra#entas
1.. 5r+tica diri#ida
1) !nstala(o do 5&en,#A"/ veri'que se > tem instalado o 5&en,#A":
# d"kg -l sla"d
2) !nstale &acotes do 5&en,#A":
# aptitude install libldap2 ldap-utils slapd
Captulo 13 4pen!AP - 134
.) @on'gure as o&3es do 5&en,#A":
# dpkg-reconfigure slapd
+) @on'gure quando for solicitado em:
O#itir confurao do servidor Open1+A27 4kO
In6or#e o no#e de do#nio +4- para construir a base dn7 #icro/.co#.br
In6or#e no#e da orani;ao7 "linu/
+iite sen%a7 123"$'
.scol%a base de dados7 >+>
)e#oo da base de dados <uando o pacote slapd 6or e/purado7 4kO
3over base antia de dados e# @var@lib@ldap7 -I3
2er#itir protocolo 1+A2v27 -I3 O)e<uirido para interar o -<uid co#
Open1+A2P
8) !nicie o servio do 5&en,#A":
# /etc/init.d/slapd start
9) 0eri'que se o servio est dis&onDvel &ara a rede:
# netstat -nltup
:) 0isuali2e a base fDsica de dados do 5&en,#A":
# ls /var/lib/ldap/
Captulo 13 4pen!AP - 135

;) 0isuali2e o arquivo de con'gura(o 5&en,#A" no #ebian:
# vi /etc/ldap/slapd.conf
1 # Este o principal arquivo de configurao do slapd. Veja man page
slapd.conf
2 # para verificar demais configuraes
3
4 #####################################################################
##
5
6 # Configuraes Globais
7
8 # Autorizar LDAPv2 binds
9 allow bind_v2
10
11 # Definies de Schema e objectClass
12 include/etc/ldap/schema/core.schema
13 include/etc/ldap/schema/cosine.schema
14 include/etc/ldap/schema/nis.schema
15 include/etc/ldap/schema/inetorgperson.schema
16
17 # Local do arquivo onde encontra o nmero do processo slapd.
18 O script init.d no parar o servidor se voc mudar isto.
19 pidfile/var/run/slapd/slapd.pid
20
21 # Lista de argumentos a serem passados para o servidor
22 argsfile /var/run/slapd/slapd.args
23
24 # Nvel de logs a serem gerados pelo servidor, leia slapd.conf para
maiores
25 # informaes
26 loglevel 0
27
28 # Local onde mdulos dinmicos so armazenados
29 modulepath /usr/lib/ldap
30 moduleload back_bdb
31
32 #Verificao de schema
Captulo 13 4pen!AP - 136
33 schemacheck on
34
35 # O nmero mximo de entradas que esto retornadas para operao de
busca
36 sizelimit 500
37
38 # Parmetros para configurao de Threads / CPU
39 tool-threads 1
40
41 #####################################################################
##
42 # Especificao de Diretivas para o bdb
43 # 'backend' directive occurs
44 backend bdb
45 checkpoint 512 30
46
47 #####################################################################
##
48 # Especificao de Diretivas para outro:
49 # 'backend' directive occurs
50 #backend <other>
51
52 #####################################################################
##
53 # Especificao de diretivas para banco de dados #1, tipo bdb:
54 # 'database' directive occurs
55 database bdb
56
57 # Definio de sufixo da base
58 suffix "dc=teste,dc=seu-nome,dc=br"
59
60 # rootdn diretiva para especificar um super usurio no banco de
dados.
61 # Isto preciso.
62 # for syncrepl.
63 # rootdn "cn=admin,dc=teste,dc=seu-nome,dc=br"
64
65 # Local onde os arquivos de banco de dados so armazenados
fisicamente #1
66 directory "/var/lib/ldap"
67
68 # Para pacote Debian, no usamos 2MB como default mas tenha certeza
Captulo 13 4pen!AP - 137
de atualizar
69 # este valor
70 dbconfig set_cachesize 0 2097152 0
71
72 # Verificar informaes de bugs encontrados nestes parmetros
73 # http://bugs.debian.org/303057
74
75 # Nmeros de objetos que podem ser travados no mesmo tempo
76 dbconfig set_lk_max_objects 1500
77 #Nmeros de lockers (ambas requisies e concesses)
78 dbconfig set_lk_max_locks 1500
79 #Nmeros de lockers
80 dbconfig set_lk_max_lockers 1500
81
82 # Opes de indexao #1
83 index objectClass eq
84
85 # Salva o tempo que entradas foram modificadas no banco de dados
86 lastmodon
87
88 # Local onde so replicados os logs do banco de dados
89 # replogfile/var/lib/ldap/replog
90
91 # Parmetros de acesso e permisses
92 access to attrs=userPassword,shadowLastChange
93 by dn="cn=admin,dc=teste,dc=seu-nome,dc=br" write
94 by anonymous auth
95 by self write
96 by * none
97 access to dn.base="" by * read
98
99 by dn="cn=admin,dc=teste,dc=seu-nome,dc=br" write
100 by * read
101 #access to dn=".*,ou=Roaming,o=morsnet"
102 # by dn="cn=admin,dc=teste,dc=seu-nome,dc=br" write
103 # by dnattr=owner write
104 # Especificao de diretivas de banco de dados #2, de tipo outro,
pode
105 ser bdb:
106 # 'database' directive occurs
107 #database <other>
Captulo 13 4pen!AP - 138
108 # Definio de sufixo da base#2
109 #suffix "dc=debian,dc=org"
110
111 ####################################################################
###
112 </comandoNumerado>
C) 0eri'ca(o de teste da con'gura(o do arquivo do 5&en,#A":
# slaptest
\ necessCrio criar a nossa base de dados. *ara tal utili9aremos
migrationtools/ uma ferramenta "ara migra-.o de base de dados escrita em
*erl "ara o 4"en<D@*. *ortanto verif7ue e instale os "acote migrationtools
e "erl:
1E) 0eri'que se tem o &acote &erl instalado:
# dpkg -l | grep perl
11) !nstale "erl/ caso n(o este>a instalado:
# aptitude install perl
12) 0eri'que o &acote 6igration Lools:
# aptitude search migrationtools
1.) 1eali2e a instala(o 6igration Lools:
# aptitude install migrationtools
1+) Acesse o diret)rio /usr/s%are/migrationtools e co&ie o arquivo
de con'gura(o:
# cd /usr/share/migrationtools
# cp -av migrate_common.ph migrate_common.ph.original
Captulo 13 4pen!AP - 139
18) Edite o arquivo migrate?common.&% e os cam&os a seguir/
salve:
$DEFAULT_MAIL_DOMAIN="microx.com.br";
$DEFAULT_BASE=dc="microx,dc=com,dc=br";
19) 0amos migrar a base de usurios do sistema G/etc/&ass<d) &ara
uma base &adr(o ,#!F/ &ara inserir na base ,#A":
# cd /usr/share/migrationtools
# ./migrate_passwd.pl /etc/passwd /etc/ldap/users.ldif
1:) 0eri'que o arquivo /etc/lda&/users.ldif criado e observe o
conteBdo:
# less /etc/ldap/users.ldif
1 gidNumber: 106
2 homeDirectory: /var/lib/gdm
3 gecos: Gnome Display Manager
4
5 dn: uid=root,ou=People,dc=seu-nome,dc=com,dc=br
6 uid: root
7 cn:: cm9vdA==
8 objectClass: account
9 objectClass: posixAccount
10 objectClass: top
11 objectClass: shadowAccount
12 userPassword: {crypt}$1$dL7nEggA$P6Ib/H9QBkdd/sTcUBW1z1
13 shadowLastChange: 12495
14 shadowMax: 99999
15 shadowWarning: 7
16 loginShell: /bin/bash
17 uidNumber: 0
18 gidNumber: 0
19 homeDirectory: /root
20 gecos: root
Captulo 13 4pen!AP - 140
1;) Agora vamos migrar a base de gru&os do sistema G/etc/grou&)
&ara uma base &adr(o ,#!F/ &ara inserir na base ,#A":
./migrate_group.pl /etc/group /etc/ldap/groups.ldif
1C) 0eri'que os arquivos gerados em /etc/lda&/grou&.ldif:
# cat /etc/ldap/groups.ldif
2E) @riando nossa base ldif:
# ./migrate_base.pl > /etc/ldap/base.ldif
21) Edite o arquivo gerado em /etc/lda&/base.ldif e remova as
lin%as de 1 a 1E/ &or default durante a migra(o estas lin%as foram
criadas/ &odendo gerar erro durante a im&orta(o/ dentro do vim
e-ecute o comando ES@:1/1Ed &ara a&agar as 1E &rimeiras lin%as:
# vim /etc/ldap/base.ldif
22) Adicione o base ldif na base do 5&en,#A":
# ldapadd -x -D cn=admin,dc=microx,dc=com,dc=br -f /etc/ldap/base.ldif
-W
2.) 1eali2e uma busca na sua base de dados 5&en,#A":
ldapsearch -x | more
2+) Adicione o grou&.ldif:
# ldapadd -x -D cn=admin,dc=seu-nome,dc=com,dc=br -f
/etc/ldap/groups.ldif -W
Captulo 13 4pen!AP - 141
28) Adicione o user.ldif:
# ldapadd -x -D cn=admin,dc=seu-nome,dc=com,dc=br -f
/etc/ldap/users.ldif -W
29) 0ocO &ode transferir as informa3es em formato ldif atrav7s do
sla&add &assando a informa(o direto &ara servidor:
# /etc/init.d/slapd stop
# slapadd -l meuarquivo.ldif -f slapd.conf
2:) 1eali2ando busca es&ecD'ca atrav7s do nome do ob>eto que
consta na base do 5&en,#A":
# ldapsearch -x -b 'dc=microx,dc=com,dc=br' '(cn=cdrom)'
2;) @onsulta da Uase 5&en,#A":
# slapcat | more
1.4. !on"#urando u% c$iente L-65
2ara <ue os nossos co#putadores possa# autenticar=se co#o clientes 1+A2M K
necess*rio <ue #odif<ue#os u#a sKrie de ar<uivos do 2A3 e ta#bK# K necess*ria a
instalao de aluns pacotes.
1) !nstalando os &acotes necessrios e con'gure*os:
#aptitude install libnss-ldap libpam-ldap
2) Acrescente as o&3es lda& nas lin%as &ass<d/ grou& e s%ado</ &ara
que nossa esta(o &asse a buscar os usurios no ,#A".
# vim /etc/nsswitch.conf
passwd:compat ldap
group: compat ldap
Captulo 13 4pen!AP - 142
shadow:compat ldap
.) Agora vamos con'gurar o arquivo /etc/libnss*lda&.conf:
# vim /etc/libnss-ldap.conf
+) "rocure as lin%as 1C2 e 1C. e con'gure*as:
nss_base_passwd ou=People,dc=microx,dc=com,dc=br
nss_base_shadow ou=People,dc=microx,dc=com,dc=br
8) Agora vamos con'gurar as lin%as 1:2 e 1:. do arquivo
/etc/&am?lda&.conf:
nss_base_passwd ou=People,dc=microx,dc=com,dc=br
nss_base_shadow ou=People,dc=microx,dc=com,dc=br
2or ulti#oM ire#os confurar o 2A3 para <ue ele bus<ue os usu*rios na base
1+A2.
9) @on'gure o arquivo /etc/&am.d/common*aut% :
1 #
2 # /etc/pam.d/common-auth - authentication settings common to all
services
3 #
4 # This file is included from other service-specific PAM config files,
5 # and should contain a list of the authentication modules that define
6 # the central authentication scheme for use on the system
7 # (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use
the
8 # traditional Unix authentication mechanisms.
9 #
10 auth sufficient pam_ldap.so
11 auth required pam_unix.so nullok_secure try_first_pass
Captulo 13 4pen!AP - 143
:) @on'gure o arquivo /etc/&am.d/common*account
1 #
2 # /etc/pam.d/common-account - authorization settings common to all
services
3 #
4 # This file is included from other service-specific PAM config files,
5 # and should contain a list of the authorization modules that define
6 # the central access policy for use on the system. The default is to
7 # only deny service to users whose accounts are expired in
/etc/shadow.
8 #
9 account sufficient pam_ldap.so
10 account required pam_unix.so
11 session required pam_mkhomedir.so skel=/etc/skel umask=0077
;) Agora con'gure o arquivo /etc/&am.d/common*&ass<ord:
1 #
2 # /etc/pam.d/common-password - password-related modules common to all
services
3 #
4 # This file is included from other service-specific PAM config files,
5 # and should contain a list of modules that define the services to be
6 #used to change user passwords. The default is pam_unix
7
8 # The "nullok" option allows users to change an empty password, else
9 # empty passwords are treated as locked accounts.
10 #
11 # (Add `md5' after the module name to enable MD5 passwords)
12 #
13 # The "obscure" option replaces the old `OBSCURE_CHECKS_ENAB' option
in
14 # login.defs. Also the "min" and "max" options enforce the length of
the
15 # new password.
16
17 passwordsufficientpam_unix.so nullok obscure min=4 max=8 md5
18 passwordrequired pam_ldap.so try_first_pass
19
20 # Alternate strength checking for password. Note that this
Captulo 13 4pen!AP - 144
21 # requires the libpam-cracklib package to be installed.
22 # You will need to comment out the password line above and
23 # uncomment the next two in order to use this.
24 # (Replaces the `OBSCURE_CHECKS_ENAB', `CRACKLIB_DICTPATH')
25 #
26 # password required pam_cracklib.so retry=3 minlen=6 difok=3
27 # password required pam_unix.so use_authtok nullok md5
C) Edite tamb7m o arquivo /etc/&am.d/common*session:
1 #
2 # /etc/pam.d/common-session - session-related modules common to all
services
3 #
4 # This file is included from other service-specific PAM config files,
5 # and should contain a list of modules that define tasks to be
performed
6 # at the start and end of sessions of *any* kind (both interactive
and
7 # non-interactive). The default is pam_unix.
8 #
9 session sufficient pam_ldap.so
10 session required pam_unix.so
1.5. 6cessando o O(enL-65 via @rowser co% 5&(Lda(6d%in
5a#os acessar a base do Open1+A2 via >roEserM para tal ser* necess*rio
instalar p%p e dar suporte ao Apac%e.
1) !nstale os &acotes do "H" necessrio &ara o 5&en,#A":
# aptitude install php-pear php5-ldap
Captulo 13 4pen!AP - 145
2) 0eri'que se seu servidor A&ac%e est com su&orte a "H":
# ls -l /etc/apache2/mods-enable
.) !nstalando os &acotes do &%&lda&admin:
# aptitude install phpldapadmin
+) Abra o seu bro<ser e digite no cam&o Q1,:
127.0.0.1/phpldapadmin/index.php
1.'. 6utenticando o S>uid na base de usu+rios L-65
4o nosso casoM <uere#os <ue os usu*rios do nosso servidor Open1+A2 seja#
autenticados. 2ara issoM usare#os o prora#a ldapVaut%.
1) 6odi'que as seguintes lin%as no arquivo /etc/squid/squid.conf &ara
ser feita a autentica(o via 5&en,#A":
# vim /etc/squid/squid.conf
auth_param basic program /usr/lib/squid/ldap_auth -b dc=seu-
nome,dc=com,dc=br -f uid=%s 192.168.200.X
E.o es7uecer de tirar a outra lina de autentica-.o usando ncsa.
Captulo 13 4pen!AP - 146
1.). 1xerc2cio terico
1P Sual a di6erena e# reali;ar os co#andos ldapsearc% =/ e slapcatU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P O <ue K u# sc%e#aU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Sual K o banco de dados utili;ados pelo Open1+A2 e onde est*
ar#a;enado no siste#aU
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????????????????????????????????
1.,. Laboratrio
1. Instale o 1+A2 tendo o seu no#e co#o cnM co#o no e/e#plo da apostilaL
2. Crie u# usu*rio direta#ente no 1+A2 e autenti<ue no -S9I+.
Captulo 14 $i(e5all - 147
Captulo 14
Fi%e4all
14.1. Objetivos
.ntender as tabelas principais do iptablesL
.ntender as polticas b*sicasL
.ntender o conceito de e/ce8esL
.ntender o conceito de nat e 6orEardL
Confurar u# freEall si#ples.
14.2. Introduo terica
Os siste#a D49@1inu/ co# ^ernel sKrie 2." e 2.' trabal%a# co# o Iptables
para 6a;er o erencial#ento de reras de ,ireEall. 1e#brando <ue o Iptables K
apenas u# ,ront=.nd <ue erencia o suporte 4etflter no ^ernel. O Iptables possu "
tabelasM sendo elas7
'lter
nat
mangle
ra<
Captulo 14 $i(e5all - 148
@ tabela flter 0 a tabela "adr.o do ,"tables.
Cada u#a dessas tabelas possu o <ue c%a#a#os de C:AI4-. As C:AI4- so
onde vo ser defnidos as reras para o nosso freEall.
4esse captulo va#os tratar #ais das C:AI4- da tabela flter e alu#as
coisas sobre as C:AI4- da tabela nat.
As C:AI4- da tabela flter so as seuintes7
0abela ,ilter
!$"QL = )eras de entrada de pacotes.
5QL"QL = )eras de sada de pacotes.
F51[A1# = )eras de passae# de pacotes pelo freEall.
As C:AI4- da tabela nat so as seuintes7
0abela 4at
"1E15QL!$M = )eras <ue sero processadas antes do rotea#ento dos
pacotes nas inter6aces do freEall.
"5SL15QL!$M = )eras <ue sero processadas ps rotea#ento dos
pacotes nas inter6aces do freEall.
5QL"QL = )eras de sada de pacotes.
14.. !o%(reendendo as (o$2ticas @FSI!6S e o conceito das 1G!1HI1S
A #etodoloia utili;ada para i#ple#entao do freEall ser* a seuinte7
Captulo 14 $i(e5all - 149
Ire#os near todo o tr*6eo para as C:AI4- de I4290M O90290 e ,O)AA)+
da tabela flterM posterior#ente ire#os defnir a relao dos servios <ue deve# ser
liberados no freEallM a estesM ire#os c%a#ar de e/ce8es. 0odo o tr*6eo de pacotes
<ue as nossas e/ce8es no cobrir sero blo<ueado por padro. .# su#aM o <ue no
6or ofcial#ente per#itido j* est* e/pressa#ente neado.
14.4. 5r+tica diri#ida
5a#os aora #ontar o nosso ,ireEall.
1) 0eri'que como est(o con'guradas as &olDticas bsicas que est(o
de'nidas &or &adr(o:
# iptables -n -L
2) 6odi'que as &olDticas bsicas &ara #15" A,,:
# iptables -P INPUT DROP
# iptables -P OUTPUT DROP
# iptables -P FORWARD DROP
Captulo 14 $i(e5all - 150
.) 0eri'que se a nova &olDtica foi assumida:
# iptables -n -L
Aora <ue percebe#os <ue te#os u# freEall ativoM deve#os pensar nas
de#ais polticasM u#a ve; <ueM por #ais seuro <ue seja u# freEallM cuja poltica
base seja near tudoM no K u# freEall pr*ticoM pois precisa#os reali;ar
co#unica8es. +essa 6or#aM precisa#os defnir polticas de e/ce8es para o ,ireEall.
+) 1eali2e o teste usando o comando &ing na sua interface loo&bac4:
# ping 127.0.0.1
8) 5 teste anterior nos &ermitiu veri'car que devemos de'nir uma
&olDtica de e-ce(o &ara a interface loo&bac4. @riaremos uma
&olDtica que &ossibilite isso:
# iptables -A OUTPUT -d 127.0.0.1 -j ACCEPT
# iptables -A INPUT -d 127.0.0.1 -j ACCEPT
9) ,iste as &olDticas ativas:
# iptables -n -L
:) 0e>amos se agora conseguimos fa2er um &ing na interface de
loo&bac4:
# ping 127.0.0.1
;) E-ecute o comando &ing/ tendo como alvo o endereo da mquina
do instrutor &ara veri'car se alguma comunica(o 7 &ossDvel:
# ping 192.168.200.254
Captulo 14 $i(e5all - 151
C) Agora criaremos uma &olDtica que &ermita que se>a e-ecutado o
comando &ing a &artir de sua mquina com a sua interface de rede
interna/ mas sua mquina n(o ir res&onder a &ing:
# iptables -A OUTPUT -p icmp --icmp-type 8 -s 192.168.200.x -d 0/0 -j
ACCEPT
# iptables -A INPUT -p icmp --icmp-type 0 -s 0/0 -d 192.168.200.x -j
ACCEPT
1E) 0eri'que se as regras foram adicionadas:
# iptables -n -L
11) "odemos ver se conseguimos fa2er um &ing na mquina do
instrutor:
# ping 192.168.200.254
12) Agora que > temos um &olDtica de e-ce(o/ tente fa2er um
&ing no domDnio <<<.uol.com.br:
# ping www.uol.com.br
1.) A&esar de conseguirmos usar o &ing nos endereos !"Rs/ ainda
n(o conseguimos fa2er um &ing &or nomes. 0amos desenvolver a
regra que faa isso:
# iptables -A OUTPUT -p udp -s 192.168.200.x --sport 1024:65535 -d 0/0
--dport 53 -j ACCEPT
# iptables -A INPUT -p udp -s 0/0 --sport 53 -d 192.168.200.x --dport
1024:65535 -j ACCEPT
Captulo 14 $i(e5all - 152
1+) 0eri'que se as regras foram adicionadas:
# iptables -n -L
18) @om as regras de'nidas/ &odemos fa2er um &ing &or nomes:
# ping www.uol.com.br
3es#o <ue libera#os o nosso freEall para resolver os no#esM ainda no
conseui#os acessar u# servidor Aeb por eleM pois precisa#os liberar o acesso as
portas 8& e ""3.
19) @riaremos uma regra de e-ce(o que &ermita navega(o <eb:
# iptables -A OUTPUT -p tcp -s 192.168.200.x --sport 1024:65535 -d 0/0
--dport 80 -j ACCEPT
# iptables -A OUTPUT -p tcp -s 192.168.200.x --sport 1024:65535 -d 0/0
--dport 443 -j ACCEPT
# iptables -A INPUT -p tcp -s 0/0 --sport 80 -d 192.168.200.x --dport
1024:65535 -j ACCEPT
# iptables -A INPUT -p tcp -s 0/0 --sport 443 -d 192.168.200.x --dport
1024:65535 -j ACCEPT
1:) Faamos um teste &ara ver se conseguimos traar rotas
usando a ferramenta mtr:
# mtr 200.176.2.11
Captulo 14 $i(e5all - 153
1;) 5 mtr utili2a res&ostas icm& do ti&o 11/ ent(o &recisamos criar
uma regra liberando a entrada desse ti&o de &acote:
# iptables -A INPUT -p icmp --icmp-type 11 -s 0/0 -j ACCEPT
1C) 0eri'que se a regra foi adicionada:
# iptables -n -L
2E) E-ecute o comando mtr &ara testar a regra criada:
# mtr 200.17.2.11
14.5. /irewa$$ co%o #atewaC de rede
-e o nosso servidor KM por e/e#ploM u# freEall de 6ronteira entre a sua rede e
a internetM ou sejaM u# ateEa? de redeM deve#os estabelecer u#a poltica <ue 6aa o
repasse dos pacotes de u#a rede para a outraM para per#itir o repasseO6orEardP de
pacotes entre u#a rede e outra.
1) A &rimeira coisa que &recisamos fa2er 7 liberar o re&asse de
&acotes entre as interfaces no 4ernel:
# sysctl -a | grep ip_forward
# sysctl -w net.ipv4.ip_forward=1
*ara deixar esse valor fxo/ devemos deixar esse "ar]metro dentro de
/etc/sysctl.conf
# vim /etc/sysctl.conf
net.i"v4.i"MforwardI#
Captulo 14 $i(e5all - 154
2) Agora &recisamos &ermitir no i&tables que nossa rede se comunique
com outras. #evemos fa2er isso acrescentas regras na c%ain
F51[A1#:
# iptables -A FORWARD -s 192.168.200.0/24 -j ACCEPT
# iptables -A FORWARD -d 192.168.200.0/24 -j ACCEPT
4o pode#os es<uecer <ue a internet trabal%a co# I2Cs reservadosM di6erente
da nossa rede. 2or isso tere#os <ue 6a;er a traduo do enderea#ento inv*lido Oda
1A4P para o v*lido Oda internetPM atravKs da especifcao da tabela 4atM 6a;endo o
#ascara#ento.
.) 0amos fa2er com que nossa ,A$ se>a mascarada:
# iptables -t nat -A POSTROUTING -o ethX -s 192.168.200.0/24 -j
MASQUERADE
@ interface etW 0 a 7ue estC com o ,* vClido.
+) 0eri'que como est(o as regras inseridas:
# iptables -n -L
# iptables -n -L -t nat
8) "ara n(o &erdermos essas regras/ &odemos salv*las utili2ando
recursos do i&tables/ lembrando que isso n(o 7 ainda um scri&t
&ro'ssional:
# iptables-save > /root/firewall.back
# cat firewall.back
9) Agora &odemos fa2er um teste e lim&ar todas as regras adicionadas
na mem)ria:
# iptables -F
# iptables -F -t nat
Captulo 14 $i(e5all - 155
:) 0eri'que se as regras foram a&agadas:
# iptables -n -L
# iptables -n -L -t nat
;) 6odi'que as &olDticas bsicas &ara A@@E"L:
# iptables -P INPUT ACCEPT
# iptables -P OUTPUT ACCEPT
# iptables -P FORWARD ACCEPT
14.'. Scri(t de "rewa$$
0odas as reras <ue 6ora# 6eitasM fca# na #e#ria do co#putadorM se ele 6or
reiniciadoM perdere#os todas elas. 2ode#os utili;ar o iptables=saveM #as ele no fca
u# script profssional.
-eue a<ui u# script co# todas as reras <ue 6ora# 6eitasM e# seuida esse
script pode ser adicionado aos nveis de e/ecuo do siste#aM para ser carreado
se#pre a #*<uina 6or liada.
5a#os c%a#ar nosso script de freEall.s%7
# cd /etc/init.d
# vim firewall.sh
Captulo 14 $i(e5all - 156
1 #!/bin/bash
2 # Firewall personalizado - Curso 452 - 4Linux
3
4 ## Definio de variveis
5
6 IPT=$(which iptables)
7 ET0="192.168.200.X"
8 NET="0/0"
9 PA=1024:65535
10 REDE="192.168.200.0/24"
11
12 ## Fechando as Polticas
13 $IPT -P INPUT DROP
14
15 $IPT -P OUTPUT DROP
16
17 $IPT -P FORWARD DROP
18
19 ## Liberando LoopBack
20
21 $IPT -A OUTPUT -d 127.0.0.1 -j ACCEPT
22
23 $IPT -A INPUT -d 127.0.0.1 -j ACCEPT
24
25 ## Liberando Ping (Sada de icmp 8 e Entrada de icmp 0)
26
27 $IPT -A OUTPUT -p icmp --icmp-type 8 -s $ET0 -d $NET -j ACCEPT
28
29 $IPT -A INPUT -p icmp --icmp-type 0 -s $NET -d $ET0 -j ACCEPT
30
31 ## Liberando resoluo de nomes
32
33 $IPT -A OUTPUT -p udp -s $ET0 --sport $PA -d $NET --dport 53 -j
ACCEPT
34
35 $IPT -A INPUT -p udp -s $NET --sport 53 -d $ET0 --dport $PA -j ACCEPT
36
37 ## Liberando navegao web
38
39 $IPT -A OUTPUT -p tcp -s $ET0 --sport $PA -d $NET --dport 80 -j
ACCEPT
40 $IPT -A OUTPUT -p tcp -s $ET0 --sport $PA -d $NET --dport 443 -j
ACCEPT
Captulo 14 $i(e5all - 157
41
42 $IPT -A INPUT -p tcp -s $NET --sport 80 -d $ET0 --dport $PA -j ACCEPT
43 $IPT -A INPUT -p tcp -s $NET --sport 443 -d $ET0 --dport $PA -j
ACCEPT
44
45 ## Liberando consultas mtr
46
47 $IPT -A INPUT -p icmp --icmp-type 11 -s $ET0 -j ACCEPT
48
49 ## Regras de FORWARD e NAT para liberar a LAN para acessar a
internet.
50
51 net.ipv4.ip_forward=1
52
53 $IPT -A FORWARD -s $REDE -j ACCEPT
54
55 $IPT -A FORWARD -d $REDE -j ACCEPT
56
57 $IPT -t nat -A POSTROUTING -o ethX -s $REDE -j MASQUERADE
@gora "odemos confgurar as "ermiss?es de execu-.o "ara o scri"t:
# cmod 522 frewall.s
# ls -l frewall.s
2ara <ue ele seja iniciado junto co# siste#a <uando a #*<uina 6or liadaM
pode#os colocar o script nos nveis de e/ecuo7
# update-rc.d firewall.sh defaults
# ls -l /etc/rc2.d
14.). 1xerc2cios tericos
1P Suantas tabelas o iptables possu e <ual delas K a padroU
Captulo 14 $i(e5all - 158
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
2P Sual tabela K respons*vel por 6a;er o #ascara#ento de I2Cs inv*lidosU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
3P Sual seria# as reras para liberar <ue outras #*<uinas consia# conectar
na porta 22 do seu servidorU
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
"P Consulte o #anual do iptables e responda <ual #dulo K necess*rio para
li#itar a <uantidade de pacotes ic#p <ue sua #*<uina pode receberM e
co#o devo us*=lo.
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV
14.,. Laboratrio
1. I#aine# <ue o seu servidor te# 2 I2CsM u# v*lido e outro inv*lido. Crie u#a
rera <ue redirecione todos os pacotes <ue c%eare# na porta 2$ do I2 v*lido
para u#a #*<uina da rede <ue ten%a I2 inv*lido na porta 2$. +ica7 #an
iptables.
Captulo 15 4pen"P& - 159
Captulo 15
3penVP"
15.1. Objetivos
.ntender co#o 6unciona u#a 524L
Confurar u#a 524 %ost to %ost.
15.2. Introduo 3erica
524 5irtual 2rivate 4etEorBM K u#a rede de co#unicao particularM
eral#ente utili;ando canais de co#unicao inseurosM co#o a prpria 1A4 ou
#es#o a Internet. O <ue torna esta rede de co#unicao particular K o 6ato das
6erra#entas de 524 e#preare# #Ktodos e protocolos de criptorafaM criando u#
tNnel de criptorafa para prover acesso seuro a partes da rede ou #es#o liao
entre 1A4Cs eorafca#ente separadasM eli#inando a necessidade de u# canal de
co#unicao privativo de alto custo 6ornecido pela operadora de teleco#unica8es.
0a#bK# pode#os utili;ar u#a 6erra#enta de 524 para i#ple#entar ou
re6orar a seurana de acesso %* alu# servio dentro de nossa rede.
5ocQ possui u# so6tEare de erao de notas fscaisM e os 6uncion*rios
acessa# este ter#inal via telnetM <ue K u# protocolo <ue no i#ple#enta
criptorafa. 2ara corriir esta situao e re6orar a seurana deste a#bienteM vocQ
poderia confurar u#a 524 entre o co#putador dos usu*rios e o servidorM
#el%orando assi# a seurana deste servio.
4este laboratrioM ire#os confurar u#a 524 %ost=to=%ost.
Captulo 15 4pen"P& - 160
15.. 5r+tica -iri#ida
4s trabal%are#os neste laboratrio co# u# par de c%aves si#KtricasM ou
sejaM usare#os a #es#a c%ave tanto para o servidor 524 <uanto para o cliente 524M
looM a c%ave deve ser erada no servidor e replicada para o cliente via --:.
15..1. !on"#urando o servidor
1) 5 &rimeiro &asso 7 instalar o soft<are 5&en0"$:
# a"titude install o"env"n
5a#os entrar no diretrio @etc@openvpn e erar a c%ave7
# cd /etc/openvpn
# openvpn --genkey --secret /etc/openvpn/chave
Captulo 15 4pen"P& - 161
2) 0amos gerar o arquivo de con'gura(o do servidor:
# vim /etc/openvpn/server.conf
1 #Configurao para servidor
2 dev tun
3 # Server -> 172.16.0.1
4 # Client -> 172.16.0.2
5 #Definindo os IP's da VPN
6 ifconfig 172.16.0.1 172.16.0.2
7 #Definido a chave
8 secret /etc/openvpn/chave
9 # Definindo a porta
10 port 5000
11 comp-lzo
12 verb 4
15.4. !on"#urando o c$iente
1) Lamb7m 7 necessrio ter o 5&en0"$ no cliente:
# a"titude install o"env"n
2) 0amos entrar no diret)rio /etc/o&env&n e co&iar a c%ave do servidor.
# cd /etc/openvpn
# scp 192.168.200.X /etc/openvpn/chave .
.) 0amos gerar o arquivo de con'gura(o do cliente:
# vim /etc/openvpn/client.conf
Captulo 15 4pen"P& - 162
1 #Configurao para cliente
2 dev tun
3 # Server -> 172.16.0.1
4 # Client -> 172.16.0.2
5 #Definindo os IP's da VPN
6 ifconfig 172.16.0.2 172.16.0.1
7 #Definindo o IP real do servidor
8 remote 192.168.200.X
9 #Definido a chave
10 secret /etc/openvpn/chave
11 # Definindo a porta
12 port 5000
13 comp-lzo
14 verb 4
+) !niciando a 0"$/ tanto no servidor quanto no cliente.
# openvpn --config /etc/openvpn/server.conf
# openvpn --config /etc/openvpn/client.conf
8) E-ecute um ifcon'g &ara ver se a interface tunE foi criada:
R i6conf =a
9) E-ecute um &ing na sua interface 0"$:
# ping 172.16.0.X
:) E-ecute um &ing na interface do seu colega:
# ping 172.16.0.X
.6etue testes e# todos os servios utili;ando o I2 da 524.
Captulo 15 4pen"P& - 163
*1/1*JN!I6S
@I@LIOE*F/I!6S
4elson 3endona e 0iao 5ilas >oas. D49 1inu/. .ditora >rasport.
0%e 1inu/ +ocu#entation 2rojectM tt"://www.tld".org
Duia ,oca Dnu@1inu/M tt"://focalinux.ci"sga.org.br
Captulo 15 4pen"P& - 164
6N1GOS
#+ste* I*a5e% 6 4Linu/
3 2ue 7
O -?ste# I#aer K u# siste#a de auto#ati;ao para rotinas de bacBup e
recuperao de #*<uinas. .le per#ite <ue as #es#as #*<uinas possa# ser
co#partil%adas por v*rios cursos si#ultTneosM #as de 6or#a <ue o estado delasM isto
KM todos os seus ar<uivos e confura8es seja# uardados e recuperados de 6or#a
individual por aluno.
Instalan'o o p%o5%a*a8
2ri#eira#enteM o aluno dever* 6a;er o doEnload do prora#a e #udar as suas
per#iss8es. .sse procedi#ento s K necess*rio na pri#eira aula.
# cd /sbin
# wget 192.168.1.1/si/si_cliente
# chmod u+x /sbin/si_cliente
Captulo 15 4pen"P& - 165
15.4.1. 4ac-up ao fna) de cada au)a
Ao 'nal de cada aula o aluno e/ecuta o co#ando abai/oM selecionando a opo
de Enviar !magem.
# si_cliente
O pro6essor verifcar* se todas as #a<uinas esto co# a i#ae# pronta para
enviar. .# caso positivoM ir* e/ecutar u# prora#a para recebQ=las.
"51LA$L5: $\5 desliue seu #icroM pois o servidor estar* conectado a ele
recebendo os ar<uivos #odifcados. Aps o processo ter sido concludoM as #*<uinas
sero desliadas auto#atica#ente.
15.4.2. Restore antes de cada aula
4o incio de cada aulaM a i#ae# de cada #*<uina dever* ser restaurada.
2ara issoM basta e/ecutar o co#ando abai/oM selecionando a opo )eceber I#ae#.
4or#al#enteM esta operao K reali;ada pelo prprio instrutor antes da aula se
iniciar e dever* ser reali;ada pelo aluno apenas sob sua orientao.
ALE$]\5T 0odos os ar<uivos do siste#a podero ser apaadosl -e vocQ no
6e; nen%u# tipo de bacBupM 6aa=o antesl
# si_cliente
Aparecer* u#a listae# das i#aens disponveis. 5ocQ dever* escol%er a<uela
<ue corresponder a sua #*<uina.
9# e/e#plo de no#enclatura das i#aens7
451-Instrutor-31-Noturno-10
(Cod. do curso)-(Nome do Instrutor)-(Dia de Incio)-(Perodo)-(Fim do
IP do Micro)
Aps a concluso do processoM a #*<uina ir* se reiniciali;ar auto#atica#ente
eM e# seuidaM estar* pronta para uso.

Você também pode gostar