Vous êtes sur la page 1sur 29

Linux Network Servers NFS - Network Filesystem Em um servidor com funo de STORAGE

www.4linux.com.br 2 / 29

CONCEITO DE NFS

www.4linux.com.br

3 / 29

CONCEITO
O que o NFS?
A sigla NFS, do ingls Network File System, significa Sistema de Arquivos de Rede. Atravs de programas especficos no servidor e nas mquinas clientes, podemos fazer com que esses clientes acessem arquivos e diretrios deste servidor de forma transparente, como se fossem locais. Uma vantagem dessa funcionalidade o fato de podermos centralizar em um servidor os diretrios e arquivos utilizados por vrios usurios de diversas mquinas clientes.

www.4linux.com.br

4 / 29

CONCEITO
Mas o objetivo desta aula centralizar os diretrios na rede simplesmente?
A resposta no! Um servidor NFS no estaria completo se no tivssemos um NIS para centralizar tambm as contas de usurios e fazer um domnio. Criaremos um domnio na aula de Samba atuando como controlador primrio de domnio. O foco do NFS no nosso curso ser apenas um meio para exportar diretrios em um servidor que teria a funo apenas de ser STORAGE, considerando que nele teriam todas as tecnologias necessrias para ter redundncia e desempenho (RAID), possibilidade de aumentar o disco em tempo de execuo (LVM) inclusive com interface de administrao via WEB.
www.4linux.com.br 5 / 29

CONCEITOS DE STORAGE (NAS, FreeNAS e SAN)

www.4linux.com.br

6 / 29

CONCEITO
O que o NAS?
NAS (Network-attached storage) um sistema composto de hardware e software conectado a rede com o objetivo de ser um armazenador de arquivos (mais conhecido como storage) que podem ser usados por clientes heterogneos em uma rede. Suas caractersticas principais so: Acesso veloz a dados Fcil administrao (pode ser administrado via WEB) Configurao simples Um exemplo de sistema baseado em FreeBSD o FreeNAS.
www.4linux.com.br 7 / 29

CONCEITO
O que o FreeNAS?
FreeNAS uma verso customizada do FreeBSD, livre, opensource, com uma interface WEB para administrar o Storage via rede de maneira fcil. O FreeNAS oferece solues de backup para uma variedade de aplicaes. Para saber mais sobre o FreeNAS ou para obtlo: http://www.freenas.org.

www.4linux.com.br

8 / 29

Interface do FreeNAS

www.4linux.com.br

9 / 29

CONCEITO
O que o SAN?
SAN (Storage Area Network Area de armazenamento em rede) uma rede planejada para agrupar dispositivos de armazenamento. Caractersticas bsicas:

Ter trfego de dados similar aos internos dos discos rigdos Aumento na capacidade de armazenamento
www.4linux.com.br 10 / 29

ATA ou SCSI

DICA
No use discos IDE em servidores! Discos IDE no tem suporte a NCQ. O que NCQ? Native Command Queuing (Comando nativo de enfileiramento) em breves palavras um recurso que permite otimizar a execuo de tarefas de acordo com a controladora de disco. Isso faz com que a leitura de um dado por exemplo no necessite percorrer o caminho mais longo para acess-lo.
www.4linux.com.br 11 / 29

DICA
Veja uma imagem abaixo mostrando a forma como a controladora do disco l arquivos em um disco (o lado esquerdo sem NCQ e o lado direito com NCQ):

www.4linux.com.br

12 / 29

CENRIO
- Configurar a mquina 192.168.200.3 (DMZ2) com o servio NFS que j faz o papel de STORAGE, sem RAID e LVM, estamos considerando que voc j teria a infraestrutura nesta mquina; - Compartilhar os seguintes diretrios que sero usados pelo servio SAMBA da mquina 192.168.200.2 (DMZ1): - /DEXTER (ser usado para guardar arquivos da Rede Local Dexter) - /LIXEIRAS (ser um diretrio usado para armazenar arquivos da lixeira do nosso futuro servidor Samba)
NFS /DEXTER /LIXEIRAS /DEXTER /LIXEIRAS

192.168.200.3

192.168.200.2 www.4linux.com.br 13 / 29

TCP WRAPPERS
Antes de colocar o NFS para funcionar vamos limit-lo para funcionar apenas na nossa rede local! Os TCP Wrappers so utilizados para aplicar regras de acesso aos servidores utilizados em seu sistema, podendo permitir ou negar as conexes a eles. Ento, podemos usar os arquivos /etc/hosts.allow e /etc/hosts.deny para limitar quais hosts (mquinas clientes) podero usar esse recurso no NFS. Para deixar as coisas mais seguras, podemos negar esse servio no hosts.deny e no hosts.allow liberar apenas a nossa rede, ou mquinas em especfico: # echo "portmap: ALL" >> /etc/hosts.deny # echo "portmap: 192.168.200.0/24" >> /etc/hosts.allow
www.4linux.com.br 14 / 29

Quem quem na empresa DEXTER


Dpt Administrativo Dpt Pessoal

Mandark Glory Levinsky Mitch Douglas Mordechai

Kathryn Cressida Kath Soucie Jeff Bennett

Dpt Comercial

Dpt Logstica

Chris Cavanaugh Candi Milo Allison Moore

Eddie Deezen Frank Welker Luzinsky


www.4linux.com.br 15 / 29

Fase de criao dos diretrios


A empresa DEXTER pode ser divida em 4 grupos distintos: administrativo, pessoal, comercial, logstica. Passos: Criar os usurios: Dexter Clem, Mandark Glory, Levinsky Mitch, Douglas E. Mordechai, Chris Cavanaugh, Candi Milo, Allison Moore, Kathryn Cressida, Kath Soucie, Jeff Bennett, Eddie Deezen, Frank Welker, Luzinsky Brooks;

Criar os grupos (administrativo, pessoal, comercial, logstica) Criar o diretrio /DEXTER

Criar os subdiretrios: /DEXTER/administrativo (dono root, grupo administrativo, permisso 3770); /DEXTER/pessoal (dono root, grupo pessoal, permisso 3770); /DEXTER/comercial (dono root, grupo comercial, permisso 3770); /DEXTER/logistica (dono root, grupo logistica, permisso 3770);

www.4linux.com.br

16 / 29

Fase de criao dos diretrios

Lista de usurios e login:

Dexter Clem dexterclem Mandark Glory mandarkglory Levinsky Mitch levinskymitch Douglas E. Mordechai douglasmordechai Chris Cavanaugh chriscavanaugh Candi Milo candimilo Allison Moore - allisonmoore Kathryn Cressida kathryncressida Kath Soucie kathsoucie Jeff Bennett jeffbennett Eddie Deezen eddiedeezen Frank Welker frankwelker Luzinsky Brooks luzinskybrooks

Senha padro para todo mundo: 123456 bvio que no mundo real isto no ocorrer. Isto s para facilitar nossos testes.
www.4linux.com.br 17 / 29

Scripts disponibilizados no Netclass

Os prximos slides tem muita coisa manual para fazer. Para facilitar o trabalho de todos, voc pode encontrar os scripts desta aula em /root/confs/nfs-aula. Estes scripts devem ser executados na DMZ2: # cd /root/confs/nfs-aula/scripts

www.4linux.com.br

18 / 29

Fase de criao dos usurios


Na DMZ2: # adduser dexterclem # adduser mandarkglory # adduser levinskymitch # adduser douglasmordechai # adduser chriscavanaugh # adduser candimilo # adduser allisonmoore # adduser kathryncressida # adduser kathsoucie # adduser jeffbennett # adduser eddiedeezen # adduser frankwelker # adduser luzinskybrooks Voc pode executar o script: criaUsuarios.sh
www.4linux.com.br 19 / 29

Criando grupos e adicionando usurios neles


Na DMZ2: # groupadd administrativo # groupadd logistica # groupadd pessoal # groupadd comercial # adduser mandarkglory administrativo # adduser levinskymitch administrativo # adduser douglasmordechai administrativo # adduser chriscavanaugh comercial # adduser candimilo comercial # adduser allisonmoore comercial # adduser kathryncressida pessoal # adduser kathsoucie pessoal # adduser jeffbennett pessoal # adduser eddiedeezen logistica # adduser frankwelker logistica # adduser luzinskybrooks logistica

Voc pode executar o script: criaGrupos.sh


www.4linux.com.br 20 / 29

Criando subdiretrios em /DEXTER (DMZ2)


# mkdir /DEXTER # mkdir /DEXTER/administrativo # mkdir /DEXTER/logistica # mkdir /DEXTER/comercial # mkdir /DEXTER/pessoal

# chown root.administrativo /DEXTER/administrativo # chown root.logistica /DEXTER/logistica # chown root.comercial /DEXTER/comercial # chown root.pessoal /DEXTER/pessoal # chmod 3770 /DEXTER/administrativo # chmod 3770 /DEXTER/logistica # chmod 3770 /DEXTER/comercial # chmod 3770 /DEXTER/pessoal

Voc pode executar o script: criaDir.sh que valer para este slide e para os prximos 2 slides.
www.4linux.com.br 21 / 29

Fase de criao das lixeiras do Samba (DMZ2)


# mkdir /LIXEIRAS/ # mkdir /LIXEIRAS/dexterclem # mkdir /LIXEIRAS/mandarkglory # mkdir /LIXEIRAS/levinskymitch # mkdir /LIXEIRAS/douglasmordechai # mkdir /LIXEIRAS/chriscavanaugh # mkdir /LIXEIRAS/candimilo # mkdir /LIXEIRAS/allisonmoore # mkdir /LIXEIRAS/kathryncressida # mkdir /LIXEIRAS/kathsoucie # mkdir /LIXEIRAS/jeffbennett # mkdir /LIXEIRAS/eddiedeezen # mkdir /LIXEIRAS/frankwelker # mkdir /LIXEIRAS/luzinskybrooks

Esta parte tambm j ser feita ao executar o script: criaDir.sh


www.4linux.com.br 22 / 29

Fase de criao das lixeiras do Samba (DMZ2)


# chown dexterclem.dexterclem /LIXEIRAS/dexterclem # chown mandarkglory.mandarkglory /LIXEIRAS/mandarkglory # chown levinskymitch.levinskymitch /LIXEIRAS/levinskymitch # chown douglasmordechai.douglasmordechai /LIXEIRAS/douglasmordechai # chown chriscavanaugh.chriscavanaugh /LIXEIRAS/chriscavanaugh # chown candimilo.candimilo /LIXEIRAS/candimilo # chown allisonmoore.allisonmoore /LIXEIRAS/allisonmoore # chown kathryncressida.kathryncressida /LIXEIRAS/kathryncressida # chown kathsoucie.kathsoucie /LIXEIRAS/kathsoucie # chown jeffbennett.jeffbennett /LIXEIRAS/jeffbennett # chown eddiedeezen.eddiedeezen /LIXEIRAS/eddiedeezen # chown frankwelker.frankwelker /LIXEIRAS/frankwelker # chown luzinskybrooks.luzinskybrooks /LIXEIRAS/luzinskybrooks

Esta parte tambm j ser feita ao executar o script: criaDir.sh


www.4linux.com.br 23 / 29

Instalando NFS na DMZ2


# aptitude install nfs-kernel-server O arquivo /etc/exports possui a seguinte sintaxe: diretrio host(opes)

ro - compartilhar apenas para leitura rw - compartilhar para leitura e gravao root_squash - Para que o usurio root seja um usurio limitado nos privilgios. no_root_squash - justamente ao contrrio da opo acima. no_subtree_check - No permite verificao de estados em subdiretrios (melhor desempenho, interessante quando se exporta inclusive os subdiretrios) subtree_check - Permite verificao de estados em subdiretrios async - til em redes locais pois permite que o NFS transfira arquivos de forma assncrona, sem precisar esperar pela resposta do cliente a cada pacote enviado, aumenta um pouco a velocidade de transferncia de dados.
www.4linux.com.br 24 / 29

Compartilhando /DEXTER e /LIXEIRAS na DMZ2

# vim /etc/exports /DEXTER 192.168.200.0/24(rw,no_subtree_check) /LIXEIRAS 192.168.200.0/24(rw,no_subtree_check) # exportfs -r

www.4linux.com.br

25 / 29

Compartilhando /DEXTER e /LIXEIRAS na DMZ2


Consulte os servios exportados: # rpcinfo -p localhost program vers proto 100000 2 tcp 100000 2 udp 100003 2 udp 100003 3 udp 100003 3 tcp 100003 4 tcp 100005 2 udp 100005 2 tcp port 111 111 2049 2049 2049 2049 47836 42594 portmapper portmapper nfs nfs nfs nfs mountd mountd

www.4linux.com.br

26 / 29

Compartilhando /DEXTER e /LIXEIRAS na DMZ2

Verifique se o que est exportado est correto: # showmount -e localhost /DEXTER 192.168.200.0/24 /LIXEIRAS 192.168.200.0/24

www.4linux.com.br

27 / 29

Montando /DEXTER e /LIXEIRAS na DMZ1


# aptitude install nfs-common # vim /etc/fstab Insira no final do arquivo: 192.168.200.3:/DEXTER /srv/DEXTER nfs defaults,soft 0 0 192.168.200.3:/LIXEIRAS /srv/LIXEIRAS nfs defaults,soft 0 0 # mkdir -p /srv/DEXTER # mkdir -p /srv/LIXEIRAS # mount -a

www.4linux.com.br

28 / 29

TESTANDO NA DMZ1
Na DMZ1, logue-se com o usurio mandarkglory; Cheque em quais grupos o usurio mandarkglory est: # groups mandarkglory mandarkglory: mandarkglory administrativo Entre logado como mandarkglory em /srv/DEXTER/administrativo: $ cd /srv/DEXTER/administrativo ; touch teste.txt Faa o teste na lixeira dele: $ cd /srv/LIXEIRAS/mandarkglory ; touch teste.txt Se criou est certo.
www.4linux.com.br 29 / 29

Vous aimerez peut-être aussi