AIX系统安全配置手册资料.docx
- 文档编号:29044050
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:74
- 大小:68.91KB
AIX系统安全配置手册资料.docx
《AIX系统安全配置手册资料.docx》由会员分享,可在线阅读,更多相关《AIX系统安全配置手册资料.docx(74页珍藏版)》请在冰豆网上搜索。
AIX系统安全配置手册资料
AIX系统安全配置
1身分识别
1.1账户设定
编号:
6001
名称:
帐户设定
重要等级:
高
基本信息:
账户是用户访问系统的基本凭证。
系统通过检测用户所拥有的帐户来识别用户的身份,并以此决定用户的操作权限,同时也产生诸如审计之类的动作。
检测内容:
只有特定的授权帐户可用来增加用户及群组,此为AIX默认值且不应被更改;
一般帐户不应该有多余的管理权限,此为AIX默认值且不该被更改;
只有特定的授权帐户可用来删除用户及群组、修改及打印所有帐户资料。
以用来防止非法存取系统,或集中攻击有特别权限的帐户,此为AIX默认值且不该被更改;
只有特定的授权帐户可用来检查使用者状态。
为防止入侵者存取非公开系统资料,用户状态资料仅可由特定帐户取得。
这一点在AIX仅部份可行,因为如果使用者锁定,则其它使用者无法看到此使用者,但却可使用who命令来检查登陆的帐户;
只有特定的授权帐户可用来打印所有群组信息、锁定或未锁定的帐户。
以用来防止非法存取系统,或集中攻击有特别权限的群组,此为AIX默认值且不该被更改;
只有特定的授权帐户可用来更改授权帐户数目。
太多的用户同时使用某应用系统可能影响系统稳定性,此为AIX默认值且不该被更改;
系统管理员群组的人员不可存取所有资源,管理群组的人员应只能存取工作上所需用的资源。
存取所有资源不应被允许,此为AIX默认值且不该被更改;
一般用户不可存取特定系统文件及命令。
系统命令及程序只能被特定帐户使用,一般用户不可存取此类功能。
应通过权限控制管理来进行限制,此为AIX默认值且不该被更改;
权限的控制管理应在文件产生时即被设置,仅有文件的产生者能读取、写入、执行或删除此文件,使用者的umask设定为仅允许文件产生者存取(例外:
root用户可存取系统所有文件)。
Umask的设定控制了文件除了删除外的权限,删除的权限则根据文件所在目录的权限位来决定;
最少权限机制应被应用,以确保应用程序以最少权限执行,所有应用程序的授权应保持最低权限;
只有特别的授权帐户可安装软件或加入新设备到系统中,并安装安全的更新修正程序,此为AIX默认值且不该被更改;
建议操作:
按照系统提供的资源和计划运行的任务,合理规划任务的属主,以此利用系统提供的管理命令,如passwd、umask等,设定权责明确的用户和用户组。
分别对它们设定严格的系统权限。
操作结果:
存取系统资源取决于使用者及群组的身份,使用者的权限可能多于其群组的权限;
1.2推荐用户属性
编号:
6002
名称:
推荐用户属性
重要等级:
高
基本信息:
用户是系统的主要组成元素。
用户的一个主要属性是如何对他们进行认证。
其属性控制他们的访问权、环境、如何对他们进行认证以及如何、何时、在哪里可以访问他们的帐户。
组是对共享的资源同一访问许可权的用户的集合。
一个组有一个标识,且由组成员和管理员组成。
组的创建者通常就是第一管理员。
可以对每个用户帐户设置多个属性,包含密码和登录属性。
检测内容:
推荐以下属性:
每个用户应有一个不与其它用户共享的用户标识。
所有的安全防护措施和工具仅在每个用户都有唯一标识时起作用;
为系统用户指定一个对其有意义的用户名。
最好使用实际名称,因为大多数电子邮件系统使用用户标识为接收的邮件标号;
使用基于Web的系统管理工具或SMIT界面添加、更改和删除用户。
虽然可以通过命令行来执行所有这些任务,但这些界面有助于减少小错误;
在用户准备好登录系统前不要为用户帐户提供初始密码。
如果在/etc/passwd文件中将密码字段定义为*(星号),虽然帐户信息得到保存,但不能登录到该帐户;
不要更改系统正常运行所需的由系统定义的用户标识。
系统定义的用户标识罗列在/etc/passwd文件中;
一般情况下,不要将任何用户标识的admin参数设置为true。
只有root用户可以为在/etc/security/user文件中设置为admin=true的用户更改属性。
操作系统支持通常出现在/etc/passwd和/etc/group文件中的标准用户属性,例如:
认证信息指定密码
凭证指定用户标识、主体组和补充组标识
环境指定主环境或shell环境。
建议操作:
检查标准Unix系统用户、组设定文件。
/etc/passwd和/etc/group中的设定,确定各个用户存在的目的,避免存在无意义的用户和组。
检查用户ID,避免无关用户拥有root或其他管理用户的权限。
检查密码字段,防止无密码的用户存在。
检查用户属性,避免不合理的用户拥有admin的权限。
操作结果:
各个用户和用户组依照之前规划的目标拥有并可以行使各自明确的权限。
6.1.3用户帐户控制
编号:
6003
名称:
用户帐户控制
重要等级:
高
基本信息:
每个用户帐户有一组相关属性。
当使用mkuser命令创建用户时,这些属性根据缺省值创建。
这些属性可以通过使用chuser命令来修改。
检测内容:
以下用户属性用于控制与密码有关的方面:
account_locked
如果必须明确地锁定帐户,则该属性可以设置为true;缺省值是false。
admin
如果设置为true,则该用户无法更改密码。
只有管理员可以更改它。
admgroups
列出此用户具有管理权限的组。
对于这些组,该用户可以添加或删除成员。
auth1
用于授权用户访问的认证方法。
典型地,将它设置为SYSTEM,然后将使用较新的方法。
auth2
按auth1指定的对用户进行认证后运行的方法。
它无法阻止对系统的访问。
典型地,将它设置为NONE。
daemon
此布尔参数指定是否允许用户使用startsrc命令启动守护程序或子系统。
它也限制对cron和at设备的使用。
login
指定是否允许该用户登录。
logintimes
限制用户何时可以登录。
例如,用户可能被限制只能在正常营业时间访问系统。
registry
指定用户注册表。
可以用于告知系统用户信息的备用注册表,例如NIS、LDAP或Kerberos。
rlogin
指定是否允许该用户通过使用rlogin或telnet登录。
su
指定其它用户是否可以使用su命令切换至此标识。
sugroups
指定允许哪个组切换至此用户标识。
ttys
限制某些帐户进入物理安全区域。
expires
管理guest帐户;也可以用于临时关闭帐户。
loginretries
指定用户标识被系统锁定之前连续的可以尝试登录失败的最大次数。
失败的尝试记录在/etc/security/lastlog文件中。
umask
指定用户的初始umask。
建议操作:
所有的用户属性在/etc/security/user、/etc/security/limits、/etc/security/audit/config和/etc/security/lastlog文件中定义。
使用mkuser命令创建的用户缺省值在/usr/lib/security/mkuser.default文件中指定。
只有修改/etc/security/user和/etc/securtiy/limits文件中的default节中的缺省值的设置和审计类必须在mkuser.default文件中指定。
文件中的一些属性控制用户可以如何登录,且可以通过配置这些属性,在指定情况下自动锁定用户帐户(阻止进一步登录)。
用户帐户由系统锁定后,用户无法登录直到系统管理员重新设置该用户在/etc/security/lastlog文件中的unsuccessful_login_count属性值小于登录重试值。
可以使用以下chsec命令完成,如下所示:
chsec-f/etc/security/lastlog-susername-a
unsuccessful_login_count=0
可以使用chsec命令在相应安全性文件(/etc/security/user或/etc/security/limits文件)中编辑default节来更改缺省值。
将许多缺省值定义为标准行为。
要明确地指定每次创建新用户时要设置的属性,请更改/usr/lib/security/mkuser.default中的user项。
操作结果:
AIX中各用户将严格按照chuser设定的要求,允许或限制各种操作。
以此保证系统按照既定的安全规定访问。
6.1.4登录用户标识
编号:
6004
名称:
登陆用户标识
重要等级:
中
基本信息:
操作系统通过用户的登录用户标识来识别他们。
登录用户标识允许系统可以追踪所有的用户操作。
在用户登录系统后,初始用户程序运行前,系统将进程的登录标识设置为在用户数据库中找到的用户标识。
登录会话过程中所有后继进程都用此标识做标记。
这些标记提供登录用户标识执行的所有活动的踪迹。
用户可以在会话过程中重新设置有效用户标识、真实用户标识、有效组标识、真实组标识和增补组标识,但不能更改登录用户标识。
检测内容:
请参考/etc/passwd和/etc/group文件,用户在登录后,系统通过在该文件中的记录,将用户标示为对应的UID和GID,并以此确定其在系统的身份和权限。
建议操作:
给予用户合适的UID并将其分配到合适的一个或多个组中。
在登录后使用id或whoami命令检查自己的身份标识。
操作结果:
用户等录后拥有既定的UID和GID身份。
1.5使用访问控制表增强用户安全性
编号:
6005
名称:
访问控制列表
重要等级:
高
基本信息:
要在系统上取得安全性的相应水平,要开发一个一致的安全性策略来管理用户帐户。
最常用的安全机制是访问控制表(ACL)。
有关ACL和开发安全性策略的信息,请参阅访问控制。
检测内容:
建议操作:
操作结果:
1.6停用无用的账户(UnnecessaryAccounts)
编号:
6006
名称:
停掉无用的帐户
重要等级:
高
基本信息:
“Guest”帐户应该在系统上是不被允许的。
AIX内含一些使用者ID,而其密码是无效的(password(*))。
若ID含有无效的密码(invalidpassword),其意谓者没有任可使用者可以藉此登入至系统。
这些ID是:
daemonOwnerofthesystemdaemons
binOwnerofthesystemexecutablefiles
sysOwnerofsystemdevices
admOwnerofsystemaccountingutilities
uucpOwnerofUNIX-to-UNIXCopyProgram
nuucpForUUCP
lpdOwnerofprinterspoolerutility
guestGuestaccount
nobodyusedbyNFS
并不建议移除所有无用的帐户,如:
uucp,nuucp,lpd,guest,andnobody等。
因为有时候当安装更新程序时,安装程序会尝试使用这些系统定义的帐户,譬如,更改文件的所有权给自已。
假如该帐户不存在,则安装可能会失败,并造成更新程序在一个“未定义”或“broken”状态。
这样是非常困难去检查先前的错误。
因此,我们建议,除了guestuser,不要移除其它系统帐户信息。
在操作系统安装过程中,会创建许多缺省用户和组标识。
根据您在系统上运行的应用程序和系统在网络中所处的位置,其中某些用户和组标识可能成为安全弱点,容易被人利用。
如果这些用户和组标识是不必要的,那么您可以将其删除,以使跟其有关的安全风险最小化。
检测内容:
您可能能够除去的公共缺省用户标识:
uucp,nuucpuucp
协议所用的隐藏文件的所有者。
uucp用户帐户是用于“UNIX到UNIX复制程序”,该程序是在大多数AIX系统上存在的一组命令、程序和文件,它们允许用户使用专线或电话线与另一AIX系统进行通信。
lpd
打印子系统所使用文件的所有者
guest
允许那些无权访问帐户的用户访问
可能不需要的公共组标识:
uucp
uucp和nuucp用户所属的组
printq
lpd用户所属的组
建议操作:
分析/etc/passwd,/etc/group中列出的用户和组,确定其意义。
删除或限制无意义或意义不明确的用户和组。
操作结果:
分析您的系统以确定哪些用户、组标识确实是不需要的。
可能也存在其它的您可能不需要的用户和组标识。
在系统投入生产之前,对可用的用户、组标识进行彻底地检查。
2身分验证
2.1设定BIOS通行码
编号:
6007
名称:
设置BIOS密码
重要等级:
高
基本信息:
BIOS密码是进入系统的第一道防线。
如果不能确定系统是否会经未授权的人员访问,请设定良好的BIOS密码以阻止其对系统基本设置的访问。
检测内容:
进入系统的BIOS并设定密码,以防止XX者进入系统或进入系统的BIOS设定。
关闭硬盘以外其它装置的booting功能,以建立一个高度安全的环境。
建议操作:
启动机器后,进入BIOS或SMC的控制选单,设定访问密码。
操作结果:
XX的人员将无法访问系统基本硬件设定功能。
2.2设定账户密码
编号:
6008
名称:
设定帐户密码
重要等级:
高
基本信息:
在未使用生物认证技术的环境中,用户得以进入系统基本凭证就是密码。
目前广泛使用的shadow方式的密码存放方式。
检测内容:
良好的密码是抵御未授权进入系统的第一道有效防线,它们是以下类型:
大小写字母的混合;
字母、数字或标点符号的组合。
此外,它们可以包含特殊字符,如~!
@#$%^&*()-_=+[]{}|\;:
'",.<>?
/<空格>;
未写在任何地方;
如果使用/etc/security/passwd文件,那么长度最少为7个字符最大8个字符(象LDAP那样使用注册表实施的认证,可以使用超出此最大长度的密码);
不是在字典中可查到的真实单词;
不是键盘上字母的排列模式,例如qwerty;
不是真实单词或已知排列模式的反向拼写;
不包含任何与您自己、家庭或朋友有关的个人信息;
不与从前一个密码的模式相同;
可以较快输入,这样边上的人就不能确定您的密码;
除了这些机制,您可以通过限定密码不可以包含可能猜测到的标准UNIX单词,从而进一步实施更严格的规则。
该功能使用dictionlist,它要求您首先安装bos.data和bos.txt文件集。
建议操作:
要实现前面定义的dictionlist,请编辑/etc/security/users文件中的以下行:
dictionlist=/usr/share/dict/words
/usr/share/dict/words文件使用dictionlist来防止使用标准UNIX单词作为密码。
操作结果:
用户被限制使用强可靠性的密码。
并可能被要求定时检查和更改。
2.3使用/etc/passwd文件
编号:
6009
名称:
使用passwd文件
重要等级:
高
基本信息:
传统上,/etc/passwd文件是用来记录每个拥有系统访问权的注册用户。
/etc/passwd文件以冒号分隔,它包含以下信息:
用户名
已加密密码
用户标识号(UID)
用户的组标识号(GID)
用户全名(GECOS)
用户主目录
登录shell
以下是一个/etc/passwd文件的示例:
root:
!
:
0:
0:
:
/:
/usr/bin/ksh
daemon:
!
:
1:
1:
:
/etc:
bin:
!
:
2:
2:
:
/bin:
sys:
!
:
3:
3:
:
/usr/sys:
adm:
!
:
4:
4:
:
/var/adm:
uucp:
!
:
5:
5:
:
/usr/lib/uucp:
guest:
!
:
100:
100:
:
/home/guest:
nobody:
!
:
4294967294:
4294967294:
:
/:
lpd:
!
:
9:
4294967294:
:
/:
lp:
*:
11:
11:
:
/var/spool/lp:
/bin/false
invscout:
*:
200:
1:
:
/var/adm/invscout:
/usr/bin/ksh
nuucp:
*:
6:
5:
uucploginuser:
/var/spool/uucppublic:
/usr/sbin/uucp/uucico
paul:
!
:
201:
1:
:
/home/paul:
/usr/bin/ksh
jdoe:
*:
202:
1:
JohnDoe:
/home/jdoe:
/usr/bin/ksh
缺省情况下,AIX没有象UNIX系统那样将加密密码存储在/etc/password文件内,而是在缺省情况下存储在/etc/security/password文件(仅root用户可读)内。
AIX使用/etc/passwd中归档的密码来表示密码是否存在或帐户是否被阻止。
检测内容:
/etc/passwd文件由root用户拥有,且必须对所有用户都是可读的,但只有root用户有写许可权,显示为-rw-r--r--。
如果用户标识具有密码,则该密码字段中会有一个!
(感叹号)。
如果用户标识没有密码,则该密码字段中有一个*(星号)。
加密的密码存储在/etc/security/passwd文件中。
以下示例包含/etc/security/passwd文件(基于以上所示的/etc/passwd文件的项)中的最后四个项。
guest:
password=*
nobody:
password=*
lpd:
password=*
paul:
password=eacVScDKri4s6
lastupdate=1026394230
flags=ADMCHG
用户标识jdoe在/etc/security/passwd文件中没有项,因为它在/etc/passwd文件中没有设置密码。
建议操作:
可使用pwdck命令来检查/etc/passwd文件的一致性。
pwdck命令通过检查全部用户或指定用户的定义来验证用户数据库文件中密码信息的正确性。
操作结果:
/etc/passwd的一致性得到保证,用户登录后的身份标识将反映出来。
2.4使用/etc/passwd文件和网络环境
编号:
6010
名称:
网络环境
重要等级:
高
基本信息:
在传统的网络环境中,用户必须在每个系统中有一个帐户才能获得对该系统的访问权。
这通常意味着用户要在每个系统上的每个/etc/passwd文件中有一个项。
然而,在分布式环境中,要确保每个系统都有相同的/etc/passwd文件不是件容易的事情。
要解决这个问题,有若干种方法(包括网络信息系统(NIS)和NIS+)可以使/etc/passwd文件中的信息在整个网络中可用。
检测内容:
确定ypserv和yppasswd等守护程序的正常运行。
NIS中央服务器的/etc/passwd和/etc/group等文件中存放数据的有效性。
建议操作:
将网络范围内的用户认证数据机中存放到NIS主服务器上,并发布到个从服务器上,用户等录通过NIS客户端的支持完成。
操作结果:
用户登录通过NIS服务器上统一的用户资料库的支持来完成。
因此在各个客户端上实现统一透明的登录过程。
2.5隐藏用户名和密码
编号:
6011
名称:
隐藏用户名、密码
重要等级:
高
基本信息:
在某些通信方法中,本地某些文件会暴露出用户的ID和密码。
检测内容:
为了达到更高级别的安全性,请确保用户标识和密码在系统内是不可见的。
.netrc文件包含用户标识和密码。
该文件未进行加密或加密保护,这样它的内容象纯文本一样清楚显示。
建议操作:
要查找这些文件,运行以下命令:
#find`awk-F:
'{print$6}'/etc/passwd`-name.netrc-ls
找到这些文件后,请删除它们。
保存密码的一个更有效的方法是设置Kerberos。
操作结果:
无意暴露密码和用户名的可能降到最低。
2.6设置推荐的密码选项
编号:
6012
名称:
推荐的密码选项
重要等级:
高
基本信息:
恰当的密码管理只有通过用户来实现。
为提供某些额外的安全性,操作系统提供了可配置的密码限制。
它们允许管理员限制用户选择的密码,并强制定期更改密码。
密码选项和扩展用户属性位于/etc/security/user文件中,此文件是包含用户属性节的ASCII文件。
每当为用户定义新密码时,这些限制就会执行。
所有密码限制都是按照用户来定义的。
通过在/etc/security/user文件的缺省节中保存限制,对所有用户执行相同限制。
为了维护密码安全性,所有密码必须受到相似的保护。
管理员还可以扩展密码限制。
使用/etc/security/user文件中的pwdchecks属性,管理员可以将新的子例程(称为方法)添加到密码限制代码中。
这样,本地站点策略可添加到操作系统,并由操作系统执行该策略。
应用密码限制要切合实际。
过于限制的尝试,例如限制密码空间(这将使猜测密码更容易),或强制用户选择难以记忆的密码(用户可能选择会写下密码),都会危及密码安全性。
密码安全性最终要依靠用户。
简单的密码限制结合合理的指导和偶尔的审查(以验证当前密码是否唯一)是最好的策略。
检测内容:
以下列出与/etc/security/user文件中用户密码相关的一些安全属性的推荐值。
属性描述推荐值缺省值最大值
dictionlist验证密码不包含标准UNIX单词/usr/share/dict/words不适用不适用
histexpire密码可重新使用前的星期数260260
histsize可允许的密码重复次数20050
maxage必须更改密码前的最大星期数8052
maxexpired超过maxage后可由用户更改到期密码的最大星期数。
(root用户例外。
)2-152
maxrepeats在密码中可重复字符的最大数目288
minage密码可被更改前的最小星期数。
不应设置此项为
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AIX 系统安全 配置 手册 资料