我正在管理一个系统,其中用户通过 NIS 进行身份验证,当用户尝试使用yppasswd
它更改密码时,就会出现问题。她得到了错误:
yppasswd: yppasswdd not running on NIS master host ("localhost").
根据网络上其他地方的建议,我尝试/etc/hosts
使用客户端的 IP(而不是127.0.0.1
)设置一个条目,指向客户端的主机名。这不起作用。
我的/etc/yp.conf
说ypserver <my_server_IP>
。
strace
输出显示在服务器决定之前进行yppasswd
协商。/etc/hosts
/etc/nsswitch.conf
127.0.0.1
我缺少什么?
客户端运行 Debian 7.0 (Wheezy),服务器运行 Debian 6.0.1 (Squeeze)
笔记
我知道 NIS 已接近完全过时并且非常脆弱。迁移到 LDAP 已列入我的议程,但在此期间我需要一个解决方案。
额外细节
客户端上的文件:
/etc/hosts
127.0.0.1 localhost
<IP in current DHCP lease> host_name.domain host_name
<server_ip> server_name server_name.domain
/etc/nsswitch.conf
passwd: files nis compat
group: files nis compat
shadow: files nis compat
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis