̾??
ypserv
— NIS
?ǡ????١?????????
ypserv
[-n
]
[-d
] [-p
path]
NIS ??ʣ???? UNIX ?١????Υޥ????֤?
???̤??????ե??????ν???????ͭ???뤿???? RPC
?١????Υ????ӥ??Ǥ??? NIS ?Ǥϡ?
/etc/hosts, /etc/passwd,
/etc/group
?Ȥ??ä????ۤȤ??ɤδĶ??????ˤ˹??????????ե???????ʣ???Υ??ԡ???
?????ƥ??????Ԥ?????????ɬ?פ?̵????
?????Υ??롼?פǰ??ս??ǹ?????ǽ??
1
?ȤΥǡ???????ͭ???뤳?Ȥ??Ǥ??ޤ???
ypserv
?桼?ƥ????ƥ???
NIS ?ɥᥤ??
???Υ??饤?????ȥ????ƥ??? NIS
?ǡ????١????????ۤ??륵???ФǤ??? NIS
?ɥᥤ?????Υ??饤?????Ȥ?
domainname(1)
???ޥ??ɤ????Ѥ??? ypserv
???????ӥ????Ƥ????ɥᥤ??̾?????ꤷ?ʤ????Фʤ??ޤ?????
?ޤ???ñ?? NIS
?ɥᥤ??????ʣ???Υ????Ф?¸?ߤ????뤿?ᡢ
???饤?????Ȥϡ?
ypbind(8)
???¹Ԥ??????????Υ????Ф???³????ɬ?פ⤢???ޤ???
ypserv
?ˤ??ä????ۤ??????ǡ????١?????
/var/yp/[domainname]
?˳?Ǽ?????ޤ??? ?????? domainname
?ϥ????ӥ??????????ɥᥤ??̾?Ǥ???
?????ͤʥǥ??쥯?ȥ????͡??ʥɥᥤ??̾?ˤ?ʣ??¸?߲?ǽ?Ǥ?????
ñ???? ypserv
?ǡ??????ˤ????ƽ?????ǽ?Ǥ???
?ǡ????١??? (?⤷???Ϥ??Ф???
?ޥå?
?ȸƤФ??ޤ?)?ϡ??͡??ʥ????ƥ??ե??????????Ȥ???
/var/yp/Makefile
?ˤ??äƺ????????ޤ???
?ǡ????١????ե???????
db(3)
?ե????ޥåȤǤ??ꡢ?쥳???ɿ???¿???Ȥ???®?˸?????ǽ?Ǥ???
FreeBSD
?Ǥϡ??????????ƥ??Τ??ᡢ?ޥåפ??ɤ߽?
root ?Τ߲?ǽ?Ǥ???
????Ū?ˤϡ????Τ褦?????¤ϥѥ???ɥޥåפˤΤ?ɬ?פǤ?????
¾?Υޥåפ????Ƥ?ï?⤬?ɤ???¾?Υե??????˽Ƥ????ޤ??Τǡ?
?????ͤ??????ϳ??ǤϤʤ???????Ū?Ǥ????ȹͤ??????Ƥ??ޤ???
ypserv
?桼?ƥ????ƥ???
/etc/rc.conf
?ˤ?ͭ???ˤ????Ƥ?????????
/etc/rc.d/ypserv
???鵯ư?????ޤ???
FreeBSD
?Υѥ???ɥǡ????١????? NIS
?ˤ??ä????ۤ????????ˤ????Ĥ??????꤬?????ޤ???
FreeBSD
???̾?Ź沽?????ѥ???ɤ???root
?Τ??ɤ߽?ǽ??
/etc/master.passwd
?ˤΤ߳?Ǽ???ޤ??? ???Υե???????
NIS
?ޥåפˤ????ȡ??????????ƥ??????????ˤ??Ƥ??ޤ??ޤ???
???????н褹?뤿???ˡ?
FreeBSD ?? ypserv
??
master.passwd.byname ??
master.passwd.byuid
?Υޥåפ????̤???ˡ?ǰ????ޤ???
?????Ф??????? 2
?ĤΥޥåפؤΥ????????????????դ????ȡ?
?ḵ?? TCP
?ݡ??Ȥ??????å??????ݡ????ֹ椬 1023
?????礭???????ˤ? ???顼???֤??ޤ???
?????ѥ桼???Τ? 1024 ???꾮???? TCP
?ݡ??Ȥ˥Х????ɤ??????????????Ƥ??뤿?ᡢ
?????ФϤ????????Ѥ????ø??桼?????????ᤫ?ݤ???Ƚ???Ǥ??ޤ???
???ø??桼???????????Ƥ????ϵ??ݤ????ޤ???
?ޤ??? FreeBSD ??ɸ?? C
?饤?֥???????
getpwent(3)
?롼?????ϡ??????ѥ桼???????Ѥ????????ˤ?
master.passwd.byname ??
master.passwd.byuid
?Υޥåפ????ǡ????????????ޤ???
?̾??Υ桼???????????Υ롼???????뤷???????ˤϡ?ɸ????
passwd.byname ??
passwd.byuid
?Υޥåפ˥??????????ޤ??????Ԥ? 2
?ĤΥޥåפ?
/var/yp/Makefile ?ˤ??ꡢ
master.passwd
?ե????????ѡ????????ѥ???ɥե??????ɤ????????????ˤ????????????ޤ??Τǡ?
???ø??桼?????Ϥ??Ƥ??????Ǥ???
???Τ褦?? master.passwd
?ǡ????١????Υ????ɥ??ѥ???ɵ?????
NIS ?ˤ????Ƥ????????ޤ???
ypinit(8)
???????ʥ??????ץȤǤ??ꡢ NIS
?Υޥ????????Ф????ӥ??졼?֥????Ф??????ν????ˤʤ??ޤ???
NIS
?Ķ??ˤƥ????ɥ??ѥ???ɤ????Ѥ??뤳?Ȥ˵??????????꤬
2 ?Ĥ????ޤ???
?桼???ϼ??Τ??Ȥ˵????Ĥ??ͤФʤ??ޤ?????
- ‘TCP ?ݡ??Ȥ? 1024 ???꾮????’
?Ȥ????ƥ??Ȥ??????˴?ñ?Ǥ??뤿?ᡢ
Ʊ???ͥåȥ?????Ρ?̵???¤Υ???????????ǽ?ʥޥ????????ĥ桼????
???????ˤ???????ǽ?Ǥ? (UNIX
?١????ǤϤʤ????ڥ졼?ƥ??????ƥ????¹Ԥ????ޥ????Ǥ???ǽ?Ǥ?)??
- FreeBSD
?????ƥ??????ɥ??ѥ???ɤݡ??Ȥ??ʤ???
FreeBSD ???饤??????
(?ۤȤ??ɤ??????Ǥ?)
???Ф??륵???Фˤ??褦?Ȥ??Ƥ????????ˤϡ?
/var/yp/Makefile ??
UNSECURE=True
?????ȥ??Υ??????Ȥ???
?????ɥ??ѥ???ɤ?̵???ˤ???ɬ?פ??????ޤ???
?????ˤ??ꡢ passwd.byname ??
passwd.byuid
?Υޥåפˡ???
FreeBSD ???饤?????Ȥ? NIS
???̤??ƥ桼??ǧ?ڤ?
?Ԥ???????ɬ?פȤ??롢
ͭ???ʰŹ沽???줿?ѥ???ɥե??????ɤ??ޤޤ????褦?ˤʤ??ޤ???
????Ū?ˡ????⡼?ȥ桼???ϡ??ɥᥤ??̾???ΤäƤ????????С?RPC
?? ypserv
??ȯ?Ԥ??? NIS
?ޥåפ????Ƥ???????ǽ?Ǥ???
???Τ褦?ʸ??¤?̵???ȥ????????????ɤ??????ˡ?
ypserv
?ˤ? securenets
?ȸƤФ??롢?????ۥ??Ȥν????ˤΤߥ????????????¤??뵡ǽ???????ޤ???
??ư???ˡ? ypserv
?? securenets
???????ե????? /var/yp/securenets
?????ɤ߹??ߤޤ?
(???Ҥ????褦?ˡ????Υѥ??ϡ?
-p
???ץ??????ˤ??äƻ??ꤹ???ѥ??ˤ??ä??Ѳ????뤳?Ȥ????դ??Ʋ?????)??
???Υե??????ϡ??????ˤ??äƶ??ڤ??????ͥåȥ???ȥͥåȥ???ޥ????????ʤ?
?????ȥ???ʣ???ޤߤޤ??? “#”
?????Ϥޤ??Ԥϥ??????Ȥȸ??ʤ????ޤ???
securenets ?ե????????????ʲ??˼????ޤ?:
# allow connections from local host -- mandatory
127.0.0.1 255.255.255.255
# allow connections from any host
# on the 129.168.128.0 network
192.168.128.0 255.255.255.0
# allow connections from any host
# between 10.0.0.0 to 10.0.15.255
10.0.0.0 255.255.240.0
ypserv
?????????Υ롼????Ŭ?礹?륢?ɥ쥹?????????????????ä??????ˤϡ?
?̾??̤????????????ޤ???
???ɥ쥹???롼????Ŭ?礷?ʤ??????ˤϡ?????̵?뤵?졢?ٹ𤬥????????ޤ???
/var/yp/securenets
?ե????뤬¸?ߤ??ʤ??????ˤϡ?
ypserv
?????ƤΥۥ??Ȥ???????³???????ޤ???
ypserv
?桼?ƥ????ƥ??ϡ?Wietse Venema ??
tcpwrapper
?ѥå??????ݡ??Ȥ??ޤ???
?????ˤ??ꡢ?????????????Τ????ˡ?
?????ƥ??????Ԥ? tcpwrapper ???????ե?????
(/etc/hosts.allow ??
/etc/hosts.deny) ??
/var/yp/securenets
?????????˻??ѤǤ??ޤ???
??:
?ɤ????Υ????????????⤽???ʤ??Υ????????ƥ??????ޤ?????
?ø??ݡ??ȥƥ??Ȥ?Ʊ?ͤ?
“IP ???? (spoofing)”
?????ˤ?̵?ϤǤ??뤳?Ȥ?
???դ??Ʋ???????
???ΥС????????? ypserv
?? NIS
v1
???饤?????Ȥ??Ф??Ƥ??????٥????ӥ???ǽ?Ǥ???
FreeBSD ?? NIS ?????? NIS v2
?ץ??ȥ????Τߤ????Ѥ??ޤ?????
¾?μ????ǤϸŤ??????ƥ??ȤΥХå???ɥ????ѥ??ӥ??ƥ??Τ?????
v1 ?ץ??ȥ????⥵?ݡ??Ȥ??Ƥ??ޤ???
???Τ褦?ʥ????ƥ????????Ƥ???
ypbind(8)
?ǡ??????ϡ??ºݤˤϤ????餯???פʤΤǤ?????
NIS v1
?????Ф˥Х????ɤ??褦?Ȥ??ޤ?
(?????ơ?v2
?????Ф????????????????ä??Ȥ??Ƥ⥵???Ф?õ????????
?֥????ɥ??㥹?Ȥ?³???ޤ?)??
???ΥС????????? ypserv
?Ǥ??̾??Υ??饤?????ȤθƤӽФ??ϥ??ݡ??Ȥ????Ƥ??ޤ?????
v1 ?ޥå?ž?????ϰ????ޤ?????
???ʤ??????Ť? NIS
?????ФȤȤ??ˡ??ޥ????⤷???ϥ??졼?֤Ȥ??ƻ??Ѥ??뤳?ȤϤǤ??ޤ?????
?????ʤ??Ȥˡ??????ǤϤ????ͤʥ????Ф?¸?ߤ??ʤ??Ǥ??礦??
ʣ???Υ????Ф?¸?ߤ????ɥᥤ???ˤ????ơ?
?????Ф? NIS
???饤?????ȤǤ⤢???????ˤϡ?
ypserv
?μ¹Ԥ????դ?ʧ??ɬ?פ??????ޤ???
?Х??????????֥????ɥ??㥹?Ȥ????ƥ????д֤ǥХ????ɤ??????ΤǤϤʤ???
?????Ф???ʬ???Ȥ˥Х????ɤ??뤳?Ȥϰ???Ū?ˤ??ɤ??ͤ??Ǥ???
???륵???Ф???????¾?Υ????Ф????Υ????Ф˰?¸???Ƥ????????ˤϡ?
??̯?ʾ㳲?????????ޤ?
(???̤Ȥ??????ƤΥ??饤?????Ȥ??????ॢ???Ȥ???
¾?Υ????Ф˥Х????ɤ??褦?Ȥ??ޤ??????ٱ???̵???Ǥ?????
?????ФϤޤ??ߤ??˥Х????ɤ??褦?Ȥ??ޤ??Τǡ??㳲?ϻĤ??ޤ?)??
?????Υ????Ф˶???Ū?˥Х????ɤ????뤿???ξܺ٤?
ypbind(8)
?ޥ˥奢???ڡ????Ȥ??Ʋ???????
?ʲ??Υ??ץ???????
ypserv
?ˤƥ??ݡ??Ȥ????Ƥ??ޤ???
-n
- ???Υ??ץ???????
ypserv
??
hosts.byname ??
hosts.byaddress
?Υޥåפ??Ф??? yp_match
??????ˡ??????ޤ???
?ǥե????ȤǤϡ?
ypserv
??Ϳ?????줿?ۥ??ȤΥ????ȥ????ۥ??ȥޥå????˸??դ??????ʤ??ä??????ˤϡ?
???顼???֤??????ʾ??ν??????Ԥ??ޤ?????
-n
?ե饰?????ꤹ???ȡ?
ypserv
?Ϥ????ʤ????????Ԥ??ޤ???
?????ˤ??????᤺?ˡ??ۥ???̾?⤷???ϥ??ɥ쥹??
DNS ?͡??ॵ???Ф??䤤???碌??
???褷?褦?Ȥ??ޤ???
?䤤???碌???????????ȡ? ypserv
?ϵ??Υǡ????١????쥳???ɤ??????????????饤?????Ȥ??֤??ޤ??Τǡ?
???饤?????Ȥ? yp_match
?????????????褦?˸????ޤ???
???λ??ͤ? SunOS 4.1.x
?Ȥθߴ????Τ??????Ѱդ????Ƥ??ޤ???
???Υ????ƥ???ɸ?? C
?饤?֥????Ǥϥ???Ф????äƤ??ꡢ
?ۥ???̾?ȥ??ɥ쥹?β????Τ?????
NIS ?˰?¸???Ƥ??ޤ?????
FreeBSD ?Υ???Ф? DNS
?ؤ??䤤???碌??ľ?ܹԤ??ޤ??Τǡ?
FreeBSD ?Ǥ??? NIS
???饤?????Ȥ??Ф??ƤΤߥ????ӥ??????????ϡ?
???Υ??ץ???????ͭ???ˤ???ɬ?פϤ????ޤ?????
-d
- ?????Ф??ǥХå??⡼?ɤǼ¹Ԥ??ޤ???
?̾?
ypserv
?ϰ۾????Υ??顼
(??????????ȿ???ե????륢??????????) ?Τߤ?
syslog(3)
??ǽ?????Ѥ??????𤷤ޤ???
?ǥХå??⡼?ɤǤϡ??????Фϼ??Ȥ??Хå????饦???ɤǤϼ¹Ԥ?????
?ꥯ?????Ȥ??????뤿?Ӥˡ?
???֤?ɽ???ɲäΥ??å???????ɸ?२?顼???Ϥ?ɽ?????ޤ???
?ޤ????ǥХå??⡼?ɤǼ¹Ԥ??Ƥ????֤ϡ??̾??Ȥϰۤʤꡢ
yp_all ?????????? DNS ???????????? ypserv
???֥ץ??????????????ޤ???
(???????ν?????¿???ξ??細λ?ޤǤ˻??֤??????뤿????
???֥ץ??????ˤ??????????졢
?ƤǤ??륵???Ф??̤??????????Ǥ????褦?ˤʤäƤ??ޤ?)??
?????ˤ????ǥХå??ġ????ˤ??륵???ФΥȥ졼?????ưפˤʤ??ޤ???
-p
path
- ?̾?
ypserv
?? NIS
?ޥåפ? /var/yp
?ʲ??ˤ??????Τ????ꤷ?ޤ???
-p
?ե饰?????Ѥ????̤? NIS
?롼?ȥѥ????????Ǥ??ޤ??Τǡ?
?????ƥ??????Ԥϥե????륷???ƥ??????̤ξ????˥ޥåץե?????????ư?Ǥ??ޤ???
??Ϣ?ե?????
- /var/yp/[domainname]/[maps]
- NIS ?ޥå?
- /etc/nsswitch.conf
- ̾???ڤ??ؤ??????ե?????
- /var/yp/securenets
- ?ۥ??ȥ????????????ե?????
Bill Paul
⟨wpaul@ctr.columbia.edu⟩
???ΥС????????? ypserv
???ǽ????о줷???Τ? FreeBSD
2.2 ?Ǥ???