Configurando NFS + NIS (Ubuntu)

Este tutorial tem por objetivo ensinar a configurar o NFS + NIS no Ubuntu de forma rápida e simples, mas sem deixar de transmitir os conceitos necessários para a aquisição do conhecimento teórico. Antes de configurarmos o NFS e o NIS no GNU/Linux, devemos compreender o que eles são e para o que eles são utilizados.

[ Hits: 158.032 ]

Por: Racy Rassilan em 31/08/2009


Configurando o servidor NIS



Significado do NIS

NIS é Network Information Service (serviço de informação de rede). Mantém informações administrativas da rede na forma de domínios, possibilitando aos usuários terem acesso à suas contas em qualquer máquina da rede. Para que seus arquivos sejam centralizados de forma que sejam acessados de qualquer lugar, utiliza-se o NFS, que exporta os arquivos do servidor para qualquer máquina onde exista um usuário que tenha o direito a estes arquivos.

Função do NIS

No GNU/Linux, como em qualquer outro sistema operacional, existe a possibilidade de realizar logon (autenticação) remoto. Para isso o NIS servidor tem a função de informar aos clientes NIS da rede os usuários disponíveis no servidor para serem logados remotamente. Assim, quando um cliente NIS envia uma solicitação para um servidor NIS, ele verifica se o usuário e a senha estão corretos, caso não estejam, ele rejeita a autenticação, caso estejam corretos ele devolve para aquele terminal todas os programas, arquivos e configurações daquele usuário como se ele tivesse na sua máquina real.

Configurando o servidor NIS

A configuração do NIS no servidor consiste de onze simples passos.

1° passo:

Baixar o pacote nis e o portmap utilizando o comando:

# apt-get install portmap

Depois:

# apt-get install nis

Geralmente no Ubuntu Desktop 9.04 o portmap já vem instalado.

2° passo:

Após baixado o pacote NIS ele será executado e apresentará a seguinte mensagem:

"Você precisa agora escolher o nome de domínio NIS para seu sistema.
Se você quer que esta máquina seja apenas um cliente, informe o nome
de domínio NIS de sua rede."

Ele pode sugerir um nome. Você deve excluir e deixar em branco, depois basta pressionar "enter".

3° passo:

Vamos editar o arquivo /etc/hosts utilizando o vi colocando o seguinte conteúdo no final do arquivo:

192.168.10.101    server.rede.br    server

Obs.: Como sempre, utilizando o IP do seu servidor, não o do exemplo. Huahauha...

Feito isso salve o arquivo.

4° passo:

Vamos editar o arquivo /etc/defaultdomain utilizando o vi colocando o seguinte conteúdo no final do arquivo:

rede.br

Feito isso salve o arquivo.

5° passo:

Vamos editar o arquivo /etc/ypserv.securenets utilizando o vi, colocando o seguinte conteúdo no final do arquivo:

255.255.255.0 192.168.10.0

Obs.: Como sempre, utilizando a sua faixa de IP e máscara de rede.

Feito isso salve o arquivo.

6° passo:

Vamos editar o arquivo /etc/default/nis utilizando o vi. Altere os seguintes campos do arquivo:

NISSERVER=false

Para:

NISSERVER=master

Estaremos dizendo que essa máquina, de fato, será o servidor quando alteramos este campo. Altere o campo:

NISCLIENT=true

Para:

NISCLIENT=false

Estaremos dizendo que essa máquina não é um cliente quando alteramos este campo.

Obs.: Dentro do arquivo existem mais campos, mas não mexa neles.

Feito isso salve o arquivo.

7° passo:

Estando tudo configurado e os arquivos bem editados, precisamos parar e iniciar o serviço. Para isso, dentro do diretório /etc/init.d/, digite:

# ./nis stop

E depois que ele parar o serviço digite:

# ./nis start

8° passo:

Agora que o serviço foi iniciado precisamos criar os mapas e validar as configurações do servidor. Para tal, entre no diretório /usr/lib/yp e digite o seguinte comando:

# ./ypinit -m

Feito isso ele irá perguntar qual máquina rodará o servidor, basta digitar o nome da máquina servidor, no meu caso lab1-pc01 e apertar "Control + D".

9° passo:

Precisamos editar o arquivo /etc/ypserv.conf, onde adicionaremos no final do mesmo as seguintes informações:

dns: no
files: 30
slp: no
xfr_check_port: yes

Feito isso salve o arquivo.

10° passo:

Edite o arquivo /etc/yp.conf adicionando a seguinte linha ao final do arquivo:

ypserver 192.168.10.101

Obs.: Este IP é do meu servidor, você deve colocar o IP do seu servidor.

Feito isso salve o arquivo.

11° passo:

Edite o arquivo /var/yp/Makefile alterando os campos:

MERGE_PASSWD=true
MERGE_GROUP=true

Para:

MERGE_PASSWD=false
MERGE_GROUP=false

Feito isso salve o arquivo.

Assim que todas essas configurações estiverem realizadas você pode começar a criar os usuários. Após cada usuário criado basta ir no diretório /var/yp e executar o comando make, isso garantirá sua base de dados de usuários atualizada para que todos os terminais clientes possam logar no servidor utilizando seu usuário.

Dica: É sempre bom, depois de muitas configurações, desligar e ligar novamente o computador, mesmo que o sistema nos permita reiniciar ou parar manualmente os serviços.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configurando o servidor NFS
   3. Configurando o cliente NFS
   4. Configurando o servidor NIS
   5. Configurando o cliente NIS
Outros artigos deste autor

Configurar servidor PPPoE (Ubuntu)

Configurar servidor proxy Squid (Ubuntu)

Leitura recomendada

Deixando o Gnome bonitão em qualquer distribuição

Linux Terminal Server - LTS

Configurando servidores DHCP, BIND, Squid, Sarg, Samba e algumas regras IPtables

Como ativar o módulo de cancelamento de ruído no Pipewire

Instalando o VMware Player 12 no Linux Mint 17.3

  
Comentários
[1] Comentário enviado por carlaodopao em 17/09/2009 - 03:28h

Brilhante aula, cara!
Era tudo o q eu queria e precisava saber!
Valeu pelo seu post!!!! :-D=

[2] Comentário enviado por amarof2009 em 11/10/2009 - 15:23h

Boa tarde,
Já estou a um tempo tentando fazer o compartilhamento de arquivos utilizando o nfs, mas sempre aparece um erro.
Este artigo é excelente, fiz todos os procedimentos orientados mas aparece o seguinte erro:

root@wilton-desktop:~# mount 10.0.0.101:/home/wilton/Documentos/testando/ /home/wilton/sisope/
mount.nfs: mount to NFS server '10.0.0.101:/home/wilton/Documentos/testando/' failed: RPC Error: Program not registered
root@wilton-desktop:~#

Por favor, me ajudem a resolver este problema. Eu já pesquisei em um monte de sites mas não consegui resolver.
Muito obrigado.

[3] Comentário enviado por nox6000 em 11/10/2009 - 17:06h

Caro amarof2009,

Eu acredito que vc esteja montando de seu computador para seu computador isso não foi feito pra funcionar assim.


Isso foi feito para funcionar da seguinte maneira:

Temos um servidor 10.0.0.1 que esta me sedendo a pasta "arquivos" encontrada em /home/usuario/arquivos

e temos a maquina cliente 10.0.0.2 que vai pegar o conteudo via rede e montar em seu diretorio onde este tem que ter permissão para tal.

a montagem de forma manual podera ser assim:
mount 10.0.0.1:/home/usuario/arquivos /home/cliente/Desktop/arq

Ou sejá, estou montando manualmente o conteúdo da pasta "arquivos" do servidor 10.0.0.1 no desktop do computador 10.0.0.2 no "Desktop" mais precisamente na pasta "arq" que esta no "Desktop".

Isso só é possivel após realizar todas as configurações sugeridas por este artigo e se a pasta "arq" do cliente 10.0.0.2 bem como a pasta "arquivos" do sevidor 10.0.0.1 tiver permissão de escrita e leitura.


Esperto ter lhe ajudado.

[4] Comentário enviado por amarof2009 em 11/10/2009 - 18:18h

Não é querendo abusar, nox6000, mas eu acho que digitei o ip correto.
Para comprovar, quando digito ifconfig na maquina que seria o servidor(como você explicou, onde está a pasta sedida) aparece o seguinte:

wilton@wilton-laptop:~$ ifconfig
eth0 Link encap:Ethernet Endereço de HW 00:03:0d:77:37:b1
UP BROADCAST MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
IRQ:16 Endereço de E/S:0x2000

lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACK RUNNING MTU:16436 Métrica:1
pacotes RX:78 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:78 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:5968 (5.9 KB) TX bytes:5968 (5.9 KB)

wlan0 Link encap:Ethernet Endereço de HW 00:19:db:0e:ce:d4
inet end.: 10.0.0.101 Bcast:10.0.0.255 Masc:255.255.255.0
endereço inet6: fe80::219:dbff:fe0e:ced4/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:639 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:716 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:491408 (491.4 KB) TX bytes:143783 (143.7 KB)

wmaster0 Link encap:Não Especificado Endereço de HW 00-19-DB-0E-CE-D4-65-64-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

wilton@wilton-laptop:~$


Qual é o número ip que devo usar?
Devo fazer alguma outra configuração?
Muito obrigado pela ajuda.

[5] Comentário enviado por amarof2009 em 11/10/2009 - 18:21h

Se também for acrescentar, quando faço ifconfig na máquina que seria cliente aparece o seguinte:

wilton@wilton-desktop:~$ ifconfig
eth0 Link encap:Ethernet Endereço de HW 00:24:21:89:b1:c1
UP BROADCAST MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
IRQ:252 Endereço de E/S:0x2000

lo Link encap:Loopback Local
inet end.: 127.0.0.1 Masc:255.0.0.0
endereço inet6: ::1/128 Escopo:Máquina
UP LOOPBACK RUNNING MTU:16436 Métrica:1
pacotes RX:120 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:120 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:0
RX bytes:9992 (9.9 KB) TX bytes:9992 (9.9 KB)

wlan0 Link encap:Ethernet Endereço de HW 00:21:91:80:12:1a
inet end.: 10.0.0.100 Bcast:10.0.0.255 Masc:255.255.255.0
endereço inet6: fe80::221:91ff:fe80:121a/64 Escopo:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:5222 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:5603 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:4490440 (4.4 MB) TX bytes:1009967 (1.0 MB)

wmaster0 Link encap:Não Especificado Endereço de HW 00-21-91-80-12-1A-32-31-00-00-00-00-00-00-00-00
UP BROADCAST RUNNING MULTICAST MTU:1500 Métrica:1
pacotes RX:0 erros:0 descartados:0 excesso:0 quadro:0
Pacotes TX:0 erros:0 descartados:0 excesso:0 portadora:0
colisões:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

wilton@wilton-desktop:~$

[6] Comentário enviado por nox6000 em 11/10/2009 - 19:58h

Caro amarof2009,

Este ip que esta me informando é o ip da sua placa de rede sem fio e não da sua placa de rede com fio.

Este artigo foi feito para computadores que utilizam placa de rede com fio. "Rede com Fio".
as placas de rede com fio são as placas denominadas eth0, eth1, eht3 ... ethN.

as placas de rede sem fio são Wlan0 e etc.

Bem o que quiz explicar da ultima vez e vou tentar tornar explicar é que vc tem dois compudadores Computador 1 - É o servidor que tem o endereço da placa com o IP X e este tem a pasta que foi compartilhada atraves da configuração do "NFS" este computador tem uma placa "ethN" ou seja uma placa de rede com fio.

Computador 2 -É o cliente este é o compudador com o endereço IP Y onde este tem a placa de rede "ethN" e que vai acessar via "NFS" o servidor "Computador 1" e conseguir montar um diretorio que contenha os arquivos do computador 1 no computador 2 que é o cliente.


Se vc estiver usando rede sem fio nos dois ai vc tera que estudar melhor e ver se realmente os dois computadores estão se comunicando para depois realizar a configuração do NFS tanto no computador 1 quanto no 2.


[7] Comentário enviado por andrefpacheco em 02/11/2009 - 12:23h

Nota 1000!!!!! Parabéns!!!!

[8] Comentário enviado por Sergio3s em 26/01/2010 - 09:48h

Show!! parabens !!
Só tenho duas perguntas, o perfil pode ser móvel ? como defino o tamanho máximo e a localização dele ?
Valeu !

[9] Comentário enviado por texwiller em 29/08/2010 - 10:12h

PARABENS! Nota 1000!

[10] Comentário enviado por leandro.bernardo em 15/04/2011 - 14:33h

na hora de configurar o /etc/exports

ele ficaria dessa forma?

/home/ *(rw,sync,Projetos)

ou

/home/ *(rw,sync,/home/diretorio/Projetos) ?



[11] Comentário enviado por nox6000 em 15/04/2011 - 14:47h

Olá Leznx!

Quanto a sua pergunta, não fica nem de uma maneira nem de outra.

Fica assim:

/home/diretorio/Projetos/ *(rw,sync,no_root_squash)

Ou seja, você quer compartilhar a pasta Projetos, que está no diretório: /home/diretorio/Projetos

Espero ter ajudado.

[12] Comentário enviado por aislan_santos em 03/12/2012 - 16:24h

ola
sou novo com o linux estou configurando NFS quando startei o serviço, apareceu a seguinte mensagem:
* Exporting directories for NFS kernel daemon ...
exportfs: no options for /home/server/teste*(rw,sync,root_no_squash) : sugest (sync) to avoid warning
exportfs: \etc\exports [1]: Neithet "subtree_check" or "no_subtree_check" specified for export "/home/server/teste*(rw,sync,root_no_squash"
assuming default behaviour ('no_subtree_check').
NOTE: this default has changed since nfs-utils version 1.0.x

exportfs: failed to stat /home/server/teste*(rw,sync,root_no_squash) : no such file or directory
[ok]
* Starting NFS kernel daemon [ok]



[13] Comentário enviado por wilhelm1991 em 11/09/2013 - 20:14h

Olá,

gostaria de saber como faço para conectar um Windows no Ubuntu com o NFS e NIS?

[14] Comentário enviado por wildner1 em 13/12/2013 - 22:11h

Saiu tudo perfeito até a instrução abaixo.

root@dicenter5:/etc/init.d# ./nis stop
bash: ./nis: Arquivo ou diretório não encontrado

Tentei o comando abaixo, pois acho que o nis está em outro lugar e voltou como permissão negada, O que devo fazer?

root@dicenter5:/etc# ./default/nis stop
bash: ./default/nis: Permissão negada

[15] Comentário enviado por usiel em 29/12/2013 - 14:27h

Com o Debian 7.3 funciona perfeitamente.
Eu uso ubuntu 13.04 como cliente e nele não aparece opção pra eu digitar o nome de um usuário do servidor, aparecem apenas opções pra eu escolher os usuários da máquina local (cliente); quando eu faço no terminal o login com usuário do servidor, funciona perveitamente.

Vale lembra que usi este tutorial abaixo:
NIS Servidor

1. instalando: apt-get install nis

2. Adicione a seguinte linha ao hosts.allow:
portmap ypserv ypbind : list of IP addresses

Onde a "lista de endereços IP" string é, você precisa fazer uma lista de endereços IP que consiste no servidor e todos os clientes. Estes têm de ser endereços IP por causa de uma limitação no portmap (ele não gosta de nomes de host).


3. Edit /etc/default/nis e definir a linha NISSERVER para NISSERVER=master

4. Edit /etc/yp.conf and add a server line of the form:
domain <domainname> server <servername>
onde: <domainname> é o nome do domínio (flap.local), e <servername> é o nome do servidor.

5. Edit /etc/ypserv.securenets e adicionar linhas para restringir o acesso a membros do domínio. Eu uso linhas para máquinas específicas, como:
host 192.168.1.1
host 192.168.1.2
etc.

6. Construir o DB, pela primeira vez, execute:
sudo /usr/lib/yp/ypinit -m

7. reiniciar serviços: /etc/init.d/ypbind restart

8. sempre que fizer alguma alteração (adicionar usuários), execute este comando:
sudo make -C /var/yp



NIS Cliente

1. Adicionar servidor em /etc/hosts. Isso significa que você ainda pode encontrar o servidor se houver uma falha de DNS.

2.instalar o nis
sudo apt-get install nis

3. defina o nome do seu dominio NIS editando o arquivo /etc/defaultdomain, acrescente uma linha com o nome do doínio (flap.local)
nano /etc/defaultdomain

4. adicione uma linha portmap em /etc/hosts.allow por razões de segurança:
portmap : <endereço IP do servidor NIS> (ou nome de máquina do servidor)

5. acrescente esta linha no arquivo /etc/passwd
+::::::

6. acrescente esta linha no arquivo /etc/group
+:::

7. acrescente esta linha no arquivo /etc/shadow
+::::::::

8. Edite /etc/yp.conf e adicione a linha:
ypserver <endereço IP do servidor NIS> (ou nome de máquina do servidor)

9. No arquivo /etc/pam.d/common-session. Será necessário incluir a linha abaixo. Esta alteração irá criar a pasta home do usuário automaticamente no primeiro logon:
session required pam_mkhomedir.so skel=/etc/skel/ umask=077

10. editar: nano /etc/nsswitch.conf e adicionar alterar linhas para:

passwd: compat nis
group: compat nis

shadow: compat nis
hosts: files dns nis


-> reiniciar serviços:
/etc/init.d/ypbind restart

[16] Comentário enviado por victormag em 19/03/2014 - 21:55h

Perfeito cara!

Obrigado por compartilhar seu conhcimento!

[17] Comentário enviado por eutugite em 27/04/2015 - 20:06h


desculpem a minha ignorância. isto deve ser o mais basico que há, mas não sei.
a configuração do servidor nis e nis cliente é feito na mesma máquina ou o nis server é feito na máquina servidor e o nis cliente na máquina cliente.
outra questão, o ubuntu desktop é apenas para a máquina cliente.
sei que as minhas perguntas são do mais basico que existe, mas estou a começar o linux. ando um pouco perdida.
obrigado


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts