���� ���� ����

8. NIS ���� �����ϱ�

8.1 ���� ���α׷� ypserv

�� ������ "ypserv" NIS ������ ���ÿ� ���ؼ��� ����Ѵ�.

NIS ���� ����Ʈ����� �������� ���� �� �ִ�:

Site            Directory                       File Name

ftp.kernel.org  /pub/linux/utils/net/NIS        ypserv-1.3.6.tar.gz

�������� http://www.suse.de/~kukuk/linux/nis.html ���� �� ���� ������ ���� �� �ִ�.

������ �¾��� �������� NIS�� NYS��� ����.

ypserv�� makedbm ���α׷��� ��� ���� ����Ʈ��� ���� ���϶�. securenet ���� Ȥ�� tcp_wrapper�� ����ϱ� ���ؼ� ypserv�� ������ �� �ִ�. tcp_wrapper�� ���� �� �����ϳ�, ���� �̵��� �װ��� �̿��ϴ� �� �־� ������ ����Ų��. �׸��� tcp_wrapper�� ���� � ������ �޸� ����� �� ����ų �� �ִ�. ���� �������� tcp_wrapper�� ���� ������ �� ypserv�� �� ���� ����ų ���, securenet ������ �̿��Ͽ� �ٽ� �װ��� ������ �϶�. ypse rv --version ������ �������� � ������ ������ �ִ��� ������ �� ���̴�.

�������� ������ master�� ����ϰ� �ִٸ�, NIS�� ��� �����ϰ� �ϱ� ���� �� �� ������ �䱸�� �������� �����ϰ�, /var/yp/Makefile�� ��� rule �� ���� ������ ��Ʈ������ �߰��ϰų� Ȥ�� �����϶�. �������� �׻� Makefile �� ���� ������ �պκ��� �ɼǵ��� �����ؾ� �Ѵ�.

ypserv 1.1 �� ypserv 1.2���̿��� �ϳ��� ū ��ȭ�� �־���. ���� 1.2������ �� ���� �ڵ���� ij�����ȴ�. �̰��� �������� ���ο� map�� ���鶧, �׻� -c �ɼ� ���� makedbm�� ȣ���ؾ��Ѵٴ� �ǹ��̴�. �������� ypserv 1.2Ȥ�� �� ���Ĺ��� ������ ���ο� /var/yp/Makefile�� ����ϴ��� �ƴϸ�, Makefile���� m akedbm�� �ϴ� �κп� -c �÷��׸� �߰��� ����Ѵ�. �̷��� ���� ������, ypser v�� ��� ������ map�� ����ϰ� �Ǿ� ������Ʈ�� map�� ������� ���� ���̴�.

���� /var/yp/securents �� /etc/ypserv.conf ������ �ۼ��ض� . ���� ���� ������ ���Ͽ�, �޴��� ������ ypserv(8)�� ypserv.conf(5) �� ���� �϶�.

portmapper (portmap(8))�� ���ư��� �ִ� ���� Ȯ���϶�. �׸��� ������ yp serv�� �����϶�. ����

        % rpcinfo -u localhost ypserv

�� �����ϸ� ������ ����� ����� ����ؾ� �Ѵ�.

        program 100004 version 1 ready and waiting
        program 100004 version 2 ready and waiting

"version 1" ������ ypserv�� ������ �������� confiuration�� ���� ���� �� �� �ִ�. �̰��� �������� ������ SunOS 4.x�� Ŭ���̾�Ʈ�� ���� �ʿ��ϴ�.

���� NIS (YP) �����ͺ��̽��� ��������. master�󿡼�, ������ �����϶�.

        % /usr/lib/yp/ypinit -m

slave���� ypwhich -m ������ �۵��ϴ��� Ȯ���϶�. �̰��� ������ �� slave�� ���� ������ �����ϱ����� NIS Ŭ���̾�Ʈ�μ� configure�Ǿ� �ϴ� ���� �ǹ��Ѵ�. ���� ������ ȣ��Ʈ�� NIS slave�� �ǵ��� �ν����Ѵ�.

        % /usr/lib/yp/ypinit -s masterhost

���� �����п��� � �� ū ������ �ִٸ�, ���� �ٸ� xterm���� ����� ��� �� ypserv�� ypbind�� ������ �� �ִ�. ������� ����� �����п��� ������ �߸��Ǿ������� �����ش�.

map�� ������Ʈ�� �ʿ䰡 �ִٸ�, NIS master�� /var/yp ���丮���� make�� ���ش�. �̰��� �ҽ� ������ ���ο� ���̸� ���Ӱ� ������Ʈ�� ���� ���̰�, slave �����鿡�� ���ϵ��� ������ ���̴�. map�� ������Ʈ �ϴ� �� ypinit�� ������� ����.

*slave ��������* ��Ʈ�� crontab�� �ۼ��ϱ⸦ ���Ѵٸ� ���� ���ε��� �߰��϶�.

        20 *    * * *   /usr/lib/yp/ypxfr_1perhour
        40 6    * * *   /usr/lib/yp/ypxfr_1perday
        55 6,18 * * *   /usr/lib/yp/ypxfr_2perday

�̰��� master���� ������Ʈ�� �� �������� slave�� �ٿ��� �Ǿ ������Ʈ�� �ȵ� ���� ��κ��� NIS map���� �ֱٰ����� �Ǵ� ���� �����Ѵ�.

�������� ���� ������ slave�� �߰��� �� �ִ�. ó����, ���ο� slave ������ ���Ͽ� NIS master�� ���� contact�� ������ �ִٴ� ���� Ȯ���϶�. �׸��� ���� �� slave �������� ������ �����϶�.

        % /usr/lib/yp/ypinit -s masterhost

master ������ /var/yp/ypservers �� ���ο� salve������ �߰��ϰ� /var/yp ���丮���� make�� ������� map�� ������Ʈ�϶�.

�������� NIS �������� ����ڵ鿡 ���Ͽ� ���������� �ΰ� �ʹٸ�, NIS ������ ���� ypbind�� �����Ű��, /etc/passwd �н����� ���� �߰��� �÷��� ��Ʈ���� �߰��ϴ� ������� ������ ����� �Ѵ�. ���̺귯�� function���� NIS ��Ʈ�� �� �� ���� ��� �Ϲ� ��Ʈ������ �����Ѵ�. �׸��� NIS�� ���Ͽ� �� ������ ���� �������� ���Ѵ�. �̷�������� NIS ���� ��Ģ���� �����ȴ�. ���� ���:

        root:x:0:0:root:/root:/bin/bash
        daemon:*:1:1:daemon:/usr/sbin:
        bin:*:2:2:bin:/bin:
        sys:*:3:3:sys:/dev:
        sync:*:4:100:sync:/bin:/bin/sync
        games:*:5:100:games:/usr/games:
        man:*:6:100:/usr/games:
        lp:*:7:7:lp:/var/spool/lpd:
        mail:*:8:8:mail:/var/spool/mail:
        news:*:9:9:news:/var/spool/news:
        uucp:*:10:50:uucp:/var/spool/uucp:
        nobody:*:65534:65534:noone at all....:/dev/null:
        +miquels::::::
        +:*:::::/etc/NoShell
        [ All normal users AFTER this line! ]
        tester:*:299:10:Just a test account:/tmp:
        miquels:1234567890123:101:10:Miquel van Smoorenburg:/home/miquels:/bin/zsh

"tester"��� ������ ����������, /etc/NoShell�� ������ �ִ�. miquels�� �Ϲ� ���� �׼����� �� �� �ִ�.

�ٸ���, /var/yp/Makefile�� ���ļ� �ٸ� �н����� ������ �ҽ��� �̿� �ϵ��� NIS�� ������ �� �ִ�. �Ը� ū �ý��ۿ����� NIS �н������ �׷����� ���� ���� /etc/yp/���丮�� ����Ǿ� �ִ�. �������� �̷��� �ϱ⸦ ���Ѵٸ� passwd, chfn, adduser���� �Ϲ����� ���� ���� ���̻� �۵����� �ʴ´�. ���� �̰͵��� ���� � Ư���� ���� ������ �Ѵ�.

�׷����� yppasswd, ypchsh �׸��� ypchfn�� ��� �� ���� ���̴�.

8.2 ���� ���α׷� yps

"yps" NIS������ ������ ��, ���� ������ �����ϱ� �ٶ���. "yps" ���� ������ �� ���ϴ�. _�׷�����_ ��Ȯ�ϰ� ��ġ���� �ʱ� ������ "ypserv" ������ "yps"�� �� ���� �õ��� �� ������ �����ض�! "yps"�� � �����ڵ�� ���͵� �������� ���� ��, ��� ���� ������ ������� ������ �ִ�. �������� ���� �̰��� ����ϸ� �� �ȴ�!

"yps" NIS ���� ����Ʈ����� �������� ã�� �� �ִ�:

        Site                    Directory                       File Name

        ftp.lysator.liu.se      /pub/NYS/servers                yps-0.21.tar.gz
        ftp.kernel.org          /pub/linux/utils/net/NIS        yps-0.21.tar.gz

8.3 rpc.ypxfrd ���α׷�

rpc.ypxfrd�� NIS master���� NIS slave������� ���۵Ǵ� �ſ� ū NIS map�鿡 ���� ���� �ӵ��� ����Ű�� ���� ���̴�. ���� NIS slave�� ���ο� map�� ���� �� ���� �޽����� �޾��� ��, �̰��� ���ο� map�� ������ ���ؼ� ypxfr�� ����� ų ���̴�. ypxfr�� yp_all()�Լ��� ����Ͽ�, master�����κ��� map�� ������ ���� ���̴�. �� ���μ����� �����ͺ��̽� ���̺귯���� ���� �Ǿ���� map�� �� ���� ū �͵��̶�� �� �� ���� �ҿ�ȴ�.

rpc.ypxfrd������ NIS slave �����鿡�� �������� scartch�� ���� �����ϴ� �ͺ� �� ������ master ������ map ���ϵ��� �����ϴ� ���� ��������ν� ���� ���μ� ���� �ӵ��� ����Ų��. rpc.ypxfrd�� RPC����� ���� ���� �Ծ��� ����Ѵ�. �� �� �ٽ� ���Ӱ� map ������ �������� �ʾƵ� �ȴ�.

rpc.ypxfrd�� inted�� ���ؼ� ���۵� �� �ִ�. ������ �̰��� �ſ� �ʰ� ���۵� ���̱� ������, ypserv�� ���� ���۵Ǿ�� �Ѵ�. �������� rpc.ypxfrd�� NIS ma ster���������� ������Ѿ� �Ѵ�.

8.4 rpc.yppasswdd ���α׷�

����ڵ��� �׵��� �н����带 �ٲܶ�����, NIS �н����� �����ͺ��̽��� �׿� �����ϴ� �ٸ� NIS �����ͺ��̽����� ������Ʈ �Ǿ�� �Ѵ�. "rpc.yppasswdd"�� �α׷��� �н������� ������ �ٷ�� NIS �������� �����ϰ� ������Ʈ �ǵ��� �� �� �ϴ� �����̴�. rpc.yppasswd �� ���� ypserv�� ���յǾ� �ִ�. �������� �� �� �и��Ǿ��� ������ yppasswd-0.9.tar.gz Ȥ�� yppasswd-0.10.tar.gz�� �� ������� �ʴ´�. �׸��� ���̻� �װ��� ����ϸ� �ȵȴ�. ypserv 1.3.2�� �ִ� rpc.yppasswdd�� shadow�� ��� ���� �����Ѵ�. yppasswd�� ���� yp-tools-2.2. tar.gz�� �κ��̴�.

�������� NIS master���������� rpc.yppasswdd�� �����Ű�� �ȴ�. �⺻������, ����ڵ��� �׵��� ������ �̸��̳� �α� ���� �ٲ��� ���ϵ��� �Ǿ��ִ�. ���� ���� -e chfn Ȥ�� -e chsh�ɼ����� �̰��� �����ϰ� �� �� �ִ�.

���� �������� passwd�� shadow���ϵ��� �ٸ� ���丮 ���� /etc�� �ִٸ�, ���� ���� -D �ɼ��� �߰��ϸ� �ȴ�. ���� ��� ��� �ҽ� ���ϵ��� /etc/yp�� �ְ� ����ڵ��� �׵��� ���� �ٲٴ� ���� ����ϰ� �Ѵٸ�, rpc.yppasswdd�� ������ �� �� �Ķ���Ϳ� �Բ� �����Ű�� �ȴ�.

        rpc.yppasswdd -D /etc/yp -e chsh

Ȥ��

        rpc.yppasswdd -s /etc/yp/shadow -p /etc/yp/passwd -e chsh

���̻� �Ұ��� ����. �������� ���� rpc.yppasswdd�� /var/yp/Make file���� ����ϴ� ���� ������ ����Ѵٴ� �͸� Ȯ���� �� �θ� �ȴ�. �� ���� syslog�� ���� ��ϵ� ���̴�.


���� ���� ����