AIX系统安全设置规范.docx
- 文档编号:5196509
- 上传时间:2022-12-13
- 格式:DOCX
- 页数:23
- 大小:477.90KB
AIX系统安全设置规范.docx
《AIX系统安全设置规范.docx》由会员分享,可在线阅读,更多相关《AIX系统安全设置规范.docx(23页珍藏版)》请在冰豆网上搜索。
AIX系统安全设置规范
AIX系统安全设置规范
一、前言
二、物理安全管理规范
三、网络安全管理规范
四、用户安全管理规范
五、系统安全管理规范
一、前言
本文针对AIX系统安全设置的诸多方面进行介绍和讲解,需要首先说明的是,任何一种操作系统的安全设置,都不会是固定的,往往会根据用户管理需求、环境需求、业务系统需求(例如应用对端口或服务的要求)、审计稽核需求或其它方面的需求来确定操作系统安全设置的策略,从厂商纯技术的角度,他们也会有推荐用户的相应的SecurityCheckList之类的文章,或者类似ITCS104的规范,所以,安全的设置,就要从技术层面和非技术层面,全面而综合的进行考虑和设置。
另外,AIX系统安全的设置,将会涉及到很多系统级文件的修改和定制,强烈建议在修改之前,对所修改的文件做好备份,并对备份结果进行验证,可以利用本地磁盘、磁带或FTP到其他机器等多种备份方式,确保备份可用,甚至可以在修改之前对系统做一个mksysb的全备份。
下面对需要专项备份的重点的文件进行了归纳:
/.profile
/etc/environment
/etc/inetd.conf
/etc/inittab--usechitaborrmitabtomodify
/etc/motd
/etc/netsvc.conf
/etc/profile
/etc/rc.nfs
/etc/rc.tcpip
/etc/securetcpip
/etc/security/login.cfg
/etc/security/sysck.cfg
/etc/security/user
1.1系统安全的主要威胁
1、人为错误
敲错键盘、敲错命令参数(尤其是rm、chown、chmod等命令)、所在非工作目录等人为错误将给系统带来致命的威胁,作为系统管理员,必须谨慎小心避免此类问题,同时在做任何修改和定制操作之前要对系统做好相应的备份,制定好应急策略和方案。
2、非法用户
非法用户通过非法途径进入系统,将同样会给系统安全带来致命的破坏,如何禁止非法用户进入系统,如何构建一个安全可靠的系统平台,将在本章进行详细的论述。
3、好奇心
若缺乏对系统安全的认识,同时对某项操作、某项修改或某个文件的内容具有好奇心,在没有经过允许、确认或验证的基础上进行该项操作,将有可能给系统安全带来威胁甚至造成致命的破坏。
对于系统管理员而言,应该具有很强的安全意识以及风险防范意识。
1.2维护系统安全的目的
计算机安全的目的通常可以通过以下术语来定义:
机密性确保只有授权用户可以访问系统并使用系统资源;
完整性确保只有被授权(可以针对该项内容进行操作)的人,通过验证并确认采用正确可靠的方式,才能够对系统进行修改或定制;
可用性实现安全的目的要以系统对合法的用户及应用保持可用为准则,不要因为安全的设定而影响了应用的运行及合法用户本身的使用。
运行不同应用的不同系统,其安全设定是不同的,我们必须对每一项安全设定规范进行全面和详细的了解及掌握,并能够针对系统的应用本身作出安全的定制。
1.3系统安全设定法则
系统安全的设定通常遵循以下法则:
最小权限赋予最小的(但要满足使用和应用需求)的权限和权力;
最少访问赋予最少的访问权限(正常情况下,应只有经过授权许可的系统管理员拥有系统的管理权限);
安全程度管理使用及应用运行将决定安全规范设定的程度;
法律流程法律的责任同样也是系统安全的设定法则之一,系统的安全规范不仅仅是从系统本身进行考虑,流程的管理以及法律的意识更为重要。
二、物理安全管理规范
物理安全体现在机房管理和机房环境与两个方面,我们在这里仅提出对机房环境和设备安装要求的基本要求:
电源核心生产系统的机器必须使用两路电源供电。
温度25摄氏度±3
相对湿度50%±10%
三、网络安全管理规范
说明:
本部分网络安全仅仅涉及AIX操作系统层面网络安全的设定规范,对于网络设备及线路本身的安全设定与防范不做具体说明。
3.1网络连接限制
禁止从办公及开发网段登录到生产网段。
禁止一台服务器跨越办公网段和生产网段,如果由于应用系统的要求,确实需要一台服务器跨越办公网和生产网,需要通过领导审批,并用防火墙隔离,仅放开应用所需的端口。
3.2网络服务设置
AIX操作系统安装好以后,默认情况下将启用很多网络服务(这些服务可能会造成安全的隐患),如果你不准备使用这些服务,为了安全的目的,一定要将这些服务禁用。
注意:
为了安全定制,在对相关配置文件进行修改之前,强烈建议备份所有要修改的文件,尤其是p/etc/inetd.conf,/etc/inittab,/etc/rc.tcpip等文件。
1、/etc/inittab
AIX操作系统安装好以后,默认情况下将启动以下内容:
A. poibe打印机I/O后端
B. nfs网络文件系统
C. writesrv写注释到ttys
D. httpdlite用于docsearch命令的web服务器
我们可以使用rmitab来删除不必要启动的Service,例如,可以通过下面的命令来删除writeserv服务:
具体请参考下表
#rmitabwritesrv
注意:
修改inittab务必谨慎小心,在修改之前一定要做好备份(甚至可以将该文件ftp到另外的地方),修改之后,建议重新启动系统来验证修改的结果。
2、inetd.conf
平时系统必须关闭不必要的网络服务(包括ftp、telnet、rlogin、rsh等)。
在inetd.conf中,根据情况,保留dtspc,godm(安装配置了hacmp就会有godm进程),或nbu(VERITAS备份软件后台进程)相关的网络服务,如有其他要求再打开相关服务。
具体请参考表
3、rc.nfs
由于我们将禁用nfsservice,所以rc.nfs文件也不需要修改定制了。
4、rc.tcpip 下禁止以下TCP/IP 服务
1)sendmail
2)snmpd
3)hostmidbd
4)snmpmidb
5)aixmidb
5、.rhosts
除安装HACMPV5.1以前版本(不含HACMP5.1)的机器,平时不允许设置可信任机器,即不允许设置/.rhosts、$HOME/.rhosts、/etc/hosts.equiv;HACMP V5.1以前版本的机器设置的可信任机器也必须严格限制在群集机器中。
6、FTP 服务
如果必须使用FTP服务时,系统必须安装IY04477(AIX5.2以后不需要单独安装IY04477),并且
(1)在/etc/inetd.conf文件中增加ftp–d–l–u077。
(2)在/etc/syslog.conf文件中增加daemon.debug/tmp/ftplog
(3)/tmp/ftplog文件保留3年备查,如该文件增长过快需要定期清理,清理时需要先倒入磁带备份。
3.3网络选项设置
为了达到更高的(操作系统层面)网络安全级别,需要使用命令no来调整
相应的网络参数,详见表
补充说明:
/usr/sbin/no–oextendednetstats=0在SMP系统上,如果 extendednetstats=1会导致性能下降。
四、用户安全管理规范
4.1用户控制
1、除必要的系统缺省用户外,生产系统中只允许设立如下用户:
(1)系统管理员使用的普通用户
(2)系统管理员使用的管理员用户
(3)数据库系统安装时必须的用户
(4)应用程序用户
2、禁用没有必要的用户帐户和系统帐户
禁用不必要的用户帐户和系统帐户,比如daemon,bin,sys,adm,lp,uucp,不推荐删除帐户,因为这也将删除帐户信息,比如用户标识和用户名,它们也许仍与系统备份中的数据相关联。
如果使用先前删除了的用户标识创建一个用户,并且在系统上恢复了系统备份,新建用户可能拥有对恢复了的系统的意外的访问权。
4.2删除不必要的默认用户帐号
补充说明:
AnalyzeyoursystemtodeterminewhichIDsareindeednotneeded.There mightalsobeadditionaluserandgroupIDsthatyoumightnotneed.Beforeyour systemgoesintoproduction,performathoroughevaluationofavailableIDs.Removetheaccountsforlpd,guest,uucp,andnuucpfromyoursystem using:
Removetheaccountsforlpd,guest,uucp,andnuucpfromyoursystem using:
#rmuser-p
3、禁止root用户在远程登录,只允许root用户在console登录
4、在生产系统中为该系统的责任管理员另外设置和root用户同权限(UID=0,GID=0)的管理员账号,作为平时系统管理用。
该管理员账号必须通过SSH进行远程登录,不允许使用传统的Telnet进行远程登录。
5、生产系统中的DBA帐户不允许远程登录,必须通过普通用户SU到DBA帐户或由管理员帐户直接SU到DBA帐户。
6、普通用户SU到超级用户帐号和DBA帐号的时候必须使用带全路径的su命令,即/usr/bin/su。
7、更改登录屏幕的欢迎消息
为防止在登录屏幕上显示某些信息,请编辑/etc/security/login.cfg文件中的 herald参数。
缺省的herald包含随登录提示一起显示的欢迎消息。
要直接编辑文件,请打开/etc/security/login.cfg文件并更新herald参数如下:
注:
要使得该系统更安全,请将logindisable和logindelay变量的值设置为大于0(#>0)。
8、更改公共桌面环境的登录屏幕
在缺省情况下,CDE登录屏幕也显示主机名和操作系统版本,要防止显示此信息,请编辑/usr/dt/config/$LANG/Xresources文件,其中$LANG指的是安装在您的机器上的本地语言。
A、检查本地语言环境的方法:
#echo$LANG
B、编辑/usr/dt/config/$LANG/Xresources 文件
#vi/usr/dt/config/$LANG/Xresources
找到此行进行编辑修改,记得去掉该行开头的两个叹号并修改黑体部分
******************************************************************
*Dtlogin*greeting.labelString:
Welcometo%%LocalHost%*
*******************************************************************
在我们的示例中,假定$LANG设置为en_US,编辑好后,将该文件复制到/etc/dt/config/en_US目录中.
C、重新启动CDE
#ps–ef|grepdt检查当前系统所有DT相关进程
#kill-9
#rc.dt重新启动CDE
这个时候重新登录CDE,可以看到修改已经生效。
9、隐藏输入的用户名
AIX5.2之前版本的操作系统中,在AIX的登录界面中,输入的用户名都是可见的,而且在提示输入用户口令的显示信息中也会将对应的用户名列示出来。
而在一些对安全性要求极高的场合中,显示出用户的名称会被认为系统存在安全漏洞。
在AIX5.2的版本中,新增加的功能可以使系统管理员选择在用户登录时不显示相应的用户名。
该项设置可以被配置为系统的缺省设置或者是只对指定端口生效的设置。
缺省的情况下,在没有更改系统的设置时,当一个用户以“test9”的用户名 telnet远程登录至系统时,用户名“test9”将会被系统显示两次如下:
telnet(server1)
AIXVersion5
(C)CopyrightsbyIBMandbyothers1982,2000.
login:
test9
test9'sPassword:
在AIX5.2版本的操作系统中,对登录的用户名进行保护的相关属性保存在 /etc/security/login.cfg文件中。
“pwdprompt”属性定义了当用户进行登录时请求输入口令的提示信息的内容。
“usernameecho”属性则决定了在用户登录系统时和显示相关的提示信息时是否显示出用户名,该属性值为布尔值。
如果 “usernameecho”属性的值被设置为“false”,那么在用户登录系统时和显示相关的提示信息时,用户名都将不被显示。
如果“usernameecho”属性的值被设置为“true”(系统的缺省值),那么相应的用户名信息将被正常显示。
如果只是想对某一个特定的端口设置这些属性,则必须为指定的端口(如:
/dev/lft0)创建一个新的标准,并且为指定的端口增加相应的属性设置。
如果希望这些属性的设置对所有的端口都有效,则需要将这些属性的设置放在缺省的标准中。
对特定端口的标准中的属性设置将会覆盖掉缺省标准中的属性的设置。
(1)下面的例子显示出,设置整个系统的口令输入提示内容为:
Password。
#chsec-f/etc/security/login.cfg-sdefault-apwdprompt="Password:
"
在上面的命令执行后,当用户telnet远程登录至系统时,系统显示的提示信息内容如下:
telnet(server1)
AIXVersion5
(C)CopyrightsbyIBMandbyothers1982,2000.
login:
root
Password:
(2)在下面显示的例子中,口令输入的提示内容被设置回系统的缺省值, “usernameecho”属性值被设置为“false”。
从用户登录的显示结果可以看到,用户名被系统隐藏了。
#chsec-f/etc/security/login.cfg-sdefault-apwdprompt=
#chsec-f/etc/security/login.cfg-sdefault-ausernameecho=false
在上面的命令执行后,当用户telnet远程登录至系统时,系统显示的提示信息内容如下:
telnet(server1)
AIXVersion5
(C)CopyrightsbyIBMandbyothers1982,2000.
login:
*****'sPassword:
...
当用户使用passwd命令更改用户的口令时,系统显示的提示信息内容如下:
$passwd
Changingpasswordfor"*****"
*****'sOldpassword:
*****'sNewpassword:
Enterthenewpasswordagain:
(3)下面的例子则说明了如何为特定的端口(如:
/dev/lft0)设置“usernameecho”
属性:
#chsec-f/etc/security/login.cfg-s/dev/lft0-ausernameecho=false
4.3环境变量
由于用户的HOME目录下的.profile文件在用户登录时就被执行,若该文件对其他人是可写的,则系统的任何用户都能修改此文件,使其按自己的要求工作,这样可能使得其他用户具有该用户相同的权限。
绝不要把当前工作目录排在PATH路径表的前边,那样实际是招引特洛依木马。
当系统管理员用su命令进入root时,他的PATH将会改变,就让PATH 保持这样,以避免特洛依木马的侵入。
1、设置点:
A、在生产系统中,用户profile文件($HOME/.profile)的PATH环境变量设置不允许包含当前路径“.”;
B、PATH环境变量的设置必须先搜系统目录再搜索用户目录。
C、root所用的PATH环境变量与系统安全性关系重大。
D、如果应用程序没有特殊需要,用户的SHELL设置成Kornshell。
E、设置超时自动退出变量TMOUT的值为1800。
F、用户权限掩码UMASK的设置使用系统默认的027。
G、在/etc/profile或/etc/environment文件中设置EDITOR=/usr/bin/vi
2. 用户环境的合法性检查
以下介绍进行用户环境合法性检查的三个命令:
pwdck验证本机认证信息的合法性,检查/etc/passwd和 /etc/security/passwd的一致性,以及与/etc/security/login.cfg和 /etc/security/user的一致性;
usrck验证用户定义的合法性,检查/etc/passwd、/etc/security/user、/etc/security/limits和/etc/security/passwd中的用户信息,同时也检查/etc/group和/etc/security/group,以保证数据的一致性。
grpck验证组的合法性,检查/etc/group、/etc/security/group和 /etc/security/user之间的数据一致性。
上述命令由root或security组的成员执行,用于在修改用户配置之后做清理工作。
3、用户的.profile 文件
由于用户的HOME目录下的.profile文件在用户登录时就被执行.若该文件对其他人是可写的,则系统的任何用户都能修改此文件,使其按自己的要求工作。
这样可能使得其他用户具有该用户相同的权限,这将有可能给系统带来致命的威胁。
所以要确保自己的.profile除自己外对他人都不可读写.,确保HOME目录对任何人不可写。
另外:
除了信任的用户外,不要运行其他用户的程序。
在自己的PATH中,将系统目录放在前面。
不要离开自己登录的终端。
用CTRLD或exit退出后,在断开与系统的联接前等待看到login:
提示.
4.4安全性文件
1、存放用户属性和控制访问许可权的文件如下:
/etc/passwd中包含合法用户(不含口令)
/etc/group中包含合法组;
/etc/security中包含普通用户无权访问的安全性文件;
/etc/security/passwd中包含用户口令;
/etc/security/user中包含用户属性、口令约束等;
/etc/security/limits中包含用户使用资源限制;
/etc/security/environ中包含用户环境设置;
/etc/security/login.cfg中包含登录设置;
/etc/security/group中包含组的属性。
2、安全性日志
安全性日志是系统安全的重要保障,有经验的系统管理员经常使用其做安全性检查。
su命令执行的结果存放在/var/adm/sulog中;用户登录和退出登录的记录存放在/var/adm/wtmp和/etc/utmp中,可用who命令查看;非法和失败登录的记录存放在/etc/security/failedlogin中,同样用who命令查看,未知的登录名记为 unknown。
4.5用户口令设置规范
1、口令管理
(1)设置root口令的有效期,设置管理员用户的口令1个月过期,业务用户的口令更改视业务要求而定。
系统管理员可以强制业务用户定期做口令修改。
(2)root用户、管理员用户、DBA用户的口令长度必须是8位,口令中必须含有至少4位字母和1位数字;普通用户的口令长度不少于6位,口令中必须含有至少4位字母和1位数字。
不要取用个人信息(如生日,名字,反向拼写的登录名,房间中可见的东西),普通的英语单词也不好(因为可用字典攻击法),口令中最好有一些非字母(如数字,标点符号,控制字符等)。
(3)按照下面的范例要求设置默认口令策略,对于制度中要求和默认口令策略不同的用户单独修改其口令规则。
说明:
建议“可以使用口令字典来限制系统管理员及其它用户使用常用字符作为口令”,后面将谈到如何设置口令字典从而禁止系统管理员使用常用字符作为口令。
2、保持口令的安全
不要将口令写在可能被其他人看到的纸上或记录在计算机文件中.
不要将口令存于终端功能键或MODEM的字符串存储器中
不要选取显而易见的信息作口令.
不要让系统管理员之外的人知道.
不要交替使用两个口令.
不要在不同系统上使用同一口令.
不要让人看见自己在输入口令.
4.6使用口令字典来限制系统管理员使用常用字符作为口令的方法:
首先确认系统已经安装了 bos.dataand bos.txt这两个filesets
确认方法:
lslpp–l|grepbos.data
lslpp–l|grepbos.txt
A、编辑/etc/security/user文件
vi/etc/security/user
B、设置 dictionlist参数
增加dictionlist=/usr/share/dict/words
说明:
对于swords文件的内容,可由系统管理员不断增加能够想到的常用的口令,或者常规口令字典,例如chinamobile,chinaunix、loveunix之类,从而不允许设置该文件中的字符串作为口令。
4、设置默认口令策略的范例:
补充说明:
SettingUserPasswordOptions
4.7运行定时作业的用户限制
如果系统管理员使用cron或at运行后台作业,就必须做如下内容:
确认只有root用户在cron.allow和at.allow文件里;
从目录var/adm/cron中删除cron.deny和at.deny文件;
确保cron和at作业的所有者是root并且只能由root可写。
注意:
规定只有root用户可以设置定时作业,所有业务用户需要设置定时作业,需要提出申请,并由root用户进
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AIX 系统安全 设置 规范