Volnys Borges Bernal - Laboratório de Sistema...

51
NIS Volnys Borges Bernal [email protected] http://www.lsi.usp.br/~volnys Laboratório de Sistemas Integráveis http://www.lsi.usp.br/

Transcript of Volnys Borges Bernal - Laboratório de Sistema...

NIS

Volnys Borges [email protected]

http://www.lsi.usp.br/~volnys

Laboratório de Sistemas Integráveishttp://www.lsi.usp.br/

Agenda

❖ Motivações❖ NIS❖ Funcionamento NIS❖ Relacionamento com outros Sistemas❖ DNS❖ Automount / Amd❖ Resolução de problemas NIS

Motivações

Motivações

❖ Cadastro de usuários:Alterar os seguintes arquivos:

� /etc/passwd� /etc/group

Em um sistema com um grande númerode máquinas é necessário altera-los emTODAS as maquinas

❖ Em um sistema com um grande número demáquinas esta tarefa torna-se impraticável

Motivações

❖ Em um sistema com um grande número demáquinas as seguintes tarefas tornam-seimpraticaveis:

cadastro de usuáriosmontagem de arquivoscadastro de máquinas (/etc/hosts)services (/etc/services)netgroup (grupos de máquinas / usuários)

NIS

NIS

❖ O que é?Network Information SystemProduto da SUN MicrosystemsPortado para diversas plataformas

❖ ObjetivoServir como uma base de dados distribuídaBase de dados distribuída formada através deum ponto centralizadoUtil em sistemas com grande número demaquinas (N>10)

NIS

❖ Versões NIS:NIS Versão 1:

� Também chamado de Yellow Pages– Nome original: teve que mudar de nome pois era

marca registrada para lista telefônica (paginasamarelas)

NIS Versão 2:� Também conhecido por NIS Plus (NIS+)� Acrescenta característica de maior segurança,

com a utilização de criptografia

FuncionamentoNIS

Funcionamento NIS

❖ Arquivos x Mapas NIS

As informações utilizadas disponibilizadaspelo nis provêm de arquivos deconfiguração

Estes arquivos são processados e formatadosde forma que, para cada entrada, existe umíndice. Este arquivo formatado pelo NIS échamado de “Mapa NIS”.

Funcionamento NIS

❖ Exemplo: hostArquivo: /etc/host10.0.0.1 marte marte.dominio

10.0.0.2 jupter marte.dominio

Mapas:� host.byname (ypcat -k host.byname)marte 10.0.0.1 marte marte.dominio

jupter 10.0.0.2 jupter jupter.dominio

jupter.dominio 10.0.0.2 jupter jupter.dominio

� host.byaddr (ypcat -k host.byaddr)10.0.0.1 10.0.0.1 marte marte.dominio

10.0.0.2 10.0.0.1 jupter jupter.dominio

Funcionamento NIS❖ ypwhich -m

“-m” - map, mostra mapas disponíveispara cada mapa mostra que máquinacentraliza a informação (arquivo)

ypwhich -m

� hosts.byname sofia

� hosts.byaddr sofia

� passwd.byname sofia

� passwd.byuid sofia

� group.byname sofia

� group.bygid sofia

� ......

mapa apelido arquivo chave

bootparam /etc/bootparams hostname

ethers.byname ethers /etc/ethers hostname

ethers.byaddr /etc/ethers end. MAC

group.byname group /etc/group groupname

group.bygid /etc/group groupid

hosts.byname hosts /etc/hosts hostname

hosts.byaddr /etc/hosts end. IP

mail.aliases aliases /etc/aliases aliasname

mail.byaddr /etc/aliases alias exp

netgroup.byhost /etc/netgroup hostname

netgroup.byuser /etc/netgroup username

netid.byname host,group,passwd complexa

netmask.byaddr /etc/netmasks end. IP

networks.byname /etc/networks net name

networks.byaddr /etc/networks IP rede

passwd.byname passwd /etc/passwd username

passwd.byuid /etc/passwd user id

protocols.bynumber protocols /etc/protocols port num.

protocols.byname /etc/protocols prot.name

rpc.bynumber /etc/rpc mum. rpc

services.byname services /etc/services serv. name

ypservers NIS server names hostname

Funcionamento NIS

❖ ypcat -kmostra o conteúdo de um mapa NIS“-k” - mostra a chave

ypcat -k host.byname� marte 10.0.0.1 martemarte.dominio

� jupter 10.0.0.2 jupterjupter.dominio

� jupter.dominio 10.0.0.2 jupterjupter.dominio

Funcionamento NIS

❖ Clientes NISMaquinas que se utilizam de informaçõesdisponibilizadas pelo NIS

❖ Servidores NISMaquinas que respondem a requições NIS

❖ Importante:Uma servidora NIS pode ou não utilizar oserviço NIS. Caso utilize ela será umaservidora e cliente NIS.

Funcionamento NIS

❖ Servidores NIS

Serviço NIS é crítico� Se o servidor cair:

param todas as máquinas queutilizam o serviço NISdeste servidor

Importante a existência de servidoresredundantes !!!

Funcionamento NIS

❖ Servidores NIS

Servidor NIS master� principal, que centraliza os arquivos

Servidor NIS slave� escravo: redundante� possui copias dos mapas do servidor NIS

master

Funcionamento NIS

❖ Processos:

cliente nis� ypbind� realiza as requisições ao servidor NIS

servidor nis (master ou slave)� ypserv� responde às requisições NIS

Funcionamento NIS

❖ Bind de servidorNo momento que um NISclient éinicializado o processo ypbind édisparado.Neste momento ele se conecta a umservidor NIS (seja master ou slave).Esta conexão a partir deste momento ficapermanente.Para se saber qual o servidor NISassociado ao um NIS cliente:

� ypwhich

Formas de escolha do servidorNIS pelo ypbind

❖ Servidor configurado explicitamente na cliente� É especificado o IP/nome do servidor ao qual deve

ser conectado� Na falha deste servidor a maquina fica parada.

Via requisição Broadcast� Enviado pacote broadcast perguntando p/ servidor� Vantagens

– somente os servidores ativos respondem– se servidor atual cair, apos o time-out (5 min) pode se

conectar a outro

� Desvantagens– segurança: uma maquina intrusa pode responder a

requisição broadcast

Funcionamento NIS

❖ Necessário pelo menos 1 servidor NIS

Cliente NIS

Domínio NIS

Cliente NIS

Cliente NIS

Cliente NIS

Fucionamento NIS

❖ Importante a existência de 1 servidorredundante

Domínio NIS

Cliente NIS

Cliente NISNIS Master

Cliente NISCliente NIS

req. NIS

resp.

Funcionamento NIS

❖ De tempos em tempos os servidores NISslavesão atualizados pelo NISmaster

Domínio NIS

Cliente NIS

Cliente NISNIS MasterCliente NIS

NIS Slave

Cliente NIS

mapas NIS

Processo daemons

Domínio NIS

Cliente NIS Cliente NISNIS Master

Cliente NISNIS Slave

Cliente NIS

ypbind ypbind ypbind

ypserv -d

ypbind

ypserv -d

ypxfrd

yppasswd

Processos daemonsypbind

� cliente NIS

ypserv� servidor NIS (master ou slave)

yppasswdd� presente sempre no NISmaster� atualiza senha de usuários no arquivo passwd

ypxfrd� “yp transfer daemon”� presente sempre no NISmaster� responsável por atender requisições de envio de

mapas aos NISslaves

Programas auxiliares

Domínio NIS

Cliente NIS Cliente NISNIS Master

Cliente NISNIS Slave

Cliente NIS

ypbind ypbind ypbindypserv -d

ypbindypserv -dypxfrdyppasswd

ypxfr yppushmake

Programas auxiliaresyppush

� executado sempre em um NISmaster� avisa ao servidor NISslave para providenciar a

recarga de um mapa� NAO transfere o mapa, somente notifica!

ypxfr� executado sempre em um NISslave� requisita ao servidor NISmaster a transferência de

um mapa

make (/var/yp/Makefile)� verifica se mapa esta desatualizado, refaz o mapa e

atualiza os NISslaves

Requisição NIS

Domínio NIS

Cliente NIS Cliente NISNIS Master

Cliente NISNIS Slave

Cliente NIS

ypbind ypbind ypbindypserv -d

ypbindypserv -dypxfrdyppasswd

ypxfr yppushmake

Domínio NIS

Cliente NIS Cliente NISNIS Master

Cliente NISNIS Slave

Cliente NIS

ypbind ypbind ypbindypserv -d

ypbindypserv -dypxfrdyppasswd

ypxfr yppushmake

Atualização de mapa NIS peloNIS master

1

3

2

4

Atualização de mapa NIS peloNISslave de tempos em tempos

Domínio NIS

Cliente NIS Cliente NISNIS Master

Cliente NISNIS Slave

Cliente NIS

ypbind ypbind ypbindypserv -d

ypbindypserv -dypxfrdyppasswd

ypxfr yppushmake

1

2

cron

Atualização de mapas NIS peloNISslave de tempos em tempos

❖ Scripts para serem utilizado com cron:ypxfr_1ph

� atualiza alguns mapas� deve ser disparado a cada hora

ypxfr_1pd� atualiza alguns mapas� deve ser disparado 1 vez por dia

ypxfr-2pd� atualiza alguns mapas� deve ser disparado 2 vezes por dia

Configuração de utilização demapas nas clientes

❖ ResoluçãoArquivosNIS

❖ BSD/etc/resolv.conf/etc/hosts.conf

❖ System V/etc/nsswitch.conf

/etc/nsswitch.conf

❖ Utilizado nos Unix System V❖ Permite indicar, para cada “serviço” se será

utilizado arquivo ou mapa NIS❖ Exemplo:

passwd: filesnis

group: filesnis

hosts filesdns

services nis files

networks nis [NOTFOUND=return] files

.......

Relacionamento com outrossistemas

❖ DNS❖ automount

DNS

DNS

❖ Utilizado em todos os domínios existentes narede Internet

❖ Protocolo DNSRFC 1034 - Domain Names - Concepts and FacilitiesRFC 1035 - Domain Names - Implementation andSpecification

❖ Protocolo que permite a resolução dos nomesde um domínio

� nome -> IP� IP -> nome

Serviço de resoluçãode nomes e endereços

❖ Na teoria, o funcionamento do protocolo DNS émuito símples

Existem dois tipos de entidades:� Resolvers - fazem pedidos de resolução� Name Servers - respondem aos pedidos

❖ Na prática, isto é mais complicado.Um servidor de nomes também poderealizar requisições para outros “Servidoresde nomes”

DNS

❖ Entidades:

“Resolvers”� realizam requisições� todas máquinas precisam de um resolver

Servidores DNS� respondem às requisições� necessário no mínimo 2 servidores por domínio

– 1 servidor primário– 1 ou mais servidores DNS secundário

DNS

Servidor DNS

Resolver

Resolver

Resolver

Domínio DNS

Resolver

Resolver

DNS

Servidor DNS

Resolver

Resolver

Resolver

Domínio DNS

Resolver

Resolver

ServidorResolver

DNS

❖ Resolver

Arquivo de configuração� /etc/resolv.conf

Exemplo� domain lsi.usp.br� search lsi.usp.br� nameserver 143.107.161.220� nameserver 143.107.161.141

DNS

❖ Servidor DNS

Arquivos de configuração� /etc/named.boot (bind v4) ou

/etc/named.conf (bind v8)� /var/named/named.root� /var/named/named.local� /var/named/*.zone� /var/named/*.revzone

DNS

❖ Utilitário nslookup❖ Exemplo:

nslookup� marte� server = hermes� ls lsi.usp.br

DNS x NIS

❖ Em um ambiente Internet é obrigatória apresença de DNS

❖ Para resolução de nomes locais pode serrealizada de tres formas distintas:

arquivo: /etc/hostsNIS mapa hostsdns protocolo DNS

DNS x NIS

❖ Pode ser utilizado o NIS para a resolvernomes locais, porem:

é dificil manter duas bases de dadosatualizadas

❖ Existe uma possibilidade de configurar o NISserver a fim de que, requisições NIS do mapahost seja direcionada para o DNS

ypserv -dNISclient --> NISserver -> DNSserver

Automount

Automount

❖ Permite facilidades para definição de pontosde montagem

❖ Existem dois sistemas que podem serutilizados

automountamd

❖ Normalmente estes utilitários se utilizam demapas NIS

Resolução de Problemas NIS

Resolução de problemas NIS

❖ rpcinfo -u jupter ypservverifica se o processo ypserv da maquinajupter (nis server) esta respondendo arequisições

Resolução de problemas NIS

❖ Verificar se na maquina NIS master estãorodando os processos:

ypservyppasswddypxfrd

❖ Verficar se as maquinas NIS slaves estãoatualizando os mapas NIS (via scripts cron)

Resolução de problemas NIS

❖ Sempre que for criado um novo mapa NIS éimportante atualizar os scripts do cron queatualizam os mapas (para inclui-los)