3.6. Configuração do NIS

3.6.1. O que é NIS ?
3.6.2. Instalação do cliente NIS
3.6.3. Instalação do servidor NIS
3.6.4. Ferramentas e utilitários


3.6.1. O que é NIS ?

Tão logo vários sistemas UNIX em uma rede querem acessar recursos comuns, você deve assegurar que todos os usuários e grupos sejam idênticos. A rede deve ser transparente para o usuário. Não importa onde os usuários estejam trabalhando, eles irão sempre encontrar o mesmo ambiente. Isto é possível através dos serviços NIS e NFS. O NFS distribui os sistemas de arquivos pela rede.

NIS (Network Information Service) é um serviço, desenvolvido pela Sun Microsystems, para distribuição de informações por uma rede. A base de dados NIS é criada a partir de tabelas (plain text database), tal como /etc/passwd, /etc/shadow e /etc/group. O NIS também pode ser utilizado para outras tarefas mais especializadas (como para /etc/hosts ou /etc/services).

NIS é comumente referido como YP, isto vem de yellow pages, as páginas amarelas da rede. O NIS é um serviço que facilita a administração do ambiente Linux/Unix, pelo fato de manter uma base de dados centralizada na rede, o que torna a manutenção e consistências mais fáceis.

3.6.2. Instalação do cliente NIS
O SuSE Linux contém todos os pacotes necessários à instalação de um cliente NIS. Estas ferramentas estão inclusas no pacote ypclient, série n. Para instalar o cliente NIS, proceda como a seguir:

  • Defina o domínio NIS na inicialização em YP_DOMAINNAME no arquivo /etc/rc.config. Na mudança para um nível de execução (em rede), /sbin/init.d/network avalia esta configuração e define o nome apropriadamente. O nome do domínio NIS não pode ser confundido com o nome do domínio DNS. Eles não são o mesmo, mesmo se eles possuem o mesmo nome !

  • Assinale os servidores NIS. O servidor NIS é definido pela variável YP_SERVER em /etc/rc.config, depois rode o SuSEconfig que irá escrever os valores corretos em /etc/yp.conf. Se você definir esta variável utilizando o YaST, este passo é feito automaticamente.

  • Certifique-se de que o portmapper do RPC esteja disparado. O NIS utiliza RPC (Remote Procedure Call). Assim, é necessário disparar o portmapper do RPC. Este servidor é disparado por /sbin/init.d/rpc, e isto é feito automaticamente se você o tiver configurado em /etc/rc.config.

  • Complete as entradas em /etc/passwd e /etc/group. Para perguntar ao servidor NIS a respeito destes arquivos após pesquisar os arquivos locais, é necessário adicionar uma linha contendo apenas `+'. O NIS permite você definir outras opções como netgroups ou sobrepor entradas NIS localmente. O arquivo README correspondente tem mais informações em relação a estas configurações.

  • Dispare o ypbind. O último passo para ativar o servidor NIS é disparar o ypbind. Isto, de fato, dispara realmente o cliente NIS, isto não é mais necessário mas garante a reconexão se, por exemplo, o servidor NIS for re-inicializado. Este programa é disparado automaticamente se você tiver configurado sua rede através do YaST.

  • Para ativar suas alterações, reinicialize o sistema ou digite:
    earth:~ # rcnetwork restart
    earth:~ # rcypclient restart

3.6.3. Instalação do servidor NIS
O servidor NIS está disponível no SuSE Linux no pacote ypserv, da série n. O programa executável do servidor NIS é o ypserv

Existe dois tipos de servidores NIS: Master e Slave.
  • Servidor Master : Este servidor que mantém a base de dados do NIS em uma rede, faz a transferência do mapeamento para um servidor slave e também recebe requisições de clientes NIS.

  • Servidor Slave : Este servidor mantém uma base de dados NIS, proveniente de um servidor master, através da transferência da base de dados. Este servidor é útil quando sua rede é segmentada e possui muitos hosts, então é aconsellhável manter servidores slave para reduzir o tráfego na sua rede.
A figura abaixo mostra o relacionamento entre os servidores masters, slaves e os clientes:

NIS masters, slaves e clientes


Configurando o servidor NIS 

Após instalar o pacote do servidor NIS, você deve configurá-lo da seguinte maneira:

  • Defina o domínio NIS em YP_DOMAINNAME no arquivo /etc/rc.config. Lembre-se que este domínio não tem nenhuma relação com o domínio de DNS.
  • Defina que a máquina servidora de NIS será cliente dela mesma, definindo as variáveis CREATE_YP_CONF=yes e YP_SERVER com o IP da própria máquina, no arquivo /etc/rc.config.
  • Para inicializar o cliente NIS automaticamente, assinale a variável START_YPBIND=yes no arquivo /etc/rc.config.
  • Para inicializar o servidor NIS automaticamente durante o boot ou manualmente através de script, assinale as variáveis START_YPSERV=yes para iniciar o servidor master e START_YPXFRD=yes para aumentar a velocidade de transferência para o servidor slave.
  • Após fazer estas alterações, execute o script SuSEconfig.
Criando a base de dados NIS 

Para criar a base de dados NIS do servidor Master, execute o comando:

./ypinit -m, no diretório /usr/lib/yp
ou
ypmake
ou
make, no diretório /var/yp
Para criar a base de dados NIS do servidor Slave, execute o comando:

./ypinit -s, no diretório /usr/lib/yp
Executando o servidor NIS

Para executar o servidor NIS manualmente, utilize o script :

rcypserv start
Lembre-se que o servidor NIS utiliza chamadas RPC através do portmapper (rpc.portmap), certifique-se que o processo portmap esteja rodando, com o comando:

rcportmap status
3.6.4. Ferramentas e utilitários
Estas ferramentas estão disponíveis nos pacotes cliente e servidor NIS :

ypdomainname Mostra o domínio NIS que a máquina pertence. Os utilitários nisdomainname e domainname também mostram o domínio NIS.
ypbind Este programa é o cliente NIS. Ele encontra o servidor de domínios NIS e mantém as informações do NIS no arquivo /var/yp/binding/[domainname].[version]
ypmake Cria o mapeamento do seu servidor NIS
ypset Associa o cliente NIS (ypbind) a um outro servidor NIS
ypcat Mostra a base de dados do NIS de um determinado mapeamento (Exemplo: passwd, group, services ...)
ypwhich Retorna o nome da máquina servidora NIS
yppoll Retorna a versão e o servidor master de um mapeamento NIS
ypmatch Realiza a procura de uma chave (palavra) em um mapeamento NIS
yppasswd Muda a senha do usuário na base de dados do NIS
ypchsh Muda o shell do usuário na base de dados do NIS
ypchfn Muda o nome e descrição do usuário na base de dados do NIS


Copyright © 2001-2007 HMarx - webmaster@linuxsupport.com.br