跳过导航链接 | |
退出打印视图 | |
Oracle Solaris 11.1 管理:安全服务 Oracle Solaris 11.1 Information Library (简体中文) |
本节介绍使 PAM 框架使用特定安全策略所需执行的一些任务。应注意与 PAM 配置文件关联的某些安全问题。有关安全问题的信息,请参见规划 PAM 实现。
|
所提供的 PAM 配置实现了标准安全策略。此策略应适用于许多情况。如果需要实现其他安全策略,则应关注以下问题:
确定您的需求,特别是应选择的 PAM 服务模块。
确定需要特殊配置选项的服务。使用服务名称 other 为服务提供缺省值(如果适用)。
决定模块的运行顺序。
选择每个模块的控制标志。有关所有控制标志的更多信息,请参见PAM 栈工作原理。
选择每个模块必需的所有选项。每个模块的手册页应列出所有特殊选项。
以下是更改 PAM 配置之前要考虑的一些建议:
为每个模块类型使用服务名称 other 项,以便 PAM 配置中不必包括每个应用程序。
请务必考虑控制标志的安全影响。
查阅与模块关联的手册页。这些手册页可帮助您了解每个模块的工作方式、可用的选项以及堆叠模块之间的交互。
注意 - 如果 PAM 配置有配置错误或者已损坏,则可能没有用户能够登录。由于 sulogin 命令不使用 PAM,因此需要使用超级用户口令将计算机引导至单用户模式并修复问题。 |
更改 PAM 配置之后,在您仍具有系统访问权限的情况下,尽可能多地检查此更改以更正问题。对更改可能影响到的所有命令进行测试。
此过程说明如何添加新的 PAM 模块。可以创建新模块以提供特定于站点的安全策略或支持第三方应用程序。
开始之前
您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限。
有关控制标志的信息,请参见PAM 栈工作原理。
可以对 /etc/pam.conf 或 /etc/pam.d/service 进行更改。
必须进行测试以防此配置文件有配置错误。使用直接服务(例如 ssh)登录,然后运行 su 命令。
注 - 缺省情况下,未启用 rsh 服务。要提供更加安全的连接,请使用 ssh 命令。
开始之前
您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限。
此步骤用于防止在 rlogin 会话期间读取 ~/.rhosts 文件。因此,此步骤可防止从远程系统对本地系统进行未经验证的访问。无论 ~/.rhosts 或 /etc/hosts.equiv 文件是否存在或包含什么内容,所有 rlogin 访问都要求提供口令。
要防止对系统进行未经验证的访问,请记得禁用 rsh 服务。
# svcadm disable network/shell:default
如有必要,禁用 rlogin 服务。
# svcadm disable network/login:rlogin
开始之前
您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限。
# svcs system-log STATE STIME FMRI disabled 13:11:55 svc:/system/system-log:rsyslog online 13:13:27 svc:/system/system-log:default
注 - 如果 rsyslog 服务实例联机,请修改 rsyslog.conf 文件。
有关日志记录级别的更多信息,请参见 syslog.conf(4) 手册页。大多数 PAM 错误报告是由 LOG_AUTH 设备执行的。
# svcadm refresh system-log:default
注 - 如果 rsyslog 服务联机,请刷新 system-log:rsyslog 服务实例。
开始之前
您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限。
请参见以下文本中的注释了解有关文件影响的说明。
# cat /etc/opt/pam_policy/custom-config # # PAM configuration which uses UNIX authentication for console logins, # LDAP for SSH keyboard-interactive logins, and denies telnet logins. # login auth requisite pam_authtok_get.so.1 login auth required pam_dhkeys.so.1 login auth required pam_unix_auth.so.1 login auth required pam_unix_cred.so.1 login auth required pam_dial_auth.so.1 # sshd-kbdint auth requisite pam_authtok_get.so.1 sshd-kbdint auth binding pam_unix_auth.so.1 server_policy sshd-kbdint auth required pam_unix_cred.so.1 sshd-kbdint auth required pam_ldap.so.1 # telnet auth requisite pam_deny.so.1 telnet account requisite pam_deny.so.1 telnet session requisite pam_deny.so.1 telnet password requisite pam_deny.so.1
此文件必须由 root 拥有,并且不能由组或所有人写入。
# ls -l /etc/opt/pam_policy total 5 -r--r--r-- 1 root 4570 Jun 21 12:08 custom-config
将 /etc/opt/pam_policy 中的 custom-config 文件指定给名为 jill 的用户。
# useradd -K pam_policy=/etc/opt/pam_policy/custom-config jill
开始之前
您必须承担 root 角色。有关更多信息,请参见如何使用指定给您的管理权限。
在此示例中,使用了 ldap PAM 策略。
# profiles -p "PAM Per-User Policy of LDAP" \ 'set desc="Profile which sets pam_policy=ldap"; set pam_policy=ldap; exit;'
使用 pfedit 将新策略添加到 PROFS_GRANTED 声明。
# cat /etc/security/policy.conf . . AUTHS_GRANTED= PROFS_GRANTED=Basic Solaris User,PAM Per-User Policy of LDAP CONSOLE_USER=Console User
如果已经按照先前过程中的步骤 1 创建了一个配置文件,则可使用以下命令将权限配置文件指定给用户:
# usermod -P +"PAM Per-User Policy of LDAP" jill