yppasswd [username]
yppasswd 实用程序可以更改网络信息服务 (Network Information Service, NIS) 数据库中与用户 username 关联的网络口令。如果用户已执行 keylogin(1),并且 NIS publickey.byname 映射中存在用户的公钥/密钥对,则 yppasswd 还会以新口令对密钥进行重新加密。NIS 口令可能与用户自己计算机上的本地口令不同。
yppasswd 将提示输入 NIS 旧口令,然后提示输入新口令。必须正确键入旧口令才能使更改生效。为了防止错误,必须键入两次新口令。
如果使用的字母种类足够多样,新口令必须包含至少四个字符;如果使用单字符,则必须包含至少六个字符。如果十分坚持,这些规则可以放宽。只有名称的所有者或者超级用户可以更改口令;不会提示根主服务器上的超级用户输入旧口令,此类用户无需遵循口令构造要求。
要使新口令生效,NIS 服务器上必须运行 NIS 口令守护进程 rpc.yppasswdd。
有关下列属性的说明,请参见 attributes(5):
|
keylogin(1)、login(1)、passwd(1)、getpwnam(3C)、getspnam(3C)、secure_rpc(3NSL)、nsswitch.conf(4)、attributes(5)
即便在用户使用该命令成功更改口令后,也只有从 NIS 获取了用户的口令和影子信息,使用新口令的后续 login(1) 才能成功。请参见 getpwnam(3C)、getspnam(3C) 和 nsswitch.conf(4)。
不建议使用 yppasswd,因为它现在只是 passwd(1) 命令的包装指令,应该使用的是该命令。将 passwd(1) 与 –r nis 选项一起使用可以取得相同的结果,并且在所有不同名称服务之间保持一致。
更新协议调用一次 RPC 便将所有信息传递到服务器,此后从不查看。因此,如果错误地键入了旧口令,直到输入新口令后才会收到通知。