aix系统安全加固参考信息Word格式.docx
《aix系统安全加固参考信息Word格式.docx》由会员分享,可在线阅读,更多相关《aix系统安全加固参考信息Word格式.docx(19页珍藏版)》请在冰豆网上搜索。
![aix系统安全加固参考信息Word格式.docx](https://file1.bdocx.com/fileroot1/2023-1/11/12dd3bdb-0e3f-4b1e-ab45-72e57a98ba36/12dd3bdb-0e3f-4b1e-ab45-72e57a98ba361.gif)
1.4密码字典
使用密码字典检查新密码
使用
Dictionlist=/usr/share/dict/words
1.5系统密码使用时间
密码使用时间
密码定期更改间隔设置为12周或更短
Maxage=12
1.6对失败登录的次数进行限制
对失败登录的次数进行限制
允许的失败登陆次数设置为5次或5次以下
Loginretries=5
1.7密码重复使用次数设置
密码重复使用次数设置为至少8次
histsize=8
1.8SSH服务IP,端口,协议,允许密码错误的次数,网络中允许打开的会话数
SSH服务IP,端口,协议,最大允许认证次数,网络中允许打开的会话数
cat/etc/ssh/sshd_config
Port22//SSH服务端端口为22
ListenAddress0.0.0.0//SSH服务端监听地址为0.0.0.0
SyslogFacilityAUTHPRIV//系统登录功能有加密
LoginGraceTime0//限制用户必须在指定的时间内认证成功,0表示不限制,2m为两个月内。
MaxAuthTries6//指定每个连接最大允许的认证次数,默认值是6。
如果失败认证的次数超过这个数值的一半,连接将被强制断开,且会生成额外的失败日志消息。
MaxSessions10//指定每个网络连接允许打开会话的最大数目,默认10
MaxStarups10//最大允许保持多少个未认证的连接,默认10。
达到限制后,将不再接受新连接,除非先前的连接认证成功或超过LoginGraceTime的限制。
修改完成后,重启ssh服务
servicesshdrestart
1.9root账号远程登录设置
不允许root直接登录及相关配置
使用命令“vi/etc/ssh/sshd_config”编辑配置文件
#cat/etc/ssh/sshd_config
PermitRootLoginyes//是否允许root登录。
PasswordAuthenticationyes//密码是否有认证选yes有
ChallengeResponseAuthenticationno//攻击响应认证否
GSSAPIAuthenticationyes//通用安全服务应用程序接口认证是
UsePAMno//如果启用了PAM,那么必须使用root才能运行sshd。
设置“PermitRootLogin”的值为no
1.10防止任何人使用su命令连接root用户
不想任何人都可以用“su”命令成为root或只让某些用户有权使用“su”命令
1.11系统Banner设置
通过修改系统banner,避免泄漏操作系统名称,版本号,主机名称等,并且给出登陆告警信息
设置系统Banner的操作如下:
在/etc/security/login.cfg文件中,在default小节增加:
herald="
ATTENTION:
Youhaveloggedontoasecuredserver..Allaccesseslogged.\n\nlogin:
"
2操作系统安全-访问控制
2.1修改帐户口令,更改默认帐户的访问权限
严格限制默认帐户的访问权限,重命名系统默认帐户,修改这些帐户的默认口令
使用命令cat/etc/password文件来查看默认账户,并使用命令“cat/etc/shadow”查看文件中的口令是否为默认口令。
使用root账户进行登录,使用命令“passwdusernamepassword”来修改用户的口令。
对于无法重命名的系统默认帐号,为增强主机系统的安全性,建议使用命令“smituser”,将与业务无关的系统默认用户进行锁定;
此操作具有一定的危险性,需要与管理员确认此项操作不会影响到业务系统的登录,以免影响正常业务应用。
2.2删除多余的、过期的帐户,避免共享帐户的存在
删除多余的、过期的帐户,避免共享帐户的存在
方法一:
可使用命令“smituser”,将多余的、过期的帐户,共享帐户等系统默认用户进行锁定;
使用命令“smituser”解锁不必要的账号
使用命令“smituser”删除多余、过期的账号
方法二:
相关用户
account_locked=true
2.3限制超级管理员远程登录
限制具备超级管理员权限的用户远程登录。
远程执行管理员权限操作,应先以普通权限用户远程登录后,再切换到超级管理员权限账。
系统当前状态:
执行lsuser-arloginroot命令,查看root的rlogin属性并记录
实施步骤
:
参考配置操作:
(1)、查看root的rlogin属性:
#lsuser-arloginroot
(2)、禁止root远程登陆:
#chuserrlogin=falseroot
还原root可以远程登陆,执行如下命令:
#chuserrlogin=trueroot
3操作系统安全-入侵防范
3.1仅安装需要的应用程序,关闭不需要的服务和端口
1.询问相关维护人员,主机系统是除装有正常业务应用所需要的程序外,是否还安装有与业务应用无关的其它程序;
2.询问相关维护人员并获取《授权安装软件清单》文档,查看当前操作系统中是否安装有非清单内的应用软件。
3.询问相关维护人员,是否关闭了除正常业务应用之外的所有服务与端口,具体检查方法:
使用命令“netstat–an”查看开放的端口;
3.2关闭不必要的服务
关闭不必要的服务
(9)要开启审计服务auditd
3.3网络访问控制策略
1.访谈系统管理员,是否制定了严格的访问控制策略,包括是否限制登录用户,对远程登录的IP是否有限制,采用哪种远程登录方式等。
查看hosts.allow、hosts.deny是否对某些服务,某些IP进行了限制。
#cathosts.allow
Sshd:
210.13.218.*:
allow//表示允许210ip段连接shhd服务
#cathosts.deny
all:
deny//表示拒绝所有sshd远程连接
当hosts.allow与hosts.deny相冲突时以hosts.allow为准。
4操作系统安全-资源控制
4.1根据安全策略设置登录终端的空闲超时断开会话或锁定
根据安全策略设置登录终端的空闲超时断开会话或锁定
可使用命令“cat/etc/profile|grepTMOUT”查看超时的时间设置。
使用命令“vi/etc/profile”修改配置文件,添加行“TMOUT=180”,单位为秒,即超时时间为3分钟。
超时时间的设置需要与应用管理员进行确认,以免影响正常业务应用。
4.2文件创建初始权限
文件创建初始权限
设置umask值
umask077#适用root用户,其它用户不可读
umask022#适用非root用户,其它用户可读不可写
4.3设置合适的历史命令数量
设置合适的历史命令数量
编辑“/etc/profile”文件,确保HISTFILESIZE和HISTSIZE都设成了一个比较小的值。
HISTSIZE=80
HISTFILESIZE=80
4.4系统磁盘剩余空间充分满足近期的业务需求
1.检查用户是否建立有服务器备份存储及介质空间管理制度文档,检查其中是否对主机系统的磁盘空间的大小做出明确的要求;
2.检查主机系统的磁盘空间,查看各个分区是否有充足的剩余磁盘空间来满足近期的业务需求。
使用命令“df–hl”命令来查看当前磁盘占用空间情况
建议如下:
1.建立服务器备份存储及介质空间管理制度文档,并在其中对程序及重要数据的备份、对主机系统的磁盘空间的大小等项目做出明确的要求;
2.管理员定期检查所有主机系统的磁盘占用空间及其它资源占用情况,如果发现磁盘空间不够,由相关技术人员提出申请,进行磁盘空间的扩充。
4.5检查并记录操作系统的分区情况和文件系统利用率
检查并记录操作系统的分区情况和文件系统利用率
df–h可以查看相关信息:
Filesystemsizeusedavailuse%mountedon
文件系统大小已用可用使用率挂载点
当使用率过高时要注意了!
5操作系统安全—日志
5.1日志功能开启
启用日志记录功能
syslog的配置主要通过/etc/syslog.conf配置,日志信息可以记录在本地的文件当中(如/var/adm/messages)或远程的主机上(@hostname)。
startsrc-ssyslogd启动syslog服务
stopsrc-ssyslogd停止syslog服务
5.2失败登录日志监控
通过系统日志的方式记录失败的登录尝试
系统记录失败的用户登录
/etc/security/failedlogin
Who/etc/security/failedlogin查看
5.3syslog日志等级的安全配置
syslog日志等级的安全配置
syslog配置文件要求:
修改文件
安全设置
/etc/syslog.conf
配置文件中包含一下日志记录:
*.err
/var/adm/errorlog
*.alert
/var/adm/alertlog
*.cri
/var/adm/critlog
auth,authpriv.info
/var/adm/authlog
5.4安全审计策略
安全审计策略
方法:
查看系统日志配置,执行:
#cat/etc/syslog.conf
查看syslogd的配置,并确认日志文件是否存在
*.info;
mail.none;
news.none;
authpriv.none;
cron.none/var/log/messages
//系统日志默认存放在/var/log/messages
cron..*/var/log/cron//cron日志默认存放在/var/log/cron
authpriv.*/var/log/secure//安全日志默认存放在/var/log/secure
5.5系统日志记录
查年系统日志记录
执行:
cat/etc/log/secure//记录pop3,telnet,ssh,ftp登陆信息的文件
last–R//查看前50次登陆系统用户的信息
cat/etc/log/messages//查看系统发生的错误信息(包括登陆信息)
5.6启用记录cron行为日志功能和cron/at的使用情况
启用记录cron行为日志功能和cron/at的使用情况
cron/At的相关文件主要有以下几个:
/var/spool/cron/crontabs存放cron任务的目录
/var/spool/cron/cron.allow允许使用crontab命令的用户
/var/spool/cron/cron.deny不允许使用crontab命令的用户
/var/spool/cron/atjobs存放at任务的目录
/var/spool/cron/at.allow允许使用at的用户
/var/spool/cron/at.deny不允许使用at的用户
使用crontab和at命令可以分别对cron和at任务进行控制。
#crontab-l查看当前的cron任务
#at-l查看当前的at任务
6操作系统安全-系统安全
6.1补丁管理
系统补丁安装标准
执行oslevel–r命令或instfix-i|grepML命令,查看补丁当前安装的状况和版本。
使用instfix–aik命令来完成补丁的安装操作。
注意:
(1)、在AIX系统中涉及安全的补丁包有以下几种:
推荐维护包(RecommendedMaintenancePackages):
由一系列最新的文件集组成的软件包,包含了特定的操作系统(如AIX5.2)发布以来的所有文件集的补丁。
关键补丁Criticalfixes(cfix):
自推荐维护包之后,修补关键性漏洞的补丁。
紧急补丁Emergencyfixes(efix):
自推荐维护包之后,修补紧急安全漏洞的补丁。
(2)、补丁安装原则:
在新装和重新安装系统后,必须安装最新的推荐维护包,以及该最新推荐维护包以来的所有单独的cfix和efix。
日常维护中如果厂家推出新的RM、cfix、efix则按照原补丁维护管理规定进行补丁安装。
应根据需要及时进行补丁装载。
补丁更新要慎重,可能出现硬件不兼容,或者影响当前的应用系统,安装补丁之前要经过测试和验证。
6.2检查并记录系统开启的网络端口
检查并记录系统开启的网络端口
netstat–antp(查看开启的tcp端口)
netstat–anup(查看开启的udp端口)
其中:
Proto显示连接使用的协议
LocalAddress查看本地地址及端口
6.3关闭无效服务和启动项
关闭无效服务和启动项
查看/etc/inittab、/etc/rc.tcpip和/etc/rc.nfs等文件并记录当前配置;
查看/etc/inetd.conf文件并记录当前的配置
(一)、rc.d
AIX系统中的服务主要在/etc/inittab文件和/etc/rc.*(包括rc.tcpip,rc.nfs)等文件中启动,事实上,/etc/rc.*系列文件主要也是由/etc/inittab启动。
同时,AIX中所有启动的服务(至少与业务相关的)都可以同过SRC(SystemResourceManager)进行管理。
可以有三种方式查看系统服务的启动情况:
(1)、使用vi查看/etc/inittab、/etc/rc.tcpip和/etc/rc.nfs等文件;
(2)、使用lssrc和lsitab命令;
(3)、通过smit查看和更改。
注:
SRC本身通过/etc/inittab文件启动。
lssrc-a列出所有SRC管理的服务的状态
lsitab-a列出所有由/etc/inittab启动的信息,和cat/etc/inittab基本相同,除了没有注释。
根据管理员所提供的服务列表与当前系统中所启动的服务列表相对比,如果发现与业务应用无关的服务,或不必要的服务和启动项,则关闭掉或禁用;
也可以对服务做适当配置。
(二)、inetd.conf
由INETD启动的服务在文件/etc/inetd.conf定义(inetd本身在/etc/rc.tcpip中由SRC启动),因此查看INETD启动的服务的情况有两种方法:
(1)、使用vi查看/etc/inetd.conf中没有注释的行;
(2)、使用lssrc命令。
lssrc-l-sinetd查看inetd的状态以及由INETD启动的服务的状态;
refresh-sinetd更改/etc/inetd.conf文件后重启inetd。
建议关闭由inetd启动的所有服务;
如果有管理上的需要,可以打开telnetd、ftpd、rlogind、rshd等服务。
启动或停止inetd启动的服务(例如ftpd):
(1)、使用vi编辑/etc/inetd.conf,去掉注释(启动)或注释掉(停止)ftpd所在的行;
(2)、重启inetd:
refresh-sinetd。
6.4仅允许特定IP允许访问服务
仅允许特定IP允许访问服务
#cat/etc/hosts.allow
#cat/etc/hosts.deny
7操作系统安全---其它服务安全
7.1FTP配置文件
FTP配置文件
(1)若没有开启FTP服务,则不用检查此项。
#netstat-autl
(2)检查FTP服务配置情况,执行:
#cat/etc/vsftpd/vsftpd.conf
查看是否允许匿名登录。
文件:
anonymous_enable=YES//允许匿名用户访问
local_enable=YES//允许本地用户访问
write_enable=YES//具有写权限
local_umask=022//本地用户创建文件或目录的掩码
connect_from_port_20=YES//开启20端口
(3)查看上述配置文件的属性,确保不为其他人可写,执行:
ls-l/etc/vsftpd.ftpusers/etc/vsftpd/vsftpd.conf
7.2R族文件
通过扫描工具,查看系统。
或执行ps–ef|grepservice_name查询是否开启R族服务
7.3NFS文件系统配置情况检查
NFS文件系统配置情况检查
若没有开启NFS服务,则不用检查此项
检查共享出的目录列表,执行:
showmount-e
检查NFS文件系统配置文件/etc/exports,确保文件中没有使用通配符,尽量不要赋予目录写权限,执行:
cat/etc/exports
ls-al/etc/exports
它的格式一般是:
[共享的目录][主机名1或IP1(参数1,参数2)][主机名2或IP2(参数3参数4)]
7.4FTP用户及服务安全
设置系统中的帐户是否可以通过ftp登陆操作
(1)根据系统管理员提供允许ftp登陆操作的系统帐户列表,并与系统中当前的允许ftp登陆操作的用户相比对。
设置是否允许系统帐户通过ftp方式登陆:
#vi/etc/ftpusers
默认情况下,该文件不存在。
(2)将所有的系统用户和其他希望被禁止ftp登录的用户添加到该文件中(每行一个用户名)。
在无特殊需求的情况下,以下列表中的用户名是不允许ftp登陆操作的:
root,daemon,bin,sys,adm,uucp,guest,nobody,lp,help等