RPC.YPPASSWDD(8)

명칭
rpc.yppasswdd - NIS 패스워드를 변경하기 위한 서버

서식
rpc.yppasswdd [-t master.passwd template file] [-d default domain] [-p path] [-s] [-f] [-a] [-m] [-i] [-v] [-u] [-h]

해설
rpc.yppasswdd 유틸리티는, 유저가 yppasswd(1) (와)과 ypchpass(1) 명령 사용하는 것으로, NIS 패스워드 및 다른 정보를 변경하는 것을 허락합니다. rpc.yppasswdd 유틸리티는, 패스워드의 변경 요구를 받아들여 그 인증을 실시해, /var/yp/master.passwd 파일중에 갱신된 정보를 배치해, NIS 의 master.passwd MAP와 passwd MAP를 갱신하는, RPC 를 사용한 서버입니다.

rpc.yppasswdd 유틸리티는, 보통 NIS 유저가, 자신의 NIS 패스워드· ('GECOS'필드로서 알려져 있다) 풀네임· 쉘을 변경하는 것을 허락합니다. 이러한 갱신은, 전형적으로는 yppasswd(1), ypchfn(1), ypchsh(1), ypchpass(1) 명령을 사용해 행해집니다. (관리자중에는, 유저가 이름의 정보나 쉘을 변경하는 것을 바라지 않는 사람도 있습니다. 서버는, 옵션 플래그를 사용하는 것으로, 그러한 변경을 할 수 없게 할 수 있습니다. ) 서버가 갱신 요구를 받아들이면(자), /var/yp/securenets 파일에 기술되고 있다 securenets 규칙 (securenets 에 관한 상세한 정보는 ypserv(8) 의 메뉴얼 페이지를 참조해 주세요. rpc.yppasswdd 유틸리티는, ypserv(8) (와)과 같은 액세스 제어 기구를 사용합니다. )에 비추어, 요구를 실시한 클라이언트의 주소를 비교합니다.

서버는, 그 후 유저가 입력한 '낡은'패스워드가 유효한지 어떤지를 확인해, 그 후 몇개의 갱신 정보의 체크를 실시합니다 (이것들에는, 제어 캐릭터의 체크나 코론이나 유효한 쉘의 체크를 포함합니다). 한번 갱신 요구가 유효하다라고 하는 것이 만족되면(자), 서버는 패스워드 템플릿 파일 (디폴트에서는, /var/yp/master.passwd 입니다)를 갱신해, 그 후 NIS MAP를 재구축 하기 위해서 /usr/libexec/yppwupdate 스크립트를 실행합니다. (이 스크립트는, 2 개의 인수를 받습니다: 그것들은 변경된 패스워드 템플릿의 상대 패스명으로 갱신되었다 도메인의 이름입니다. 이것들은, /var/yp/Makefile 에게 건네집니다. )

FreeBSD 판의 rpc.yppasswdd (은)는, NIS 마스터 서버상의 슈퍼 유저가 NIS 패스워드 MAP를 갱신하기 위한 보다 세련된 방법을 제공합니다. 슈퍼 유저는 임의의 도메인의 임의의 유저의 master.passwd 엔트리의 임의의 필드를 변경할 수 있습니다. 이것은, 유저의 현재의 NIS 패스워드에 대해 몰라도 가능합니다 (서버가 슈퍼 유저로부터의 요구를 받아들이면(자), 패스워드 인증은 생략 합니다). 게다가, 서버가 -a 플래그 첨부로 실행되었을 때에는, 슈퍼 유저는 ypchpass(1) (을)를 사용해, 새로운 엔트리를 MAP에 덧붙이는 것 조차 할 수 있습니다. 또, 이것은, NIS 마스터 서버상의 슈퍼 유저인 만큼 적용됩니다. 이러한 특별한 기능은 네트워크를 개입시켜 제공되지 않습니다.

rpc.yppasswdd 유틸리티는, NIS 마스터 서버인 기계상에서만 실행하는 것이 할 수 있습니다.

옵션
이하의 옵션이 사용 가능합니다:

-t master.passwd template file
    디폴트에서는, rpc.yppasswdd (은)는, 디폴트 도메인의 master.passwd (와)과 passwd (을)를 생성하기 위해서 사용되는 템플릿 파일은, /var/yp/master.passwd 인 것을 가정하고 있습니다. 이 디폴트는, 대신의 파일명을 -t 플래그와 함께 지정하는 것으로 덧쓰기할 수 있습니다.

    (주의): 이 플래그와 함께 지정된 템플릿 파일이 /etc/master.passwd 인 경우, rpc.yppasswdd (은)는 NIS 의 MAP에 가세해 로컬의 패스워드 데이타베이스를 재구성하기 위해서, 자동적으로 pwd_mkdb(8) (을)를 호출합니다.

-d domain
    rpc.yppasswdd 유틸리티는 복수의 도메인을 취급할 수가 있습니다만, 1 개의 도메인을 디폴트로서 선택하지 않으면 안됩니다. domainname(1) 명령에 의해 설정된 시스템 디폴트의 도메인명을 사용하려고 합니다. 그렇지만, 시스템 도메인명이 설정되어 있지 않은 경우, 디폴트 도메인명은 명령행으로 지정하지 않으면 안됩니다. 시스템 디폴트 도메인이 설정되어 있는 경우, 이 옵션은 그 정의를 덧쓰기합니다.

-p path
    이 옵션은, 디폴트의 NIS MAP 데이타베이스의 패스를 덧쓰기하기 위해서 사용됩니다. 컴파일시로 지정되어 있는 디폴트의 패스는 /var/yp 입니다.

-s  쉘 정보의 변경을 인정하지 않습니다.

-f  풀네임 ('GECOS') 정보의 변경을 인정하지 않습니다.

-a  NIS 패스워드 데이타베이스에의 추가를 허가합니다. NIS 마스터 서버상의 슈퍼 유저는, ypchpass(1) 명령로 유저의 master.passwd MAP 엔트리의 어떤 필드라도, 무제한의 변경을 실시하는 것이 용서되고 있습니다. rpc.yppasswdd 하지만 이 플래그를 붙여 실행되었을 경우, chpass(1) (을)를 사용한 로컬 패스워드 데이타베이스 갱신에서 가능해요와 같게, 슈퍼 유저가 NIS 패스워드 MAP에 새로운 레코드를 추가하는 것을 허가합니다.

-m  멀티 도메인 모드를 유효하게 합니다. ypserv(8) (은)는 동시에 몇개의 도메인을 취급할 수가 있습니다만, 대부분의 rpc.yppasswdd 실장에서는, 1 개의 NIS 도메인밖에 취급할 수가 없습니다. 이것은, 일반적으로 NIS 마스터 서버의 시스템 디폴트 도메인과 같습니다. FreeBSD 의 rpc.yppasswdd (은)는, yppasswd 프로토콜에서는 domain 인수를 클라이언트의 요구중에 포함할 수가 없다고 한다 프로토콜 고유의 제한에도 불구하고, 이 문제를 해결하려고 하고 있습니다. 멀티 도메인 모드에서는, rpc.yppasswdd 하 /var/yp 아래의 전도메인의 전패스워드 MAP를 검색해, 주어진 갱신 요구로 지정된 유저 정보와 일치하는 엔트리를 찾아냅니다. (일치했는지 어떠했는지는, 유저명과 UID 및 GID 필드를 조사하는 것으로 결정됩니다. ) 일치한 엔트리와 그 도메인은 그 후 갱신을 위해서(때문에) 사용됩니다.

    멀티 도메인 모드가 잘 움직이기 위해서(때문에)는, 각 도메인마다 다른 템플릿 파일이 필요한 일로 주의해 주세요. 예를 들면, 서버가 3 개의 도메인 foo, bar, baz (을)를 제공하고 있을 때, 3 개(살)의 다른 master.passwd 템플릿 파일 /var/yp/foo/master.passwd, /var/yp/bar/master.passwd, /var/yp/baz/master.passwd 하지만 필요합니다. foo 하지만 시스템 디폴트 도메인이었다고 하면(자), 그 템플릿 파일 하 /var/yp/foo/master.passwd 혹은 /var/yp/master.passwd 의 어디에서 있어도 상관하지 않습니다. 서버는, 후의 파일을 먼저 확인해, 발견되지 않는 경우에는 앞의 파일을 확인합니다.

    디폴트에서는, 멀티 도메인 모드로는 되고 있지 않습니다. 이것은, 다른 도메인에 같은 혹은 비슷한 엔트리가 존재했을 경우 에 실패하기 때문입니다. 검색 area에 복수의 엔트리를 찾아냈을 경우, 서버는 갱신 요구를 정지합니다. 따라서, 편집적인 관리자는 멀티 도메인 모드를 이용 불가능하게 하고 싶으면 생각하겠지요.

-i  rpc.yppasswdd 하지만 이 플래그 첨부로 불려 갔을 경우, MAP 갱신을 그 자리에서 실시하려고 합니다. 이 의미는, 패스워드 템플릿 파일을 직접 갱신해 MAP 갱신하는 대신에, 서버가 MAP 데이타베이스를 직접 갱신한다고 하는 것입니다. 이것은, 패스워드 MAP가 클 때에 유효합니다. 예를 들면, 패스워드 데이타베이스에 10,000 것 엔트리가 있는 경우, MAP의 갱신이 종료하기까지 몇분 걸려 버립니다. 그 자리에서 MAP를 갱신하는 것으로, 이 시간을 몇 초까지 줄일 수가 있습니다.

-v  장황한 로그 모드에 들어갑니다. 통상, 서버는 에러 상태시나 슈퍼 유저에 의한 NIS 마스터 서버상에서의 갱신시에, syslog(3) 의 능력을 사용해 메세지를 기록합니다. 서버가 -v 옵션을 사용해 실행되고 있을 때에는, 모든 갱신에 대한다 정보 메세지를 기록합니다.

-u  많은 상용의 yppasswd(1) 클라이언트는, rpc.yppasswdd 에의 요구를 보낼 때에 예약 포트를 사용하지 않습니다. 이것은, yppasswd(1) 하지만 root 에 set-uid 되지 않고 인스톨 되고 있는지, RPC 의 실장이 슈퍼 유저를 위해서(때문에) 클라이언트 접속이 확립되었을 때, 예약 포트를 할당하는 것을 하지 않게 되어 있기 (위해)때문입니다. 디폴트에서는, rpc.yppasswdd (은)는, 클라이언트로부터의 결과를 예약 포트를 사용하고 받는 것을 기대합니다. 비특권 포트로부터 받은 요구는, 배제됩니다. 불행하게 해, 이 행동은 특권 포트를 사용할 수 없는 클라이언트 시스템으로부터의 패스워드 갱신 요구를 방해합니다. -u 플래그를 지정하는 것으로, rpc.yppasswdd (은)는, 특권 포트를 사용할 수 없다 yppasswd(1) 그렇지만 일하도록(듯이), 특권 포트의 체크를 무효로 합니다. 이것은, 조금 보안를 저하시킵니다만, 클라이언트의 행동을 변경할 수 없는 경우에는 필요하게 되겠지요.

-h  rpc.yppasswdd 하지만 이해할 수 있는 플래그나 옵션의 리스트를 표시합니다.

관련 파일
/usr/libexec/yppwupdate
    NIS MAP를 갱신해, 그 후로 푸쉬 하기 위해서, rpc.yppasswdd 에 의해 불려 가는 스크립트입니다.
/var/yp/master.passwd
    디폴트 도메인을 위한 템플릿 패스워드 파일입니다.
/var/yp/[domainname]/[maps]
    특정의 NIS 도메인을 위한 NIS MAP입니다.
/var/yp/[domainname]/master.passwd
    디폴트가 아닌 도메인을 위한 일시 패스워드 파일입니다 (멀티 도메인 모드만으로 사용됩니다).

관련 항목
yp(8), yppush(8), ypserv(8), ypxfr(8)

버그
yppasswd.x 프로토콜 정의로 기술되고 있도록(듯이), YPPASSWDPROC_UPDATE 수속은 2 개의 인수를 취합니다. 갱신하는 유저 정보를 포함한 V7 형식의 패스워드 구조 및, 유저의 암호화되지 않는 (clear text) 패스워드입니다. rpc.yppasswdd (은)는 리모트의 NIS 클라이언트 머신으로부터의 갱신 요구를 취급하는 것을 가정하고 있습니다. 이것은, yppasswd(1) (이)나 비슷한 클라이언트 프로그램이 네트워크를 통해, 유저의 clear text 패스워드를 전송 한다고 하는 것을 의미합니다.

이것은 패스워드 갱신에서는 문제가 아닙니다. 왜냐하면, 갱신과 함께 보내지는 프레인테키스트파스워드는, 새로운 암호화된 패스워드가 유효하게 되었을 때에는 무효가 되어 있기 때문입니다. 그러나, 유저가 자신의 'GECOS'정보나 쉘을 갱신하는 경우에는, 갱신과 함께 보내지는 clear text 패스워드는, 갱신 완료시에도 유효합니다. 네트워크가 시큐어가 아닌 경우, 이 clear text 패스워드는, 도중에 파악되어 그 유저 어카운트에 대한 부정 액세스에 사용될지도 모릅니다.

저자
Bill Paul <wpaul@ctr.columbia.edu>