Você está na página 1de 16

NIS ServiodeInformaoemRede

Artigoextradodolink:http://wiki.sintectus.com/bin/view/GrupoLinux/ArtigoServidorNIS

Estecaptulo tratado Serviode InformaoemRede,quepermite que asconfiguraes deumservidor,comosenhasde usuriospossamsercompartilhadaseutilizadasemoutrosclientesdarede.

NIS OServiodeInformaoemRede.
OServiodeInformaoemRedeNetworkInformationServicetemcomofinalidadeacentralizaodaAdministraodos ServiosemumServidor,denominadoservidorNIS.EntreasvriasfunesdoNIS,amaisimportanteacentralizaoda administraodeusurios. O servidor NIS utiliza uma base de dados baseada em mapas, que so gerados a partir de arquivos como o /etc/passwd, ou seja, a partir de arquivosdeadministraoeconfiguraolocal,oNIScriamapasqueso necessriosparagerarseubancodedados.Mapassoarmazenadosem um servidor central servidor NIS e podem ser acessados por clientes. Estes mapas onde o cliente obtm as informaes necessrias so armazenados geralmente no formato DBM. DBM um formato de armazenamentodeinformaesqueusatcnicasdehashingqueaceleram oprocessodepesquisa.Existeumaimplementaolivredebibliotecapara manipulao de base de dados DBM no projeto GNU e chamada de gdbm,quefazpartedemuitasdistribuiesdoLinux.AssimcomooNFS,o NISutilizadatecnologiaRPC,ChamadadeProcedimentoRemoto,apartir do qualosclientesacessamasinformaes no servidor. Isto permite que as informaes contidas em arquivos administrativos do servidor possam serdisseminadosportodaumarede.ONISfoidesenvolvidopelaempresa Sun Microsystems e era originalmente conhecido como Pginas Amarelas,quetraduzidoeminglsporYellowPages,masseunometeve quer seralteradodevido a problemasdedireitosautorais, umavezque a empresa Bell South j era dona da marca registrada "Yellow Pages". Devido a isso, os pacotes de instalao, arquivos de configurao do servioenomesdearquivosbinriosdoNIScontinuamcomasiniciaisYP. Oobjetivodessesistemaeraimplementarumambientecomumparatodos osusuriosdarede,fazendocomqueinformaesbsicascomonomesdeusurios,senhas,relaodemquinasdarede,e etcfossemcompartilhadas.

Outrastecnologiassemelhantes
Existemoutrastecnologiasparaocompartilhamentodeinformaesemrede,podemoscitaroNIS+(NISPLUS)eoLDAP. ASunMicrosystemstambmdesenvolveuumaversoaprimoradadoNISchamadaNIS+(NISPLUS).Essanovaversoinclui algumasdiferenascomo:oNIS+nousamapasparaadistribuiodeinformaes,massimtabelas.Cadatabeladividida demodoa que suas linhas representam objetos desua base de dados e ascolunas representam as propriedades desses elementos.Almdisto,suaorganizaoseparececomahierarquiadoDNS.NestedocumentonoiremostratardoNIS+,mas apenas do NIS. Para mais informaes sobre o NIS+ voc pode consultar seu site oficial : http://www.linuxnis.org, que coincidentemente tambm o site oficial do NIS. Voc pode obter os fontes para compilao e instalao em: ftp://ftp.kernel.org/pub/linux/utils/net/NIS+.OLDAP(LightweightDirectoryAccessProtocol)tambmumatecnologiautilizada paracompartilhamentodeinformaes,masdiferentedoNIS,poisprovserviosde"Diretrio",inclusivepermitindofuncionar comoum bancodedadosdistribudo,talcomo oDNS. UmDiretrio organizado emformadervore, e suasinformaes tendem a sermais lidasdo queescritase so organizadaspara darem respostas rpidas e suportarumgrandevolumede pesquisas. Mais informaes sobre o LDAP e sua implementao voc pode encontrar no LDAP HowTo em http://www.linuxdoc.org/HOWTO/LDAPHOWTO.html e na pgina do grupo que mantm seu desenvolvimento: http://www.openldap.org.

InstalandooNIS
OspacotesnecessriosparainstalaodoNISso:ypserveypbind,oprimeiroopacotereferenteaoservidor,osegundo referenteaoclienteNIS.Vocpodeencontrarainstalao doNIS empacotes rpmepodeencontraros fontesemarquivos compactadoscomotar.ParainstalaroNISapartirdepacotesrpm,execute: #rpmivhypserv.X.Y.Z.i386.rpm #rpmivhypbind.X.Y.Z.i386.rpm ReparequeX.Y.Zaversodopacoteaserinstalado. Outropacotequedeveserinstaladooyptools.X.Y.Z.i386.rpm,quecontmferramentasadministrativas,comooyppasswd, quepermitetrocadesenha.EstepacotenecessrioparainstalaodoclienteNIS. VerifiqueantesdeinstalarospacotesdoNISseoportmapjestinstalado.Casonoesteja,sernecessrioinstallo. %DEBIAN%Podemosinstalaronispelaferramentaapt. lab152:~#aptgetinstallnis ReadingPackageLists...Done BuildingDependencyTree...Done Thefollowingextrapackageswillbeinstalled: libc6libc6devlocales Suggestedpackages: glibcdocmanpagesdev ThefollowingNEWpackageswillbeinstalled: nis Thefollowingpackageswillbeupgraded: libc6libc6devlocales 3upgraded,1newlyinstalled,0toremoveand451notupgraded. Needtoget11.6MBofarchives. Afterunpacking647kBofadditionaldiskspacewillbeused. Doyouwanttocontinue?[Y/n] lab152:~#aptgetinstallportmap ReadingPackageLists...Done BuildingDependencyTree...Done Thefollowingextrapackageswillbeinstalled: libc6libc6devlocales Suggestedpackages: glibcdocmanpagesdev Thefollowingpackageswillbeupgraded: libc6libc6devlocalesportmap 4upgraded,0newlyinstalled,0toremoveand450notupgraded. Needtoget11.4MBofarchives. Afterunpacking20.5kBdiskspacewillbefreed. Doyouwanttocontinue?[Y/n]

Duranteainstalaodonisserperguntadosobreodomnionisdamaquina

EntendendooServidorNIS
OprincipalusodeumservidorNISoferecerumaautenticaocentralizada.Ouseja,podemoscriarcontasdeusuriosno servidoreestesusuriospodemefetuarlogonnasestaesclientesNIS,ouseja,ascontasdeusuriosnecessitamapenas sercriadasnoservidor,permitindoumaadministraocentralizada.Assim,nonecessriocriaodecontasdeusuriosnas estaesdetrabalho,poupandoumesforoconsidervel,aindamaisquandosetemmuitasestaesnarede. Comatecnologiacliente/servidorNIS,todasasconfiguraesserodefinidasnoservidoreosclientesconsultarooservidor atravsdechamadasdeprocedimentosremotosRPC(tecnologiacriadapelaSunMicrosystems). Comofoicitado,oNIStrabalhacommapas,quepodemserclassificadosemduascategorias: ArquivosdeAdministraodoSistema ArquivosdeAdministraodeRedes SegueabaixoarelaodearquivosdeconfiguraodoSistema:

/etc/passwd
Atravs deste arquivo o NIS gera os mapas passwd.byaddr e passwd.byname. Este arquivo o arquivo de administraodeusurios.

/etc/shadow
Osdadosdestearquivosoanexadosaomapapasswd.byaddr,pelofatodeseroarquivodesenhasdoLinux,este arquivo consideravelmente novo no Linux, pois antigamente o arquivo passwd guardava tambm as senhas do usurios.Por estemotivo o NISnocria necessariamenteummapa relativo a estearquivo, ele apenasanexaono mapapasswd.byaddr.

/etc/group
AtravsdestearquivooNISgeraosmapasgroup.byaddregroup.byname. OsprximosarquivossoreferentesAdministraodeRedes.

/etc/hosts
Produzosmapashosts.bynameehosts.byaddr.Estearquivoresponsvelpelaresoluodenomesquandonose desejaresolvernomesnoprovidosporumservidorDNS(Videcaptulo2). Damesma forma sercriadomapas paraos arquivos /etc/protocols, /etc/services, /etc/aliases,etc. Para vocchecar quais arquivosqueoNISarmazenarosmapas.Paraistouseocomando: #ypcatx Use"ethers"formap"ethers.byname" Use"aliases"formap"mail.aliases" Use"services"formap"services.byname" Use"protocols"formap"protocols.bynumber" Use"hosts"formap"hosts.byaddr" Use"networks"formap"networks.byaddr" Use"group"formap"group.byname" Use"passwd"formap"passwd.byname" TodosestemapasseroarmazenadosnoServidorNISquetercomoserviooypserv(DaemondoServidorNIS).Nocaso dosclientes,oservioquedeveseriniciadooypbind(DaemondoClienteNIS).

Fig.1 Conversoparaoformatodbm.
Tanto o servidor como o cliente NIS devem pertencer a um domnio, este domnio denominado domnio NIS e deve ser definidono servidor.ONIS utilizadonomedodomnio NISparacriarumdiretriodentrododiretrio /var/yp, o nomedeste diretrioseronomedodomnio.DentrodestediretrioseroarmazenadososmapasdabasededadosNIS.Exemplo:caso voc defina o domnio NIS como sistemasabertos.com.br, o diretrio onde estar a base de dados NIS ser /var/yp/sistemasabertos.com.br. EstedomnionotemnenhumarelaocomodomnioInternet,podendoserumnomecompletamentediferente.

DefinindoumdomnioNIS.

Fig.2 DefinindoumdomnioNIS.
HduasformasdedefinirumdomnioNIS:

1.OdomnioNISpodeserdefinidoatravsdocomandodomainname,vejaoexemplo: #domainnamesistemasabertos.com.br EstecomandoatribuiodomnioNIStemporariamente,quandoamquinareinicializadaomesmoperdeestaconfigurao. Para isto existe arquivo para armazenar este parmetro. Nas distribuies Conectiva e Red Hat o arquivo utilizado /etc/sysconfig/network, em outras distribuies existem um arquivo chamado /etc/defaultdomain. Veja o exemplo de configuraoparaadistribuioConectiva: NETWORKING=yes FORWARD_IPV4="no" HOSTNAME="intranet.sistemasabertos.com.br" DOMAINNAME=sistemasabertos.com.br GATEWAY="10.1.0.3" GATEWAYDEV="eth0" NISDOMAIN=dominionis OparmetroNISDOMAIN defineodomnioNISqueoservidor irgerenciar. Insira nessevaloronomedoseudomnio NIS paraqueseuservidorseconfigurenainicializao. #/etc/rc.d/init.d/networkstart 2.Esta ltima forma mais adequada, pois trata de uma configurao especifica para o NIS. Imagine se voc quer que o domniodamquina(DomniorelativoaoDNS)sejadiferentedodomniodoNIS.Nestecasovocdeveusaresteexemplode configurao.Paraestetipodeconfiguraoexisteocomandonisdomainname,vejaasintaxe: #nisdomainnamemeudominio Neste exemplo o domnio NIS ser "meudominio". Assim como domainname, o nisdomainname apenas configura temporariamenteodomnioNIS,logovocdevealteraroarquivo/etc/sysconfig/networkseisaquiumexemplo: NETWORKING=yes FORWARD_IPV4="no" HOSTNAME="intranet.sistemasabertos.com.br" DOMAINNAME=sistemasabertos.com.br GATEWAY="10.1.0.3" GATEWAYDEV="eth0" NISDOMAIN=meudominio Paraqueasalteraestenhamefeitoreinicieoservionetwork. Depoisdestasconfiguraesdevemos,nocasodoservidor,inicializaroservioypserv,masantesdistodeveserinicializadoo servioportmap,pelofatodoNIStrabalharcomatecnologiaRPC. O servidor portmap responsvel por organizar quais so as portas corretas que se deve procurar para ter acesso a determinados dadosde programas que utilizamchamadas RPC (RemoteProcedure Calls).Quando programasque utilizam RPCs so inicializados eles dizem ao portmap que portas estaro escutando e, qualquer tentativa de acesso a esses programasirpassarpeloportmapprimeiro. Para mais informaes sobre o portmap voc deve consultar a pgina de manual desse programa ou o livro Guia do Administrador de Redes de Olaf Kirch, traduzido pela Conectiva informtica e disponvel para download gratuito em http://www.conectiva.com.br/docs. Paraissodevemosexecutar: #/etc/rc.d/init.d/portmapstart #/etc/rc.d/init.d/ypservstart

O quedefine amquinacomo sendo servidorNIS oucliente NISoservioque estrodandonamesma. Logo, podemos concluir queaconfiguraodoclienteapenasinicializaroypbind?. Aresposta no, vocdevedefinir o domnio NISda mesma formaquefoi apresentadaparao servidor, eaindadefinirquem seroseuservidorNIS.Esta ltimaafirmaono precisaserexatamentedestaforma,oypbind(serviodocliente)podeenviarumpedidoviabroadcast[anncio]perguntando poralgumservidorNISnarede,casoexistaeleseajuntaraomesmo,portantoexistemaisdeumaformaparaencontrarum servidorNISnarede.Veremosaconfiguraodoclientepassoapassonaseoreferenteconfiguraodocliente. %DEBIAN%Editaroarquivocomodominio #vi/etc/defaultdomain sa.com.br

ArquivosdeConfiguraodoNIS
/etc/yp.conf
Estearquivoutilizadopeloypbind(serviocliente)paraomesmoencontraroServidorNIS.Vejaoexemplodestearquivo: #/etc/yp.confypbindconfigurationfile #Validentriesare # #domainNISDOMAINserverHOSTNAME #UseserverHOSTNAMEforthedomainNISDOMAIN. # #domainNISDOMAINbroadcast #UsebroadcastonthelocalnetfordomainNISDOMAIN # #ypserverHOSTNAME #UseserverHOSTNAMEforthelocaldomain.The #IPaddressofservermustbelistedin/etc/hosts. # AtravsdesteexemploverificamosquehtrsformasdeencontrarmososervidorNISemumarede. No primeiro caso, voc deve passar como parmetro o NISDOMAIN e o nome do servidor NIS. No parmetro HOSTNAMEvocpodeusaroendereoIPouonomedamquina.Sevocforusaronomedemquinaservidora,o endereoIPdoservidordeveestarcitadonoarquivo/etc/hosts. No segundo, voc necessita apenas conhecer o nome do domnio NIS, este caso conhecido como pedido via anncio,pois aoinicializaroservioypbind,omesmoenviaumsinalpor broadcast[difuso] solicitando umservidor NIS.Esta formadeconfiguraotemdesvantagememrelaoasegurana, poisoypbind seconectaraoprimeiro servidorNISqueeleencontraremrede.Assim,suamquinapoderutilizardeumservidornoautorizadonarede,o quepodeserproblemtico. NestaltimasomentenecessrioonomeouendereoIPdoServidorNIS.Parausaronomedohost,oendereoIP deveestarlistadonoarquivo/etc/hosts,ouserresolvvelviaDNS.

/etc/ypserv.conf
Esteoarquivodeconfiguraodoservioypserv.Estearquivocontmopesdeconfiguraodoypserv.Aosercarregado o servio ypserv, este serviol estearquivo e a partir deste ele cria osmapas da base dedados NIS. Este arquivo ser detalhadomaisnasseesposteriores.3.3 %DEBIAN%Nodebian,pypsevnochamadoatravsdocomando #/etc/init.d/ypservrestart

Eletratadocomoumcomandoexecutvel

#ypserv

/etc/nsswitch.conf
Estearquivodefineaordemdepesquisadasfontesdeinformaes.Vejaumexemplodestearquivo: passwd:filesnisplusnis shadow:filesnisplusnis group:filesnisplusnis hosts:filesnisdns ethers:files netmasks:files networks:files protocols:files rpc:files services:files netgroup:nisplus publickey:nisplus automount:filesnisplus aliases:filesnisplus Paraexemplificaodousodestearquivoutilizaremosaentradahostsdestearquivo.Estadiretivadefinequearesoluode nomeparaendereoIPserprimeiramentebaseadonoarquivohosts,poisoparmetrofiles.Casooarquivo/etc/hostsfalhe na resoluo, a resoluoento passadapara o nis, somente depois verificado o DNS, se o nis falhar. Para osoutros parmetros do arquivo a lgica semelhante, sempre que o Linux tentar encontrar informaes sobre algo, seja lista de usurios,senhas,gruposeetc,eleirfazerabuscanaordemimpostapeloarquivo/etc/nsswitch.

ConfigurandooServidorNIS
NestetpicoestaremosapresentandotodosospassosparaconfiguraroServidorNIS. Segueabaixoasetapasdeconfiguraonumerados: 1.DefinirumdomnioNIS,paraistoexecuteosseguintespassos: #vi/etc/sysconfig/network NETWORKING=yes FORWARD_IPV4="no" HOSTNAME="lab1.sistemasabertos.com.br" DOMAINNAME=sistemasabertos.com.br GATEWAY="10.1.0.3" GATEWAYDEV="eth0" NISDOMAIN="meudominio" Depoisdeconfiguradoreinicieoservionetwork, #/etc/rc.d/init.d/networkrestart Observequeneste exemplodefinimosonome dodomnio NIS comosendomeudominio.Vocobservouanteriormenteque poderamosusarocomandodomainnameenisdomainnameparaatribuironomedodomnioNIS.Nestecaso,nsusaremos estecomandoparaverificarmosserealmentedepoisdereiniciadooservionetworkodomnioestarconfigurado.Logo,ao executaronisdomainnamedevemostercomosadaonome"meudominio". #nisdomainname meudominio Casoasadasejaaapresentadaacima,suaconfiguraoestcorreta. 2.DevemosagorainiciaroserviodoServidorNIS,noesquecendoqueoservioportmapdeveestarrodandoanteriormente. /etc/rc.d/init.d/ypservstart 3.DevemosagoracriarosmapasdabasededadosNIS. #cd/var/yp #make OcomandocriarodiretriomeudominioondeestaromapasdabasededadosNIS. 4.Agorainicieoservioyppasswd: #/etc/rc.d/init.d/yppasswdstart Esteserviopermitequeoclientemudesuasenhaatravsdeumamquinacliente. importantesalientarquetodavezquecriadoumnovousuriooualteradoumasenha,abasededadosdoNISdeveser atualizadaistovistoposteriormente. AquiterminaaconfiguraodoServidorNIS.Noseesqueatambmdeconfigurarosserviosportmapeypservparaserem inicializadosautomaticamentequandoamquinainicializada.

%DEBIAN%Apsdefinirmosodominionisduranteainstalaaoeodominioatravesdo/etc/defaultdomain,devemosadicionar osusuarios quedesejamoscomocomandoadduser usuario.Aseguir,devemoscarregaro ypservporlinhadecomandoe criaremososmapasdedadosatravesde: #cd/var/yp #make Editaremos/etc/default/nisparadefinirocomportamentodamaquina(servidoroucliente) #vi/etc/default/nis #/etc/defaults/nisConfigurationsettingsfortheNISdaemons. # #AreweaNISserverandifsowhatkind(values:false,slave,master) NISSERVER=master #AreweaNISclient(i.e.startypbind?) NISCLIENT=false #LocationofthemasterNISpasswordfile(foryppasswdd). #Ifyouchangethismakesureitmatcheswith/var/yp/Makefile. YPPWDDIR=/etc #Doweallowtheusertouseypchshand/orypchfn?TheYPCHANGEOK #fieldsarepassedwithetoyppasswdd,seeit'smanpage. #Possiblevalues:"chsh","chfn","chsh,chfn" YPCHANGEOK=chsh #NISmasterserver.Ifthisisconfiguredonaslaveserverthenypinit #willberuneachtimeNISisstarted. NISMASTER= #Additionaloptionstobegiventoypservwhenitisstarted. YPSERVARGS= #Additionaloptionstobegiventoypbindwhenitisstarted. YPBINDARGS= #Additionaloptionstobegiventoyppasswddwhenitisstarted.Note #thatifpissetthentheYPPWDDIRaboveshouldbeempty. YPPASSWDDARGS= #Additionaloptionstobegiventoypxfrdwhenitisstarted. YPXFRDARGS= ReiniciandooservioNISeoportmap #/etc/init.d/portmaprestart #/etc/init.d/nisrestart

ConfigurandooClienteNIS.
AconfiguraodoclienteNISsebaseianasseguintesetapas: 1.Esta primeira etapa anloga primeira do servidor, pois o cliente necessita de um domnio NIS. Voc deve editar novamenteoarquivo/etc/sysconfig/network.Vejaabaixo:

#vi/etc/sysconfig/network NETWORKING=yes FORWARD_IPV4="no" HOSTNAME="lab2.sistemasabertos.com.br" DOMAINNAME=sistemasabertos.com.br GATEWAY="10.1.0.3" GATEWAYDEV="eth0" NISDOMAIN="meudominio" Neste arquivo observamos que a mquina cliente ser a lab2.sistemasabertos.com.br, e que ela pertence ao domnio NIS "meudominio".Reinicieoservionetworkeexecutenisdomainnameparaverseasalteraestiveramefeito. 2.Editeoarquivo/etc/yp.conf #vi/etc/yp.conf #/etc/yp.confypbindconfigurationfile #Validentriesare # #domainNISDOMAINserverHOSTNAME #UseserverHOSTNAMEforthedomainNISDOMAIN. # #domainNISDOMAINbroadcast #UsebroadcastonthelocalnetfordomainNISDOMAIN # #ypserverHOSTNAME #UseserverHOSTNAMEforthelocaldomain.The #IPaddressofservermustbelistedin/etc/hosts. # ypserver10.1.0.101 Notequeestearquivoaceitavriostiposdeentrada,comvriasformasdeidentificaroservidorparaestecliente.Nestecaso, estamosutilizandoaltimaforma,queamaissimples,elembrandotambmqueoendereoIPreferentenesteclientesero endereo IP do servidor, logo este endereo apresentado no exemplo o endereo IP da mquina lab1.sistemasabertos.com.br.Umaentradainteressantedestearquivoousodopedidoviaanncio(broadcast),nestecaso vocnoprecisasaberoendereoIPdoservidor,vocprecisasaberapenasodomnioNIS,paraisto,nolugardeypserver coloqueaseguinteentradanoarquivoyp.conf: domain"meudominio"broadcast 3.ParaterminaraconfiguracodoNIS, basta inicializarmos o serviodoclienteNIS, sabemosqueo servioquegerenciao clienteNISoypbind,ento: #/etc/rc.d/init.d/portmapstart #/etc/rc.d/init.d/ypbindstart LigandoaodomnioNIS...[OK] AguardandoporumservidordedomniosemNIS:10.1.0.101

Observe que o cliente deveestar com o servio portmap rodando antes de executaro ypbind. Sea sada docomando for similarapresentadaacima,suaconfiguraoestcorreta.Reparequeoservidorencontradooservidor10.1.0.101 4.Emnossaconfiguraodaremosnfasenasincronizaodeusurioseinformaodecontasemtodasasmquinasdeum domnio NIS. Voc deve alterar a ordem depesquisa no arquivo nsswitch.conf relativo as campo passwd, groupe shadow. Vejacomodeveficaraconfigurao: passwd:nisfilesnisplus shadow:nisfilesnisplus group:nisfilesnisplus Apartirdestemomentovocconseguirefetuarlogonnamquinaclientecomumusurioquefoicriadonoservidor. Depois defuncionando o clientee servidor NIS, voc pode utilizar os programas oferecidos pelopacote yptools, dentre os maisimportantes temososcomando ypwhicheypcat.Estes comandossoutilizadosparaverificaoe teste no servidor e clienteNIS.Paralistartodososcomandos,executerpmqlyptools,porumaquestodidtica,iremosdemonstrarautilizao deapenasalguns. Oypcatpodelhemostrarquaissoosmapasqueseuservidorestarmazenando.Paraissouseocomaopox. #ypcatx Use"ethers"formap"ethers.byname" Use"aliases"formap"mail.aliases" Use"services"formap"services.byname" Use"protocols" formap"protocols.bynumber" Use"hosts"formap"hosts.byname" Use"networks"formap"networks.byaddr" Use"group"formap"group.byname" Use"passwd"formap"passwd.byname" JocomandoypwhichpodelheretornaronomedoservidorNISquesuamquinaestconfiguradaparautilizar. #ypwhich dominionis ExisteumaferramentatambmtilparaconfiguraroclienteNIS,aferramentaauthconfig.Estaferramentafazexatamenteos procedimentos dos itens de 1 a 3 explicado anteriormente, ou seja, configurar o cliente NIS para se autenticar em algum servidordarede,realizandoasalteraesnecessriasnosarquivosdeconfiguraocorrespondentes.Vejamossuaaplicao: #authconfig Asopesapresentadasnoprogramasso: Arquivo de senhas e NIS : essas opes definem que tipo de autenticao sua mquina ir usar. Se for escolhida "Arquivo de senhas" seu cliente ir consultar seus arquivos locais para realizar autenticao de usurios. Se for escolhido "NIS", ele ir ento tentar encontrar o servidor NIS que lhe for indicado para realizar a autenticao de usurios. DomnioNIS:umavezqueaopoNISfoimarcada,vocdeverentoespecificarqualserodomnioNISqueseu clientefaaparte.SemarcadooitemPedidoviaanncioquandoutilizadonoprecisoespecificaroendereoIPdo servidor,poisoclientefazumpedidoviabroadcastnarede,procurandopeloservidorNISindicado. Servidor : voc pode aqui especificar quemquina a responsvelpelo domnioNIS citadonospassosanteriores. EsseocampoondevocdevecolocaroendereoIP,ounome,damquinaqueseuservidorNIS.Asopes"usar senhasshadow"e"usarsenhasMD5"sterovalorquandoforutilizadaaopo"Arquivodesenhas".

%DEBIAN%DirecionandoparaoservidorNIS #vi/etc/yp.conf

ypserver10.1.0.13 DefinindoocomportamentodoclienteNIS #vi/etc/default/nis #/etc/defaults/nisConfigurationsettingsfortheNISdaemons. # #AreweaNISserverandifsowhatkind(values:false,slave,master) NISSERVER=false #AreweaNISclient(i.e.startypbind?) NISCLIENT=true ReiniciaroservioNISeoportmap #/etc/init.d/portmaprestart #/etc/init.d/nisrestart

AtualizandoosmapasdoNISautomaticamente
Osmapasquesocriadosnoservidor NIS,contminformaesdo sistema,como:lista de usurios, senhas, grupose etc. Deste modo, se qualquer alterao for realizada nasua relao deusurios, porexemplo, seusmapas do NIS jno iro refletiroestadoatualdoseusistema.ParaquesuabasededadosdoNISfiqueatualizadavocdeveperiodicamenteexecutar alinhadecomando"/var/yp/make".Automatizaressatarefacomocronpodelheliberaralgumtempoeevitarqueseusmapas NISfiquemdesatualizados. Paraagendaressatarefarcomocron,chameocomandocrontabcomaopoe. #crontabe Adicioneentoumalinha,relativaaessatarefa,quepodeseralgoparecidocom: 0,30****/var/yp/make Destemodo,seuservidoriratualizarseusmapasdoNISacadameiahora,demodoquenosermaisnecessrioquevoc sepreocupecomisso.Noseesqueademanterseuservidorcron(crond)sempreemexecuo,senoessatarefanoser executada.

SegurananoServidorNIS
NestetpicoveremoscomoaumentarasegurananoservidorNISatravsdealgunsarquivosdeconfigurao.ONISpode deixar o arquivo de senhas da rede acessvel virtualmente a todosos usurios da rede local e a outrasque possam estar conectadasaestarede,oquetornaosistemavulnervelaintrusos,poisestespodemfazerumarequisioaoservidorNIS pedindopelomapapasswd.byaddr.Tendoacessoaestemapa,ointrusoteremmostodasascontasesenhasdoservidor NIS,poiscomumsimplesprogramadequebradesenhaseumtimodicionrioesteintrusopoderquebrarassenhas.Para issoointrusoprecisasomentesaberonomedodomnioNISeonmeroIPdoservidorNIS. Paraconsultaromapapasswd.byaddrdoservidorbastaqueoclienteNISestejaconfiguradocorretamenteeexecutar: #ypcatpasswd main:$1$T6utdAKu$7T93GpsfcpeVcYSt7NBGy1:511:515::/home/main:/bin/bash beltrano:$1$8INDBVA7$SMcIV6G4WKOCJqLXDmXB//:505:505::/home/beltrano:/bin/bash avalia1:$1$WY6Yr2Eg$89iuEFwWEtciJoWyp1iIQ1:685:685::/home/avalia1:/bin/bash ronaldo:$1$H9BkEwgy$yDg5dfH8WQRz3bYLWXb1R/:503:503::/home/ronaldo:/bin/bash marcos:$1$BTkl.xpQ$.I1uccaR/bQBk.XVQjMnf.:512:516::/home/marcos:/bin/bash ParaalgumasversesdoNIScriadoummapaseparadoparaoarquivo/etc/shadow,nestecasoocomandodeverserypcat shadow.byname eno ypcat passwd. Observe queeste comando mostra ascontas de usurios do servidorNIS comsuas respectivassenhascriptografadas.Istocomprometeaseguranadoservidor,poisumusuriocomumprogramadequebras desenhapodefacilmentedescobrirsenhasdeoutrosusurios.ParaoLinuxoquebradesenhamaisconhecidoeutilizado John the Ripper (Vide endereo http://www.openwall.com/jonh). Uma forma de garantir uma maior segurana no servidor atravsdoarquivo/etc/ypserv.conf,estearquivotemcomoobjetivogarantirocontroledeacesso,paraissoomesmocontm uma lista de regras necessria para determinar quais mquinas podem acessar os mapas do servidor NIS. Vejamos um exemplodestearquivo: #Someoptionsforypserv.Thisthingsareallnotneeded,if #youhaveaLinuxnet. dns:no #Thefollowing,whenuncommented,willgiveyoushadowlikepasswords. #NotethatitwillnotworkifyouhaveslaveNISserversinyour #networkthatdonotrunthesameserverasyou. #Host:Map:Security:Passwd_mangle # #*:passwd.byname:port:yes #*:passwd.byuid:port:yes #Noteverybodyshouldseetheshadowpasswords,notsecure,since #underMSDOGeverbodyisrootandcanaccessports<1024!!! *:shadow.byname:port:yes *:passwd.adjunct.byname:port:yes #Ifyoucommentoutthenextrule,ypservandrpc.ypxfrdwill #lookforYP_SECUREandYP_AUTHDESinthemaps.Thiswillmake #thesecuritycheckalittlebitslower,butyouonlyhaveto #changethekeysonthemasterserver,nottheconfigurationfiles #oneachNISserver. #IfyouhavemapswithYP_SECUREorYP_AUTHDES,youshouldcreate #aruleforthemabove,that'smuchfaster. *:*:none As linhas que comeam com o caractere # so consideradas comentrios. Uma linha deste arquivo pode ter o seguinte formato: opo:[sim|nao]

Alinhadestearquivoaindapodeserumaregradeacesso: host:mapa:segurana:camposeguro Ondeovalordecamposeguropodeseryesouno.Seocampoforhabilitado,sertestadoaseguranadocampo,ouseja,o camposersubstitudoporum"x"seaverificaodaportarevelarqueexisteumarequisioquenopossuaosprivilgios necessrios. Asseguintesopessosuportadasporestearquivo:

dns
OservidorNISirconsultaroservidordenomesparaosnomesdehosts,quandoaresoluodenomesno conseguidaatravsdosmapashosts.*.Vocpodesobrescreverestopocomaopo"dns"atravsdalinhade comando.Aopo"no"noirsobrescreveraopo"dns".

xfr_check_port
Osvaloresparaestaentrada"yes"(ativa),"no"(inativa).Comestaopoativa,oServidorNIStemquefuncionarcom umaportainferioraporta1024.Estaopoativaporpadro.Asprximasentradasdefinemoscamposde descriesparaoacesso.Estasentradaspodemserobservadanoarquivo: #Host :Map:Security:Passwd_mangle # #*:passwd.byname:port:yes #*:passwd.byuid:port:yes Nesteexemploobservamosqueexistem4campos,estescamposestoexplicadosaseguir:

host
utilizadoparadefinirquaishostspodemteracessostabelasdeconsultadoNIS.Logo,vocdevepassarcomo parmetrooendereoIPdeumamquinaespecficaouoendereoIPdeumarede.Vejamosumexemplo:10.1.= 10.1.0.0/255.255.0.0.

map
Defineonomedomapa,umasteriscoidentificatodososmapas.

security
Estaopoutilizadaparadefinirpolticasdeacesso.Osparmetrossuportadospodemser:nonepermitetotal acesso,estopoativadaporpadro.portpermiteacessosomentesearequisiovierdeportasinferioresa portas1024.denynopermiteacessoparaestemapa.DESrequereautenticaoDES.Nomomentoestaopono suportadapelabibliotecalibce,portanto,nodeveserutilizada.

Passwd_mangle
Estaentradadefinequalcamposermonitoradoquenestecasoocampodesenha.Comaopo"yes"estecampo monitorado,comaopo"no"elenomonitorado. OutraformaderestringiracessoaoservidorNISatravsdoarquivo/var/yp/securenets.Esteomeiomaisfcileeficientede garantiraautenticaodeusurios.EstearquivopermitedefinirmosquaismquinasouredepodemfazerusodoservidorNIS. EstearquivoporpadropermitequetodosacessemoservidorNIS.Vejamos: #Alwaysallowaccessforlocalhost 255.0.0.0127.0.0.0 #Thislinegivesaccesstoeverybody.PLEASEADJUST! 0.0.0.00.0.0.0 Esteexemploapresentadojvemprconfigurado,observequeasegundaentradadefineacessoparatodos.Pararestringiro acessoparaarede10.1.0.0/255.255.0.0substituaasegundaentradapara: 255.255.0.010.1.0.0 %DEBIAN%#vi/etc/ypserv.securenets 255.255.0.010.1.0.0

LinksIndicados
http://www.linuxnis.org o PginaoficialdoprojetoLinuxNIS/NIS+.umapginamantidaporThorstenKukuk,possuivrias documentaes,inclusiveoComoFazer(HowTo)oficialdoNIS.Tambmmantmaversoatual(noformato *.tar.gz)dasfontesdoNIS/NIS+. http://www.linuxnis.org/nishowto/HOWTO/index.html o HowTo[comofazer]oficialdoNIS.Nestedocumentovocpoderencontrarinformaesdecomoinstalare configurarseuservidorNIS. http://www.eng.auburn.edu/users/doug/nis.html o UmdocumentodeDougHughessobrecomomelhoraraseguranadeNIS.Umconjuntodeprocedimentos adotadosnaEscoladeEngenhariadaUniversidadedeAuburnparamelhoraraseguranaemseuambiente NIS. http://www.linuxnis.org/doc/nis.debian.howto o Comofazerdonisnadistribuiodebian.Documentoquerelataospassosparaconfiguraotantodoservidor quantodoclienteNISnadistribuioDebian. http://www.linuxnis.org/doc/secure_networking.ps o DocumentoarespeitodeseguranaemservidoresNIS. http://www.linuxnis.org/doc/NISPlus.ps o DocumentoempostscriptquetrazinformaesdetalhadassobreoNIS+. http://www.openldap.org o SiteoficialdogrupoquemantmodesenvolvimentodoservioLDAP.Nessesitevocpodeencontrar informaesdiversasetambmumGuiaparaoadministrador. http://www.linuxdoc.org/HOWTO/LDAPHOWTO.html o DocumentoHowTo(ComoFazer)referenteaoLDAP.Nestedocumentovocpodeencontrarinformaesde configuraoeimplementaodoLDAP. http://www.linuxdoc.org/HOWTO/LDAPImplementationHOWTO o DocumentoquemostracomooLDAPpodeinteragircomoutrasferramentascomoPAMeRadius. http://www.nfsv4.org o Sitedoprojetodedesenvolvimentodaverso4doprotocoloNFS.NestesitevocpodeencontraraRFCque explicaascaractersticasdessanovaversodoNFS.

Terminologiautilizadanestecaptulo
Anncio Tambmconhecidocomobroadcast.umprocedimentodecomunicaoondeumcomputadorlanaumamensagem destinadaparatodososcomputadoresdarede. dbm umformatohashingdearquivo.PossuiumaversoGNUdenominadagdbm.DomnioNIS:nomenicoqueidentifica umconjuntodeclienteseumservidorquecompartilhaminformaesNIS. Hashing oformatodearquivobinrioutilizadopeloNISemseusmapas,baseadoemumaestruturabaseadaemchave associadaavaloresepermiteumaconsultabastanteeficiente. LDAP oacrnimodeLightweightDirectoryAccessProtocolumprotocolodefuncionalidadessemelhanteaoNIS,porm mantmsuasinformaesemumaestruturadediretrios. Mapas soosarquivosconvertidosparaformatohashemantidospeloservidor,formandoabasedeconsultadoNIS. NFS AcrnimodeNetworkFileSystemSistemadeArquivoemRede,quepermitecompartilharseusarquivospara clientes. NIS+ aversoatualizadadoNISpelaempresaSunMicrosystems.PossuimaisfuncionalidadesqueoNISdoqual baseado. NIS oacrnimodeNetworkInformationServer,ouServiosdeInformaesdeRede,desenvolvidopelaempresaSun MicrosystemsecomversesGNUdisponveisparaLinux,quepermitemqueinformaesdeumservidorsejam compartilhadascomclientesdarede,talcomosenhasdeusurios. Portmap ServioquerodaescutandotipicamenteaportaTCP111,obtendodeclientesRPCsolicitaesparaexecutarum determinadoprocedimentoremotoporumnmerodeidentificaooportmapentoforneceaoclienteRPCumaporta TCPondeesteprocedimentodisponibilizado.Emoutraspalavras,oportmapmapeianmerosdeprocedimentos remotosportasTCP. RPC oacrnimoparaRemoteProcedureCall,ouChamadadeProcedimentoRemoto.umatecnologiaquetemanalogia chamadadeprocedimentosemlinguagensdeprogramao,pormachamadarealizadadeumclienteparaum servidorremoto.CadaRPCpossuiumnmerodeidentificaonico(veja/etc/rpc).YellowPages:umamarca registradapelaempresaBellSouthquedenominaas"pginasamarelas"deumalistatelefnica. ypbind oclienteNIS,quepermitequeaestaoclientepossaseconectar(bind)eutilizarasinformaescompartilhadas peloservidorNIS. ypserver oservidorNIS,quecontrolaainteraoedisponibilizainformaesderedeparaosclientesNIS.