Escolar Documentos
Profissional Documentos
Cultura Documentos
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. Confgurando a rede ..................................................................................................... 9
1.4. Confgurando a resoluo de nomes............................................................................... 9
1.5. Confgurao do hostname............................................................................................10
1.6. Confgurando o repositrio de rede.............................................................................. 10
1.7. Remover servios desnecessrios ................................................................................ 11
1.8. Defnindo variveis e alias de sistemas.........................................................................12
1.9. Funcionamento do Sistema........................................................................................... 13
1.10. Exerccios Tericos..................................................................................................... 15
1.11. Laboratrio..................................................................................................................15
Captulo 2
PAM.......................................................................................................................................... 16
2.1. Objetivos....................................................................................................................... 16
2.2. Introduo terica.........................................................................................................16
2.3. Mdulos.........................................................................................................................17
2.4. Controles....................................................................................................................... 17
2.5. Prtica dirigida............................................................................................................. 18
2.6. Exerccios Tericos....................................................................................................... 21
2.7. Laboratrio....................................................................................................................21
Captulo 3
RAID......................................................................................................................................... 22
3.1. Objetivos....................................................................................................................... 22
3.2. Introduo terica.........................................................................................................22
3.2.1. Nveis de RAID.................................................................................................................... 23
-3
LVM.......................................................................................................................................... 31
4.1. Objetivos....................................................................................................................... 31
4.2. Introduo terica.........................................................................................................31
4.3. Como funciona o LVM................................................................................................... 32
4.4. Defnindo as Parties ..................................................................................................33
4.5. Prtica Dirigida............................................................................................................. 34
4.6. Usando o LVM............................................................................................................... 36
4.7. Administrando o LVM.................................................................................................... 37
4.8. Troubleshooting............................................................................................................ 38
4.9. Exerccios Tericos....................................................................................................... 40
4.10. Laboratrio..................................................................................................................41
Captulo 5
DHCP........................................................................................................................................42
5.1. Objetivos....................................................................................................................... 42
5.2. Introduo terica.........................................................................................................42
5.3. Prtica dirigida............................................................................................................. 44
5.3.1. Confgurando um servidor DHCP........................................................................................ 44
5.3.2. Principais diretrizes do arquivo de confgurao................................................................ 45
-4
7.3.1. Instalao e confgurao do NFS....................................................................................... 58
9.3. Resoluo...................................................................................................................... 74
9.3.1. Resoluo Recursiva............................................................................................................75
9.3.2. Resoluo Iterativa.............................................................................................................. 77
-5
10.3.2. MPM Worker ....................................................................................................................96
-6
12.14. Filtrando acessos com Squid.................................................................................. 126
12.15. Blacklist e Whitelist................................................................................................ 128
12.16. Autenticao NCSA................................................................................................. 129
12.17. Auditoria de acesso com SARG............................................................................... 130
12.18. Exerccios Tericos................................................................................................. 131
12.19. Laboratrio..............................................................................................................131
Captulo 13
OpenLDAP.............................................................................................................................. 132
13.1. Objetivos................................................................................................................... 132
13.2. Introduo terica.....................................................................................................132
13.3. Prtica dirigida......................................................................................................... 133
13.4. Confgurando um cliente LDAP ................................................................................ 141
13.5. Acessando o OpenLDAP via Browser com PhpLdapAdmin....................................... 144
13.6. Autenticando o Squid na base de usurios LDAP.....................................................145
13.7. Exerccio terico....................................................................................................... 145
13.8. Laboratrio................................................................................................................146
Captulo 14
Firewall.................................................................................................................................. 147
14.1. Objetivos................................................................................................................... 147
14.2. Introduo terica.....................................................................................................147
14.3. Compreendendo as polticas BSICAS e o conceito das EXCEES.......................148
14.4. Prtica dirigida......................................................................................................... 149
14.5. Firewall como gateway de rede................................................................................ 153
14.6. Script de frewall.......................................................................................................155
14.7. Exerccios tericos.................................................................................................... 157
14.8. Laboratrio................................................................................................................158
Captulo 15
OpenVPN................................................................................................................................ 159
15.1. Objetivos................................................................................................................... 159
15.2. Introduo Terica.................................................................................................... 159
15.3. Prtica Dirigida......................................................................................................... 160
15.3.1. Confgurando o servidor.................................................................................................. 160
ndice de tabelas
ndice de Figuras
Captulo 1
Ajustes Iniciais
1.1. Objetivos
Confgurar a rede;
Confgurar hostname;
si_cliente
Baixar uma imagem padro com Debian Lenny e Gnome instalado direto do
servidor, por favor no troque a senha padro 123456 que utilizamos, para que o
pessoal do suporte possa sempre ajudar em caso de problemas.
Para saber mais sobre o System Imager, que o sistema de salvamento de
imagens, acesse:
http://wiki.systemimager.org
# Interface Loopback
2 auto lo
3 iface lo inet loopback
1
Red Hat:
# vim /etc/sysconfg/network/ifcfg-eth0
para
eliminar
problemas
em
servios
de
rede.
Abra
arquivo
invoke-rc.d
invoke-rc.d
invoke-rc.d
invoke-rc.d
exim4 stop
nfs-common stop
portmap stop
openbsd-inetd stop
update-rc.d
update-rc.d
update-rc.d
update-rc.d
-f
-f
-f
-f
exim4 remove
nfs-common remove
portmap remove
openbsd-inetd remove
Red Hat:
# chkconfg --list
# chkconfg --level 2345 portmap stop
essenciais
ao
seu
funcionamento.
Ento
iremos
confgurar
nosso
GNU/Linux.
cd /proc
ls
ps aux
cat cpuinfo
/etc/fstab
/etc/mtab
-l
/dev
ls -l /lib/modules
lsmod
modprobe -l
cat /proc/modules
Fique atento, porque tudo que estudamos no primeiro captulo, iro cair no
exame da LPI, estude as apostilas da formao. Para informaes acesse:
http://www.lpibrasil.com.br/
1.11. Laboratrio
1. Instale o htop para gernciar os processos;
2. Desabilite o gdm do runlevel padro, utilizando sysv-rc-rconf.
Captulo 2 PAM - 16
Captulo 2
PAM
2.1. Objetivos
Captulo 2 PAM - 17
esto disponveis no seguinte endereo:
http://www.kernel.org/pub/linux/libs/pam
2.3. Mdulos
O PAM trabalha com mdulos e controles, e cada tipo de mdulo provem uma
funcionalidade diferente dentro do sistema. Vamos comentar primeiro os mdulos:
session: Responsvel
por
tarefas
ps
autenticao,
como
montar
um
2.4. Controles
Alm dos mdulos, existem tambm os controles, os quais comentaremos
agora:
Captulo 2 PAM - 18
Captulo 2 PAM - 19
Repare que a partir do momento que o plugin est ativado no programa
login e o arquivo necessrio est criado, os usurios comuns no
conseguem mais logar, somente o usurio root. Isso no muito vivel mas
serve de exemplo para entendermos como o PAM funciona.
Uma maneira prtica de usar o PAM fazermos com que o usurio root no
tenha acesso direto ao login, forando a logar com usurio comum e depois fazer um
su para virar root.
5) Para isso aconter, editamos o arquivo e visualizamos a regra:
# vim /etc/pam.d/login
login;*;root;!Al0000-2359
* - Terminal
root - Usurio
efetuar o login.
Captulo 2 PAM - 20
Com o PAM, podemos limitar quais usurios podero ter acesso a utilizar o
comando su. Para isso, crie um grupo chamado admins para os usurios que podero
ter acesso a fazer o su.
7) Adicione o grupo onde os usurios que poderam fazer o su:
# groupadd admins
10)
Em seguida tente com um usurio que no pertence ao grupo
admins:
$ su -
11)
No fnal dos arquivos possibilite ssh no horrio das 7:30 s
19:00. Para isso insira o mdulo pam_time.so no arquivo do ssh
em /etc/pam.d:
# aptitude install ssh
# vim /etc/pam.d/ssh
account required pam_time.so
Captulo 2 PAM - 21
12)
# vim /etc/security/time.conf
sshd;*;*;Al0730-1900
2.7. Laboratrio
1. Permita o login de root apenas no tty6;
2. Crie o usurio "manutencao" faa com ele efetua login ssh apenas de segunda a
sexta feira, das 8:00 as 18:00.
Captulo 3 RAID - 22
Captulo 3
RAID
3.1. Objetivos
Confgurar RAID-1;
Captulo 3 RAID - 23
Existem duas formas de criarmos um RAID.
Via Hardware: Feito por uma placa controladora que conecta um disco ao
outro. A principal vantagem o desempenho, j que um RAID via hardware
mais rpido e independe do sistema operacional. A principal desvantagem,
que a placa controladora se torna um SPOF (Single Point of Failure), ou seja,
necessrio ter uma controladora de discos igual ou compatvel com a que voc
possui para o caso de falhas neste hardware.
Captulo 3 RAID - 24
dados so lidos em partes iguais e simultaneamente de todos os discos.A
desvantagem desse nvel que s metade do volume total de armazenamento
nos discos utilizados fcar disponvel para o sistema operacional. preciso no
mnimo dois discos para implementar RAID 1, sempre em pares.
A1 B1 P1
A2 P2 C2
P3 B3 C3
Qualquer um dos discos que falhar pode ser rapidamente reconstrudo atravs
de novas operaes XOR entre os dados restantes. Tomemos por exemplo A1 =
01001100 e B1 = 10100101.
01001100 XOR
10100101
-------11101001
Agora suponha que o bloco B1 foi perdido. Para recuper-lo basta aplicar um
Captulo 3 RAID - 25
XOR entre A1 e P1.
01001100 XOR
00010110
-------01011010
A operao XOR signifca que se so iguais "0 e 0" ou "1 e 1", ento o
resultado verdadeiro (0). Se houver mais de dois blocos para serem comparados,
calcule a paridade dos dois primeiros, e com resultado, compare com o terceiro, e
assim sucessivamente. A principal desvantagem do RAID 5 o custo de
processamento da paridade. Portanto, RAID 5 menos efciente na gravao que
seus antecessores.
A quantidade mnima de discos no RAID 5 3, podendo suportar qualquer
nmero maior que 3, mesmo para discos de tamanhos diferentes. O volume
disponvel para armazenamento dado pela equao (Q-1)*Dmenor, onde Q a
quantidade de discos, e Dmenor o tamanho do menor disco.
Os nveis de RAID podem ser combinados para se potencializar alguma das
vantagens deles. As combinaes mais comuns so os chamado RAID 10, RAID 0+1 e
RAID 50.
Captulo 3 RAID - 26
3.3. Prtica dirigida
1) Abra o particionador e marque as parties sda11, sda12 e sda13
sendo do tipo "RAID autodetect", caso no existam, crie:
# cfdisk /dev/sda
Captulo 3 RAID - 27
3) Modifque o arquivo, adicionando o seguinte contedo:
DEVICE
ARRAY
6) Montando o RAID:
# mount -t ext3 /dev/md0 /mnt/raid
7) Confgure o /etc/fstab:
/dev/md0 /mnt/raidext3defaults0
Captulo 3 RAID - 28
2) Para testar a redundncia, vamos criar um script chamado
"raidTest.sh" que escreve em um arquivo de 3 em 3 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
Captulo 3 RAID - 29
4) Adicionando um disco ao RAID:
# mdadm /dev/md0 --add /dev/sda11
# mdadm --detail /dev/md0
6) Reiniciando o RAID:
# mdadm -As /dev/md0
Captulo 3 RAID - 30
3) Quais so as vantagens e desvantagens de usar o RAID 1?
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
3.8. Laboratrio
Captulo 4 LVM - 31
Captulo 4
LVM
4.1. Objetivos
Captulo 4 LVM - 32
4.3. Como funciona o LVM
O LVM usado para agrupar vrios discos de forma que o gerenciamento dos
mesmos seja vivel em um servidor de produo que no pode fcar desligado.
Vamos imaginar que temos 3 HD's em nossa mquina, e gostaramos de
aproveitar ao mximo de seus tamanhos.
Para no ter que se preocupar com o tamanho das parties logo de imediato,
iremos usar o LVM para que possamos gernciar os tamanhos das parties sem
precisar fazer as famosas ``gambiarras''.
Para trabalhar com LVM as parties precisam estar formatadas com o tipo
LVM. O LVM trabalha com Grupos de Volumes para alocar todas as parties que
esto defnidas como Volume Fsicos do LVM. Esses volumes fsicos sero divididos
em vrios Volumes lgicos como se fossem uma diviso de um disco (partio) para
alocar o determinado ponto de montagem, e isso vai trazer a fexibilidade para
redimensionar a determinada partio. Com mais detalhes vejamos as seguintes
camadas que o LVM trabalha:
Captulo 4 LVM - 33
4.4. Defnindo as Parties
Antes de criarmos as parties LVM, temos que ter em mente nossa tabela de
particionamento:
# cat /etc/fstab
Agora iremos ver nossas parties:
# cat /proc/partitions
Por causa do captulo de RAID iremos ter que recriar as parties novamente,
e deixar estas Parties Livres:
Tipo
Device
Ponto de Montagem
Tamanho em MB
Filesystem
Log
/dev/sda10
No montado
512 MB
Sem fs
Log
/dev/sda11
No montado
512 MB
Sem fs
Log
/dev/sda12
No montado
512 MB
Sem fs
Log
/dev/sda13
No montado
512 MB
Sem fs
Log
/dev/sda14
No montado
512 MB
Sem fs
Nas parties para realizao deste trabalho, defna o tipo das parties como
8E, e utilize o cfdisk para realizao desta tarefa. No esquea de reiniciar o
computador.
# cfdisk /dev/hda
Captulo 4 LVM - 34
4.5. Prtica Dirigida
1) Verifque os pacotes necessrios ao LVM, no Debian:
# dpkg -l lvm2
Caso no tenha:
# aptitude install lvm2
3) Caso no tenha:
# yum install lvm2
Captulo 4 LVM - 35
7) Defna um Grupo de Volumes com os volumes fsicos criados, nosso
caso ser o vg01:
# vgcreate vg01 /dev/sda11 /dev/sda12
14)
Captulo 4 LVM - 36
4.6. Usando o LVM
1) Criando um ponto de montagem para LVM (caso seja necessrio):
# mkdir /lvm
Caso esteja utilizando RedHat (ou uma distribuio que siga o mesmo
padro),verifque a necessidade de criao de um label para o device. Se for
necessrio, faa-o. Red Hat: Com Label:
# e2label /dev/vg01/lv01 /lvm
Caso a mquina seja inicializada neste momento, o LVM no seria montado
para utilizao. Para que o volume LVM seja montado automaticamente, necessrio
que seja editado o arquivo /etc/fstab e se adicione estas linhas no /etc/fstab:
/lvm
ext3
defaults
/lvm
ext3
defaults
Captulo 4 LVM - 37
4.7. Administrando o LVM
1) Desmonte o LVM:
# umount /lvm
3) Verifque o volume:
# e2fsck -f /dev/vg01/lv01
Essa verifcao muito importante, faz a verifcao no disco. Caso houver
algum erro, necessrio fazer um "restaurao".
4) Reestruturando o sistema de arquivos do Volume Lgico (LV):
# resize2fs /dev/vg01/lv01
5) Montando o LV:
# mount -t ext3 /dev/vg01/lv01 /lvm
Captulo 4 LVM - 38
9) Verifque a tabela de parties:
# df -h
10)
# umount /lvm
4.8. Troubleshooting
Troubleshooting a forma com a qual iremos resolver o problema.
1)
# e2fsck -f /dev/vg01/lv01
Captulo 4 LVM - 39
6) Montando o LV:
# mount -t ext3 /dev/vg01/lv01 /lvm
9) Removendo o LV:
# lvremove /dev/vg01/lv01
Caso a partio esteja montada, no vai ser possvel remover.
10)
11)
Removendo o grupo:
# lvs
# vgremove vg01
12)
# vgdisplay
Captulo 4 LVM - 40
13)
14)
# lvs
# pvscan
Captulo 4 LVM - 41
6) Qual o arquivo que mostra todas as parties criadas na mquina?
_______________________________________________________________________________
_______________________________________________________________________________
7) Como eu consigo exibir a tabela de parties com os comandos: fdisk e
cfdisk, sem entrar no programa?
_______________________________________________________________________________
_______________________________________________________________________________
8) Qual comando que eu consigo sincronizar, novas parties criadas em meu
disco?
_______________________________________________________________________________
_______________________________________________________________________________
4.10. Laboratrio
1. Pegue duas parties que no esto sendo utilizadas e crie um RAID1;
2. Adicione a partio como PV;
3. Verifque se esto todas funcionado;
4. Crie duas novas parties (LV) , a primeira 256mb e outra com 1GB;
5. Aplique o sistemas de arquivos swap na primeira e xfs na segunda;
6. Crie um ponto de montagem para a segunda LV com o nome de RESTORE;
7. Coloque as entradas no arquivo /etc/fstab;
8. Reinicie a mquina e verifque se est tudo bem;
9. Aps todos os testes, remova tudo que foi feito com o RAID e LVM, inclusive
suas entradas no /etc/fstab.
Captulo 5 DHCP - 42
Captulo 5
DHCP
5.1. Objetivos
Captulo 5 DHCP - 43
rede a um cliente, ou seja, aquele cliente agora possui confguraes
distribudas pelo servidor DHCP;
atualizao dinmica dos servidores de DNS para que cada cliente disponha tambm
de um DNS. Este mecanismo utiliza o protocolo de atualizao do DNS especifcado
no RFC 2136.
Captulo 5 DHCP - 44
5.3. Prtica dirigida
Captulo 5 DHCP - 45
Captulo 5 DHCP - 46
2) Ou editando o arquivo /etc/network/interfaces, trocando static por
dhcp, fcam assim:
# vim /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
MQUINA
MAC ADRESS
IP FIXADO
micro 1
00:80:C7:D2:F8:D5
192.168.200.210
micro 2
88:3D:BE:00:C7:00
192.168.200.214
Captulo 5 DHCP - 47
2) Para esse cenrio ser possvel, seria necessria a respectiva entrada
no arquivo de confgurao /etc/dhcp3/dhcpd.conf:
host micro1 {
hardware ethernet 00:80:C7:D2:F8:D5;
fixed-address 192.168.200.210;
}
3
1
2
3
4
host micro2 {
hardware ethernet 88:3D:BE:00:C7:00;
fixed-address 192.168.200.214;
}
5
6
7
8
ddns-update-style none;
5
1
option routers192.168.X.254;
option subnet-mask 255.255.255.0;
option domain-name microx.com.br;
option domain-name-servers200.204.0.10, 200.204.0.138;
default-lease-time 21600;
max-lease-time 43200;
4
5
6
7
8
9
10
11
12
13
14
host micro1 {
hardware ethernet 00:80:C7:D2:F8:D5;
fixed-address 192.168.X.210;
}
15
16
17
18
19
20
host micro2 {
hardware ethernet 88:3D:BE:00:C7:00;
fixed-address 192.168.X.214;
}
Captulo 5 DHCP - 48
5.6. Exerccios tericos
1) Um servidor DHCP precisa ser necessariamente o gateway da rede?
Explique.
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
5.7. Laboratrio
1. Retire o daemon de inicializao do DHCP do runlevel;
2. Reinicie a mquina e veja se o servio do DHCP est inativo.
Captulo 6 FTP - 49
Captulo 6
FTP
6.1. Objetivos
Captulo 6 FTP - 50
J no modo passivo, os comandos tambm so enviados para o servidor atravs
de uma porta alta pelo cliente, e so recebidas na porta 21 do servidor. Neste
momento, o cliente avisa ao servidor que ele deve utilizar o modo passivo atravs do
comando "PASV", e ento os dados sero enviados utilizando portas altas tanto pelo
cliente quando pelo servidor. Neste caso, no temos mais problemas com o frewall
no lado do cliente, porm, temos que habilitar a utilizao de portas altas no servidor,
o que pode gerar muitos problemas. Felizmente, na confgurao do servidor FTP
podemos especifcar o range de portas que o servidor deve utilizar, minimizando
assim o problema no lado do servidor.
Sobre segurana, um dos principais problemas do FTP que a maioria dos
servidores no implementa criptografa, ento, caso voc deseja um
ambiente seguro com FTP, necessrio a implementao de criptografa,
como OpenSSL ou TLS.
Red Hat:
A plataforma Red Hat utiliza o vsftpd por padro.
Captulo 6 FTP - 51
3) Para confgurar o seu servidor FTP, edite o arquivo de confgurao
e altere as diretivas listadas a seguir:
# vim /etc/proftpd/proftpd.conf
standalone
022
022
20
Cada usurio do FTP pode ter uma mensagem de login diferente. Crie o arquivo
welcome.msg na home do usurio.
Captulo 6 FTP - 52
9) Verifque em qual porta o servidor FTP est escutando:
# netstat -nltup
3) Agora conecte-se como um usurio anonymous, fornecendo um email qualquer como senha.
# 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 FTP - 53
4) A conexo foi recusada porque o padro do Proftpd no aceitar
conexes annimas. Vamos habilitar a navegao annima. :)
# vim /etc/proftpd.conf
Tire um comentrio por linha, da linha 132 at o fnal do arquivo:
# <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
145
146
147
...
At
#
#RequireValidShell off
#
## Limit the maximum number of anonymous logins
#MaxClients10
o final do arquivo retirar um # comentrio por linha.
Captulo 6 FTP - 54
6.5. Comandos FTP
ls
cd
lcd
!ls
get
put
Captulo 6 FTP - 55
Ento como usurio annimo, vamos fazer alguns testes:
1) Liste o contedo do servidor:
ftp> ls
Captulo 6 FTP - 56
8) Desligue o modo interativo, e tente novamente:
ftp> prompt
Interactive mode off.
ftp> mget *
10)
# less /var/log/proftpd/xferlog
6.7. Laboratrio
1. Permita que o usurio anonymous poste dados em um diretrio chamado
incoming;
Captulo 7 NFS - 57
Captulo 7
NFS
7.1. Objetivos
Captulo 7 NFS - 58
portmap - Servio que permite que clientes NFS descubram qual porta o
servidor NFS est utilizando.
SERVIDOR:
1) No Debian, basta instalar o pacote nfs-kernel-server que os outros
sero instalados:
# aptitude install nfs-kernel-server
2) Agora
podemos
determinar
quais
diretrios
compartilhar, editando o arquivo /etc/exports:
pretendemos
# vim /etc/exports
3) Sintaxe do arquivo:
/diretrio_compartilhado
192.168.200.0/24(rw,no_root_squash,subtree_check)
/outro_diretrio
192.168.100.1(ro,root_squash)
Captulo 7 NFS - 59
Note as opes root_squash e no_root_squash:
A opo root_squash no permite que o root local tenha poderes
administrativos dentro do diretrio compartilhado, ou seja, como se o root
"perdesse os poderes" sobre qualquer operao naquele diretrio.
Captulo 7 NFS - 60
CLIENTE:
Captulo 7 NFS - 61
8) Como administrador, tente remover algum arquivo do diretrio
remoto:
# cd /mnt/nfs
# rm ARQUIVO
SERVIDOR:
Como informado, por padro, o NFS assume a opo root_squash que no
refete os direitos de administrador aos clientes. Vamos alterar isso e fazer alguns
testes.
1) Edite o arquivo /etc/exports e acrescente:
/srv/nfs 192.168.200.0/24(rw,no_root_squash)
CLIENTE:
Agora, na mquina cliente tente novamente remover algum arquivo.
1) Faa este teste como administrador:
# cd /mnt/nfs
# rm ARQUIVO
Observe que no h a necessidade de remontar o sistema de arquivos
compartilhado, toda alterao foi feita de forma dinmica.
Captulo 7 NFS - 62
7.4. Exerccios tericos
7.5. Laboratrio
1. Crie um mesmo diretrio com permisso de escrita para um IP e somente
leitura para um outro IP. Exporte esse diretrio atravs do NFS;
2. Crie um compartilhamento chamado publico e exporte-o para a rede
192.168.200.0/24.
Captulo 8
Servidor SAMBA
8.1. Objetivos
Red Hat:
Na plataforma Red Hat, o arquivo de confgurao do samba fca em
/etc/smb.conf
7) Verifque se
requisies:
os
daemons
(smbd
nmbd)
esto
# netstat -putan
8) Verifque o compartilhamento:
# smbclient -L localhost
atendendo
11)
Confrme se o compartilhamento foi montado, e ento crie um
arquivo no compartilhamento:
# mount
# touch /mnt/$HOSTNAME.txt
12)
# ls -la /srv/samba/publico
Para
que
isso
seja
possvel,
ns
iremos
editar
nosso
arquivo
13)
Agora, vamos criar o compartilhamento homes que iro
armazenar os dados pessoais dos usurios:
[homes]
2
comment = Diretorio Pessoal
3
path = /srv/samba/homes/%U
4
valid users = %U
5
read only = No
6
browseable = No
1
1. Compartilhamento homes;
2. Comentrio;
3. Localizao do compartilhamento no servidor;
4. Usurios que podem acessar o compartilhamento (%U = usurio da seo);
5. Somente leitura desativado;
14)
Por ultimo, iremos criar os Perfs Mveis, que armazenaro as
confguraes do usurio:
[Profiles]
8
comment = Perfis Moveis
9
path = /srv/samba/profiles
10
read only = No
11
guest ok = Yes
12
browseable = No
7
1. Compartilhamento Profles;
2. Comentrio;
3. Localizao do compartilhamento, no servidor;
4. Somente leitura desativado;
5. Habilitando perfl mvel para usurio convidado;
6. No permite visualizao por outros usurios.
15)
[Publico]
path = /srv/samba/publico
browseable = yes
writeable = yes
public = yes
Para que nossos usurios possam Windows possam efetuar login no domnio,
necessrio que tanto o host quanto o usurio estejam cadastrados na conta normal
do computador e tambm na conta SAMBA. Vamos confgurar isto.
1) O usurio root quem poder adicionar uma mquina a um
domnio samba:
# smbpasswd -a root
Fique atento com a LPI, ele pode cobrar os nomes dos modulo de
autenticao do samba:
/etc/pam.d/common-auth
auth required /lib/security/pam_winbind.so
account required /lib/security/pam_winbind.so
8.7. Laboratrio
Captulo 9
Domain Name System
9.1. Objetivos
suplementares
de
segurana,
administrao,
atualizao
dinmica
de
9.2.1. Caractersticas
Namespace de at 63 caracteres;
Arquitetura cliente/servidor;
A raiz da rvore tem nome nulo ou "", por isso a representamos simplesmente
como ponto (.);
Uma vez delegado um domnio, sua nova autoridade pode delegar subdomnios
sem necessitar notifcar a entidade responsvel pelo domnio pai;
9.3. Resoluo
Soluo DNS o processo pelo qual um programa consulta dados a respeito
de um hostname. Na grande maioria das vezes, consulta-se o endereo IP deste host,
para ento efetuar algum tipo de conexo algum servio, como HTTP, SMTP. POP,
dentre inmeros outros.
O processo de resoluo, a partir do primeiro nameserver consultado, pode
ser:
recursiva
iterativa
servidor
de
nomes
reenvia
consulta
para
servidor
.br.
(www.exemplo.com.br?);
11.
.br retorna o mesmo tipo de resposta, porm como uma dica mais
prxima: "No sei quem , mas sei quem pode responder melhor: com.br.";
12.
16.
misteriosa
freqente
comportamento
inconsistente,
ns
no
host
O comando host concebido para dar respostas objetivas, limitando-se na
maioria dos casos a uma s linha. Porm, repostas mais detalhadas podem ser
obtidas com a utilizao de parmetros.
Ao contrrio do dig, o host consulta a search list do arquivo /etc/resolv.conf
dig
set type=SOA
uol.com.br.
set type=TXT
terra.com.br.
arquivo
de
confgurao
do
BIND9
chama-se
named.conf,
nas
distribuies Red Hat e Suse ele fca exatamente no diretrio /etc. No Debian,
entretanto, este arquivo foi fragmentado em trs. O arquivo principal ainda chama-se
named.conf mas contm apenas confguraes estticas. Ele utiliza a clusula include
para anexar os arquivos named.conf.options e named.conf.local. Sendo que desses
dois, o primeiro serve para personalizar todas opes referentes ao funcionamento
do prprio BIND, enquanto que o segundo serve para declarar todas as zonas pelas
quais este servidor deve responder.
# ls -lh /etc/bind
O arquivo db.root (/var/named/named.ca no RedHat) relaciona os endereos
dos 13 servidores raiz, e lido como zona hint, que ser explicada adiante.
O BIND vai utilizar a porta 53/UDP para receber consultas, a porta 53/TCP
para transferir zonas para servidores escravos, a porta 953/TCP para
receber comandos via rndc (que dependem de chaves criptografadas), e
portas udp altas podem ser dinamicamente atribudas para efetuar
consultas em outros servidores.
5) No terminal anterior:
# dig @localhost -t any wikipedia.com
6) Os logs do servio BIND sero lanados, por padro, no arquivo
/var/log/daemon.log:
# tail /var/log/daemon.log
nameserver 127.0.0.1
2) Para
evitar
este
comportamento,
edite
o
arquivo
/etc/bind/named.conf.options e acrescente a seguinte declarao:
# vi /etc/bind/named.conf.options
forwarders {200.176.2.10; };
Onde IP_DO_PROVEDOR um servidor DNS capaz de fazer consultas
recursivas.
slave - O BIND tambm vai responder por esse domnio, mas nenhuma criao
ou alterao respectiva a essa zona ser feita localmente neste servidor. Os
dados sero sempre transferidos de um servidor master.
hint - Especfca para o BIND onde ele deve comear uma busca recursiva
quando estiver operando como cache. Por padro, h uma zona hint criada com
os endereos dos root servers.
Pode ser que na Internet j exista um domnio com este nome, mas isso no importa
porque nossas consultas fcaro limitadas ao laboratrio.
As zonas devem ser declaradas no arquivo named.conf.local. Uma zona mestre
precisa, no mnimo do nome do domnio, tipo de zona e o caminho para o banco de
dados de registros. Quando apenas o nome do arquivo citado, o servidor BIND vai
procur-lo no diretrio defnido na opo directory, do arquivo named.conf.options.
signifca
que,
por
padro,
caminho
completo
corresponderia
/var/cache/bind/db.microx
O contedo do banco de dados da zona que foi declarada ser principalmente
uma srie de registros de recursos (resources records), ou simplesmente, registros.
No entanto trs diretivas so suportadas:
$TTL;
$ORIGIN;
$INCLUDE.
Mas com exceo do $TTL, so raramente utilizadas.
Um registro tem o seguinte formato:
dono [TTL] [classe] tipo dados.
classe - Podem ser CH, HS ou IN. O padro IN, de Internet, e no precisa ser
declarada.
controle contra spams. So criados de acordo com o formato defnido pelo projeto
Sender Policy Framework, ou simplesmente SPF.
confgurar
endereamento
reverso
no
depende
do
zone "microx.com.br" {
type master;
file "db.microx";
};
zone "200.168.192.in-addr.arpa" {
type master;
file "rev.microx";
registros
de
DNS,
teremos
# vi /var/cache/bind/db.microx
negative caching TTL - Se a zona expirar, esse ser o tempo pelo qual um
servidor cache armazenar a informao NXDOMAIN antes de iniciar uma
nova busca recursiva. O mximo so 3 horas.
mx - O servidor de e-mail;
ping www.microx.com.br
dig -t mx microx.com.br
dig -x 192.168.200.x
dig @localhost www.kernel.org
7) Ative a confgurao:
# /etc/init.d/bind9 reload
/etc/bind/named.conf.options
allow-transfer { none; };
/etc/bind/named.conf.options
11)
/etc/bind/named.con.local:
also-notify { 192.168.200.x; };
9.13. Laboratrio
1. Criar cria uma view exclusiva da zona microx.com.br para consultas da rede
10.0.0.0/24;
Captulo 10 Apache - 95
Captulo 10
Apache
10.1. Objetivos
Suporta vrias linguagens, como PHP, Python, Ruby, Perl, inclusive ASP .NET;
Multi plataforma;
Captulo 10 Apache - 96
Captulo 10 Apache - 97
novas conexes sejam processadas e respondidas de uma maneira mais rpida do
que no modo Pre Fork. Infelizmente, nem toda aplicao se d bem com threads,
como o PHP5, por exemplo.
2)
#vim /etc/apache2/apache2.conf
A varivel ServerRoot defne aonde o Apache deve procurar por seus arquivos
de confgurao. No exemplo abaixo, os arquivos de confgurao sero procurados
em /etc/apache2:
ServerRoot /etc/apache2
J a variavel DocumentRoot diz ao Apache aonde procurar os sites que deve
Captulo 10 Apache - 98
ser apresentados aos usurios. No exmeplo, os sites sero armazenados em
/var/www:
DocumentRoot /var/www
O usurio e grupo que executa o apache so defnidos pelas variveis abaixo:
User $APACHE_RUN_USERS
Group $APACHE_RUN_GROUP
Caso seja encontrado algum erro durante o funcionamento do Apache, o
mesmo ser registrado de acordo com o desiginos da varivel ErrorLog, como no
exemplo abaixo:
ErrorLog /var/log/apache2/error.log
E, ainda falando em logs, o Apache suporta a declarao de registros
personlizados atravs do uso da varivel LogFormat:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%Refereri\" \"%User-Agenti\""
combined
%l - Hfen;
%t - Horrio de acesso;
%r - Requisio solicitada;
Captulo 10 Apache - 99
StartServers 2
MaxClients 150
MinSpareThreads25
MaxSpareThreads75
ThreadsPerChild25
MaxRequestsPerChild0
StartServers 5
MinSpareServers 5
MaxSpareServers10
MaxClients 150
MaxRequestsPerChild0
10.6. Segurana
Dentro do arquivo security, vamos colocar as regras de segurana:
# cd /etc/apache2
# vim conf.d/security
As variveis abaixo ajudam a difcultar o processo de descoberta da verso do
servidor e sistema operacional:
ServerSignature Off
ServerTokens Prod
TraceEnable Off
<?
phpinfo()
?>
Agora, acesse sua pgina WEB e verifque o resultado.
# Host Virtual
2
3
NameVirtualHostwww.microx.com.br
4
5
6
7
8
9
10
11
<VirtualHost www.microx.com.br>
DocumentRoot /var/www/microx.com.br
ServerName microx.com.br
ServerAdmin webmaster@microx.com.br
ErrorLog /var/log/apache2/microx.com.br-error.log
CustomLog /var/log/apache2/microx.com.br-access.log common
</VirtualHost>
<html>
# a2enmod ssl
O SSL trabalha com o conceito de certifcados pblicos, ento, devemos
efetuar os procedimentos de criao do certifcado que ser fornecido aos clientes.
4)
12
NameVirtualHost www.microx.com.br:80
14 <VirtualHost www.microx.com.br:80>
13
RewriteEngine On
16
Options +FollowSymlinks
17
rewriteCond %SERVER_PORT 80
18
rewriteRule ^(.*)$ https://www.microx.com.br/$1 [R,L]
19 </VirtualHost>
15
7) Ative o mod_rewrite para que, toda vez que algum acessar seu
site, seja automticamente redirecionado para o site com HTTPS
ativado:
#a2enmod rewrite
8) Reinicie o apache:
#invoke-rc.d apache2 stop
#invoke-rc.d apache2 start
1) Voc precisa alterar a porta de trabalho do seu Apache para a porta 8000.
Qual seria o procedimento?
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
2) Os usurios reclamam que o site est muito lento na hora de navegar no
servidor. Sabendo que voc tem memria sobrando na mquina e que o
problema no a rede, qual atitude tomaria de imediato?
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
3) Seu supervisor pediu que voc mudasse o diretrio padro do Apache para
o diretrio /sites. Quais procedimentos devem ser tomados?
________________________________________________________________________________
________________________________________________________________________________
________________________________________________________________________________
10.11. Laboratrio
1. Mude a pgina de erro padro 404 para uma mensagem personalizada. DICA:
Use os exemplos no prprio arquivo;
2. Descubra na documentao ofcial do apache o que faz o modulo Rewrite e
como ele funciona;
3. Crie um domnio virtual com o seu sobrenome.
Captulo 11
Postfx
11.1. Objetivos
comportamento
permite
melhor
desempenho
em
equipamentos
multiprocessados.
12
## 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
13
23
27
31
## Define a origem local, que por padro o mesmo FQDN que est
em /etc/mailname.
33 myorigin = /etc/mailname
32
34
37
41
47
50
53
54
11.5. SMTP
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
1
home_mailbox = Maildir/
DEFAULT=$HOME/Maildir/
MAILDIR=$HOME/Maildir/
# cat /etc/pam.d/imap
# vim /etc/pam.d/smtp
@include
@include
@include
@include
common-auth
common-accont
common-password
common-session
2) Ajuste as permisses:
# chown aluno. /home/aluno -R
user aluno
pass 123456
quit
Podemos criar alias para que um usurio possa receber vrios e-mail's
diferentes na mesma conta.
1) Edite o arquivo de alias e crie um para o seu usurio:
# vi /etc/aliases
usuario_de_alias: usuario_existente
de hash,
# postalias /etc/aliases
11.9. Laboratrio
1. Faa um teste via telnet no seu servidor e veja se ele responde ao comando
vrfy. Use o comando vrfy aps o comando helo. Exemplo: vrfy usuario. Use esse
comando em usurio vlido e em um usurio invlido.
2. Agora que j viu como o comando vrfy pode ser prejudicial, tente desativ-lo.
Dica: man 5 postconf
3. Crie uma lista chamada todos, que quando algum enviar um e-mail para ela,
todos os usurio vlidos do sistema recebam a mensagem.
Captulo 12
Web Proxy com Squid
12.1. Objetivos
ACL's de origem
ACL's de destino
ACL's de horrio
12.11. Filtros
Outro recurso interessante para o uso de um proxy oconceito de fltro de
contedo, que possibilita a fltragem do contedo web dos usurios. Para realizar
essa confgurao, podemos usar os seguintes fltros:
6) Toda vez que voc mudar as ACL's voc deve executar os comandos:
#squid -k parse
#squid -k reconfigure
Depois destes ajustes iniciais, estamos prontos para criar nossas ACL's e
verifcar o funcionamento do squid como fltro de contedo.
2)
http_access
http_access
http_access
http_access
Lembre-se que a ordem das ACL's no importa, porm, o squid far o fltro
de acordo com a ordem das regras de acesso confguradas por http_access.
Lembre-se disso quando fzer troubleshooting ou criar novas regras. ;)
Whitelist - Uma lista de domnios que eu quero liberar, mas que casam com a
blacklist.
basic
basic
basic
basic
Pedro
Lineu
Orso,
cujo
objetivo
analisar
arquivo
Debian,
________________________________________________________________________________
12.19. Laboratrio
1. Crie um conjunto de ACL's que casem com, sites de contedo indesejado:
www.playboy.com.br, www.youtube.com e qualquer expresso que contenha as
palavras "sex", "buy" ...
2. Crie as regra de acesso necessrias para que qualquer pessoa possa navegar a
vontade, porm, na hora de navegar em sites de contedo indesejado.
Captulo 13
OpenLDAP
13.1. Objetivos
#####################################################################
##
4
5
6
# Configuraes Globais
10
16
20
23
27
31
32
#Verificao de schema
schemacheck on
34
37
40
#####################################################################
##
42 # Especificao de Diretivas para o bdb
43 # 'backend' directive occurs
44 backend
bdb
45 checkpoint 512 30
41
46
#####################################################################
##
48 # Especificao de Diretivas para outro:
49 # 'backend' directive occurs
50 #backend
<other>
47
51
#####################################################################
##
53 # Especificao de diretivas para banco de dados #1, tipo bdb:
54 # 'database' directive occurs
55 database bdb
52
56
59
64
67
68
# Para pacote Debian, no usamos 2MB como default mas tenha certeza
74
81
# Opes de indexao #1
83 index objectClass eq
82
84
87
90
98
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>
99
110
####################################################################
###
112 </comandoNumerado>
111
10)
11)
12)
14)
Acesse o diretrio /usr/share/migrationtools e copie o arquivo
de confgurao:
# cd /usr/share/migrationtools
# cp -av migrate_common.ph migrate_common.ph.original
16)
Vamos migrar a base de usurios do sistema (/etc/passwd) para
uma base padro LDIF, para inserir na base LDAP:
# cd /usr/share/migrationtools
# ./migrate_passwd.pl /etc/passwd /etc/ldap/users.ldif
17)
Verifque o arquivo /etc/ldap/users.ldif criado e observe o
contedo:
# less /etc/ldap/users.ldif
gidNumber: 106
2 homeDirectory: /var/lib/gdm
3 gecos: Gnome Display Manager
1
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
5
19)
# cat /etc/ldap/groups.ldif
20)
21)
Edite o arquivo gerado em /etc/ldap/base.ldif e remova as
linhas de 1 a 10, por default durante a migrao estas linhas foram
criadas, podendo gerar erro durante a importao, dentro do vim
execute o comando ESC:1,10d para apagar as 10 primeiras linhas:
# vim /etc/ldap/base.ldif
22)
23)
ldapsearch -x | more
24)
Adicione o group.ldif:
# ldapadd -x -D cn=admin,dc=seu-nome,dc=com,dc=br -f
/etc/ldap/groups.ldif -W
Adicione o user.ldif:
# ldapadd -x -D cn=admin,dc=seu-nome,dc=com,dc=br -f
/etc/ldap/users.ldif -W
26)
Voc pode transferir as informaes em formato ldif atravs do
slapadd passando a informao direto para servidor:
# /etc/init.d/slapd stop
# slapadd -l meuarquivo.ldif -f slapd.conf
27)
Realizando busca especfca atravs do nome do objeto que
consta na base do OpenLDAP:
# ldapsearch -x -b 'dc=microx,dc=com,dc=br' '(cn=cdrom)'
28)
# slapcat | more
5)
as
linhas
172
173
do
arquivo
nss_base_passwd ou=People,dc=microx,dc=com,dc=br
nss_base_shadow ou=People,dc=microx,dc=com,dc=br
Por ultimo, iremos confgurar o PAM para que ele busque os usurios na base
LDAP.
16
19
20
Vamos acessar a base do OpenLDAP via Browser, para tal ser necessrio
instalar php e dar suporte ao Apache.
13.8. Laboratrio
1. Instale o LDAP tendo o seu nome como cn, como no exemplo da apostila;
2. Crie um usurio diretamente no LDAP e autentique no SQUID.
Captulo 14
Firewall
14.1. Objetivos
flter
nat
mangle
raw
Tabela Filter
Tabela Nat
Agora que percebemos que temos um frewall ativo, devemos pensar nas
demais polticas, uma vez que, por mais seguro que seja um frewall, cuja poltica
base seja negar tudo, no um
10)
-d 0/0 -j
-d 192.168.200.x -j
# iptables -n -L
11)
Podemos ver se conseguimos fazer um ping na mquina do
instrutor:
# ping 192.168.200.254
12)
Agora que j temos um poltica de exceo, tente fazer um
ping no domnio www.uol.com.br:
# ping www.uol.com.br
13)
Apesar de conseguirmos usar o ping nos endereos IP's, ainda
no conseguimos fazer um ping por nomes. Vamos 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 -n -L
15)
# ping www.uol.com.br
Mesmo que liberamos o nosso frewall para resolver os nomes, ainda no
conseguimos acessar um servidor Web por ele, pois precisamos liberar o acesso as
portas 80 e 443.
16)
17)
Faamos um teste para ver se conseguimos traar rotas
usando a ferramenta mtr:
# mtr 200.176.2.11
19)
# iptables -n -L
20)
# mtr 200.17.2.11
Todas as regras que foram feitas, fcam na memria do computador, se ele for
reiniciado, perderemos todas elas. Podemos utilizar o iptables-save, mas ele no fca
um script profssional.
Segue aqui um script com todas as regras que foram feitas, em seguida esse
script pode ser adicionado aos nveis de execuo do sistema, para ser carregado
sempre a mquina for ligada.
Vamos chamar nosso script de frewall.sh:
# cd /etc/init.d
# vim firewall.sh
3
4
## Definio de variveis
IPT=$(which iptables)
7 ET0="192.168.200.X"
8 NET="0/0"
9 PA=1024:65535
10 REDE="192.168.200.0/24"
6
11
## Fechando as Polticas
13 $IPT -P INPUT DROP
12
14
15
16
17
18
19
## Liberando LoopBack
20
21
22
23
24
25
26
27
28
29
30
31
32
34
35
36
37
38
44
45
46
47
48
50
51
net.ipv4.ip_forward=1
52
53
54
55
56
57
Para que ele seja iniciado junto com sistema quando a mquina for ligada,
podemos colocar o script nos nveis de execuo:
# update-rc.d firewall.sh defaults
# ls -l /etc/rc2.d
14.8. Laboratrio
1. Imaginem que o seu servidor tem 2 IP's, um vlido e outro invlido. Crie uma
regra que redirecione todos os pacotes que chegarem na porta 25 do IP vlido
para uma mquina da rede que tenha IP invlido na porta 25. Dica: man
iptables.
Captulo 15
OpenVPN
15.1. Objetivos
REFERNCIAS
BIBLIOGRFICAS
ANEXOS
O que
O System Imager um sistema de automatizao para rotinas de backup e
recuperao de mquinas. Ele permite que as mesmas mquinas possam ser
compartilhadas por vrios cursos simultneos, mas de forma que o estado delas, isto
, todos os seus arquivos e confguraes sejam guardados e recuperados de forma
individual por aluno.
Instalando o programa.
Primeiramente, o aluno dever fazer o download do programa e mudar as suas
permisses. Esse procedimento s necessrio na primeira aula.
# cd /sbin
# wget 192.168.1.1/si/si_cliente
# chmod u+x /sbin/si_cliente