Nimeteenuse näited DNS DNS NIS NIS+ LDAP JNDI Hierarhiline Interneti nimede süsteem Põhilised päringud: Arvuti nime järgi IP aadressi leidmine Domeeni meiliserveri leidmine Arvuti IP aadressi järgi nime leidmine Tsoon ühe serveri poolt teenindatav alampuu Spetsiaalsed domeenid in-addr.arpa ja ip6.arpa IP-aadressi järgi hierarhiate jaoks MEELIS ROOS 1 MEELIS ROOS 2 DNS: serverite dubleerimine DNS ressursikirjete tüüpe Iga domeeni serverid on dubleeritud Primaarne server siit muudetakse andmeid Sekundaarsed serverid Tsooni ülekanne notify Dünaamiline uuendamine A IPv4-aadress AAAA IPv6-aadress CNAME arvuti alias-nimi PTR IP-aadressile vastav nimi MX postivahetusserver TXT suvaline tekstikirje HINFO info arvuti kohta NS nimeserverikirje alamdomeeni kohta SOA tsooni kirjeldus Puhverserverid Päringuvastuste globaalne TTL (time-to-live) MEELIS ROOS 3 MEELIS ROOS 4
DNS ressursikirjete näiteid DNSSEC news.ut.ee. IN CNAME kadri.ut.ee. kadri.ut.ee. IN A 193.40.5.94 kadri.ut.ee. IN AAAA 2001:bb8:2002:... ut.ee. IN NS kadri.ut.ee. ut.ee. IN NS madli.ut.ee. ut.ee. IN MX 10 sun5.it.da.ut.ee. ut.ee. IN SOA kadri.ut.ee. hostmaster.kadri.ut.ee. ( 2005031500 ; serial 36000 ; refresh (10h) 1000 ; retry interval (16m40s) 3600000 ; expire time (5w6d16h) 86400 ) ; default TTL (1d) Protokollilaiendused turvalisuse garanteerimiseks Tsoonide signeerimine ja kirjete signatuurid Kaitseb vastuste võltsimise vastu Krüptimist ei tehta, DoS vastu ei kaitse Usaldatud ankur (ankrud), sertifikaadiahel nendeni resolver kontrollib MEELIS ROOS 5 MEELIS ROOS 6 DNSSEC ressursitüübid Multicast DNS CERT sertifikaadid SIG, RRSIG signatuurid (KEY), DNSKEY võtmed TSIG, TKEY transaktsiooni signatuur ja võti DS signeerija delegeerimine NSEC, NSEC3 "next secure", kirje puudumise tõestamiseks Kasutamiseks kohtvõrgus ilma välise ühenduseta Arvutite avastamiseks Teenuste avastamiseks Nn. zeroconf Iga arvuti on DNS server (UDP port 5353) Domeen local Iga masin saab publitseerida ka oma teenuste infot Näiteks päringud _workstation._tcp.local, _services._dns-sd._udp.local Näiteks vastus PTR rhn [00:03:47:a4:64:d5]._workstation._tcp.local MEELIS ROOS 7 MEELIS ROOS 8
NIS NIS tabelid Network Information System Suni vana standard Unixite vahel süsteemse info levitamiseks Lame nimeruum, 1 domeen Domeen sama autentimisinfot kasutavate masinate hulk Domeenis on primaarne server ja sekundaarsed Andmete muutmine käib peaserveris, sekundaarsed hoiavad koopiat ja jagavad seda Kliendid esitavad üle võrgu serverile getpwent() jms päringuid Protokollid kasutavad kaugprotseduure (SunRPC) Turvalisust eriti polegi passwd.byname, passwd.byuid group.byname, group.byuid publickey.byname hosts.byname hosts.byaddr mail.byaddr mail.aliases services.byname, services.bynumber rpc.byname, rpc.bynumber protocols.byname, protocols.bynumber networks.byname, networks.byaddr netmasks.bymask, netmasks.byaddr ethers.byname, ethers.byaddr MEELIS ROOS 9 MEELIS ROOS 10 NIS+ NIS+ tööpõhimõte NIS edasiarendus (sisuliselt hoopis uus süsteem) Domeenid on hierarhilised Igal domeenil on endiselt primaarne ja sekundaarsed serverid Alamdomeenidel on võimalik erinev administratiivne alluvus Lisatud turvalisus! Domeenide hierarhias ja tabelites saab kehtestada juurdepääsuõigusi Endiselt saab kasutada lisaks süsteemsetele ka kasutaja defineeritud tabeleid Kasutatakse turvalisi kaugprotseduure (Secure RPC) krüptimise ja iga päringu autentimisega Krüptimiseks DES, autentimiseks Diffie-Hellmanni võtmevahetus Kliendid tunnevad serverit ja server kliente (hostivõtmete abil) Kasutaja logib klientmasinasse sisse nime ja parooliga Kasutajal on ka NIS+ parool (enamasti sama, mis harilik parool) NIS+ paroolist tuletatakse DES võti ( 40 bitti entroopiat) Avalikust NIS+ tabelist saadakse oma Diffie-Hellmanni võtme krüptitud salajane osa See krüptitakse lahti ning selle abil saadakse juurdepääs NIS+ serverile (saab oma parooli vahetada jms) MEELIS ROOS 11 MEELIS ROOS 12
NIS+ objektid NIS+ juurdepääs Kataloog võimaldab moodustada domeenide hierarhiaid org_dir administreerimisandmete kataloog groups_dir grupikuuluvusinfo kataloog Tabel hoitakse kataloogides, kasutatakse andmete hoidmiseks Grupp juurdepääsu gruppide info hoidmiseks, hoitakse domeeni groups_dir kataloogis Subjektid: tegijad (kasutajad, arvutid), grupid Juurdepääs määratakse subjektikaupa, igale kirjele saab panna oma pääsuõigused world kõik autenditud kasutajad nobody nii autenditud kui autentimata kasutajad Õigusi saab määrata omanikule, grupile, world ile ja nobody le Viide NIS+ nimeruumis otseühenduste loomiseks Kirje tabeli/kataloogi kirje Privaatne sisemiseks kasutamiseks MEELIS ROOS 13 MEELIS ROOS 14 LDAP LDAP puu näide X.500 nimed, näiteks dc=ut,dc=ee,ou=people,cn=mroos /C=EE/O=AS Sertifitseerimiskeskus/CN=Juur-SK Otsida saab objekti suvalise atribuudi järgi LDAP skeem kirjeldab kasutatavad objektiklassid ja atribuudid Näiteks: UNIXi kasutajainfo Windowsi kasutajainfo (Active Directory info) X.509 sertifikaadid ja tühistusnimekirjad Replitseerimine Serveri ja kliendi vahelise ühenduse turvamine SSL abil c=us o=tartu Ülikool ou=mt c=ee o=esteid cn=meelis Roos MEELIS ROOS 15 MEELIS ROOS 16
JNDI JNDI API Java Naming and Directory Interface Pole eraldi nimeteenus, vaid Java liides (javax.naming) mingi tegeliku nimeteenuse realisatsioonini (näiteks LDAP, DNS, NIS, NDS, CORBA COS, RMI register, Windowsi register, failisüsteem) Nimede kontekstid ja alamkontekstid (ligikaudu vastav LDAP puule) Context, SubContext Kõik nimed on suhtelised konteksti suhtes InitialContext void bind(string stringname, Object object) void rebind(string stringname, Object object) Object lookup(string stringname) void unbind(string stringname) void rename(string stringoldname, String stringnewname) NamingEnumeration listbindings(string stringname) NamingEnumeration list(string stringname) MEELIS ROOS 17 MEELIS ROOS 18