跳过导航链接 | |
退出打印视图 | |
系统管理指南:安全性服务 Oracle Solaris 10 8/11 Information Library (简体中文) |
如何为 NIS+ 主机设置 Diffie-Hellman 密钥
如何为 NIS+ 用户设置 Diffie-Hellman 密钥
如何为 NIS 主机设置 Diffie-Hellman 密钥
19. 使用 Oracle Solaris 安全 Shell(任务)
通过要求对已挂载 NFS 文件系统的使用进行验证,可以增强网络的安全性。
Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
# svcs \*keyserv\* STATE STIME FMRI disabled Dec_14 svc:/network/rpc/keyserv
# svcadm enable network/rpc/keyserv
应该针对 NIS+ 域中的每个主机执行此过程。以 root 身份运行了 keylogin 命令之后,服务器将具有 mech_dh 的 GSS-API 接受器凭证,而客户机具有 GSS-API 启动器凭证。
有关 NIS+ 安全性的详细说明,请参见《System Administration Guide: Naming and Directory Services (NIS+)》。
Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
在 /etc/nsswitch.conf 文件中添加以下行:
publickey: nisplus
# nisinit -cH hostname
其中,hostname 是其表中包含客户机系统项的可信 NIS+ 服务器的名称。
键入以下命令:
# nisaddcred local # nisaddcred des
# keylogin Password:
示例 16-1 在 NIS+ 客户机上为 root 设置新密钥
以下示例使用主机 pluto 将 earth 设置为 NIS+ 客户机。您可以忽略警告。系统将接受 keylogin 命令,检验 earth 是否已正确设置为安全 NIS+ 客户机。
# nisinit -cH pluto NIS Server/Client setup utility. This system is in the example.com. directory. Setting up NIS+ client ... All done. # nisaddcred local # nisaddcred des DES principal name : unix.earth@example.com Adding new key for unix.earth@example.com (earth.example.com.) Network password:<Type password> Warning, password differs from login password. Retype password: <Retype password> # keylogin Password: <Type password> #
应该针对 NIS+ 域中的每个用户执行此过程。
Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
键入以下命令:
# nisaddcred -p unix.UID@domain-name -P username.domain-name. des
请注意,在这种情况下,username.domain-name 必须以点 (.) 结束。
示例 16-2 为 NIS+ 用户设置新密钥
在以下示例中,将为用户 jdoe 提供 Diffie-Hellman 验证密钥。
# nisaddcred -p unix.1234@example.com -P jdoe.example.com. des DES principal name : unix.1234@example.com Adding new key for unix.1234@example.com (jdoe.example.com.) Password: <Type password> Retype password:<Retype password> # rlogin rootmaster -l jdoe % keylogin Password: <Type password> %
应该针对 NIS 域中的每个主机执行此过程。
Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
在 /etc/nsswitch.conf 文件中添加以下行:
publickey: nis
# newkey -h hostname
其中,hostname 是客户机的名称。
示例 16-3 在 NIS 客户机上为 root 设置新密钥
在以下示例中,将 earth 设置成了安全 NIS 客户机。
# newkey -h earth Adding new key for unix.earth@example.com New Password: <Type password> Retype password:<Retype password> Please wait for the database to get updated... Your new key has been successfully stored away. #
应该针对 NIS 域中的每个用户执行此过程。
开始之前
只有已登录到 NIS 主服务器的系统管理员才能为用户生成新密钥。
Primary Administrator(主管理员)角色拥有 Primary Administrator(主管理员)配置文件。要创建该角色并将其指定给用户,请参见《系统管理指南:基本管理》中的第 2 章 "使用 Solaris Management Console(任务)"。
# newkey -u username
其中,username 是用户的名称。系统将提示键入口令。您可以键入通用口令。私钥是使用此通用口令以加密形式存储的。
此命令允许用户使用只有本人知道的口令重新加密其私钥。
注 - 可以使用 chkey 命令为用户创建新密钥对。
示例 16-4 在 NIS 中设置并加密新用户密钥
在此示例中,超级用户将设置密钥。
# newkey -u jdoe Adding new key for unix.12345@example.com New Password: <Type password> Retype password:<Retype password> Please wait for the database to get updated... Your new key has been successfully stored away. #
% chkey -p Updating nis publickey database. Reencrypting key for unix.12345@example.com Please enter the Secure-RPC password for jdoe:<Type password> Please enter the login password for jdoe: <Type password> Sending key change request to centralexample...
此过程通过要求访问验证来保护 NFS 服务器上的共享文件系统。
开始之前
必须在网络中启用 Diffie-Hellman 公钥验证。要在网络中启用验证,请执行以下操作之一:
System Administrator(系统管理员)角色拥有 File System Management(文件系统管理)配置文件。要创建该角色并将其指定给用户,请参见配置 RBAC(任务列表)。
# share -F nfs -o sec=dh /filesystem
其中,filesystem 是共享的文件系统。
-o sec=dh 选项表示现在需要通过 AUTH_DH 验证后才能访问文件系统。
# mount -F nfs -o sec=dh server:filesystem mount-point
共享 filesystem 的系统的名称
共享的文件系统的名称,如 opt
挂载点的名称,例如 /opt
-o sec=dh 选项通过 AUTH_DH 验证挂载文件系统。