linux系统安全配置要求.docx
《linux系统安全配置要求.docx》由会员分享,可在线阅读,更多相关《linux系统安全配置要求.docx(37页珍藏版)》请在冰豆网上搜索。
![linux系统安全配置要求.docx](https://file1.bdocx.com/fileroot1/2023-5/26/96fe66c5-ee3a-4d71-97a7-26c5e92fa975/96fe66c5-ee3a-4d71-97a7-26c5e92fa9751.gif)
linux系统安全配置要求
linux系统安全配置要求
1.安全配置要求
1.1.创建/etc/shadow口令文件
配置项名称
设置影子口令模式
检查方法
执行:
#more/etc/shadow
查看是否存在该文件
操作步骤
1、执行备份:
#cp–p/etc/passwd/etc/passwd_bak
2、切换到影子口令模式:
#pwconv
回退操作
执行:
#pwunconv
#cp/etc/passwd_bak/etc/passwd
风险说明
系统默认使用标准口令模式,切换不成功可能导致整个用户管理失效
1.2.建立多组,将用户账号分配到相应的组
配置项名称
建立多组,将用户账号分配到相应的组
检查方法
1、执行:
#more/etc/group
#more/etc/shadow
查看每个组中的用户或每个用户属于那个组
2、确认需要修改用户组的用户
操作步骤
1、执行备份:
#cp–p/etc/group/etc/group_bak
2、修改用户所属组:
#usermod–ggroupusername
回退操作
执行:
#cp/etc/group_bak/etc/group
风险说明
修改用户所属组可能导致某些应用无常运行
1.3.删除或锁定可能无用的
配置项名称
删除或锁定可能无用的
检查方法
1、执行:
#more/etc/passwd
查看是否存在以下可能无用的:
hpsmh、named、uucp、nuucp、adm、daemon、bin、lp
2、与管理员确认需要锁定的
操作步骤
1、执行备份:
#cp–p/etc/passwd/etc/passwd_bak
2、锁定无用:
#passwd-lusername
回退操作
执行:
#cp/etc/passwd_bak/etc/passwd
风险说明
锁定某些用户可能导致某些应用无常运行
1.4.删除可能无用的用户组
配置项名称
删除可能无用的用户组
检查方法
1、执行:
#more/etc/group
查看是否存在以下可能无用的用户组:
lpnuucpnogroup
2、与管理员确认需要删除的用户组
操作步骤
1、执行备份:
#cp–p/etc/group/etc/group_bak
2、删除无用的用户组:
#groupdelgroupname
回退操作
执行:
#cp/etc/group_bak/etc/group
风险说明
删除某些组可能导致某些应用无常运行
1.5.检查是否存在空密码的
配置项名称
检查是否存在空密码的
检查方法
执行下列命令,检查是否存在空密码的
logins–p
应无回结果
操作步骤
1、执行备份:
#cp–p/etc/passwd/etc/passwd_bak
#cp-p/etc/shadow/etc/shadow_bak
2、锁定空密码或使用passwd命令设置复杂密码
#passwd–lusername
回退操作
执行:
#cp–p/etc/passwd_bak/etc/passwd
#cp-p/etc/shadow_bak/etc/shadow
风险说明
锁定某些可能导致某些应用无常运行
1.6.设置口令策略满足复杂度要求
配置项名称
设置口令策略满足复杂度要求
检查方法
1、执行下列命令,检查是否存在空密码的
#logins–p
应无返回结果
2、执行:
#more/etc/default/security
检查是否满足以下各项复杂度参数:
MIN_PASSWORD_LENGTH=6
PASSWORD_MIN_UPPER_CASE_CHARS=1
PASSWORD_MIN_LOWER_CASE_CHARS=1
PASSWORD_MIN_DIGIT_CHARS=1
PASSWORD_MIN_SPECIAL_CHARS=1
操作步骤
1、执行备份:
#cp–p/etc/default/security/etc/default/security_bak
#cp–p/etc/passwd/etc/passwd_bak
2、执行下列命令,编辑/etc/default/security
#vi/etc/default/security
修改以下各项复杂度参数:
MIN_PASSWORD_LENGTH=6
PASSWORD_MIN_UPPER_CASE_CHARS=1
PASSWORD_MIN_LOWER_CASE_CHARS=1
PASSWORD_MIN_DIGIT_CHARS=1
PASSWORD_MIN_SPECIAL_CHARS=1
回退操作
执行:
#cp/etc/default/security_bak/etc/default/security
#cp/etc/passwd_bak/etc/passwd
风险说明
可能导致非root用户修改自己的密码时多次不成功
1.7.设置口令生存周期
配置项名称
设置口令生存周期
检查方法
执行:
#more/etc/default/security
查看是否存在以下各项参数:
PASSWORD_MAXDAYS=90
PASSWORD_WARNDAYS=28
操作步骤
1、执行备份:
#cp–p/etc/default/security/etc/default/security_bak
#cp–p/etc/passwd/etc/passwd_bak
2、执行下列命令,编辑/etc/default/security
#vi/etc/default/security
修改以下各项参数:
PASSWORD_MAXDAYS=90
PASSWORD_WARNDAYS=28
回退操作
执行:
#cp/etc/default/security_bak/etc/default/security
#cp/etc/passwd_bak/etc/passwd
风险说明
可能在密码过期后影响正常使用及维护
1.8.设定密码历史,不能重复使用最近5次(含5次)已使用的口令
配置项名称
应配置设备,使用户不能重复使用最近5次(含5次)已使用的口令
检查方法
执行:
#more/etc/default/security
查看是否存在以下参数:
PASSWORD_HISTORY_DEPTH=5
操作步骤
1、执行备份:
#cp–p/etc/default/security/etc/default/security_bak
#cp–p/etc/passwd/etc/passwd_bak
2、执行下列命令,编辑/etc/default/security
#vi/etc/default/security
修改以下参数:
PASSWORD_HISTORY_DEPTH=5
回退操作
执行:
#cp/etc/default/security_bak/etc/default/security
#cp/etc/passwd_bak/etc/passwd
风险说明
低风险
1.9.限制root用户远程登录
配置项名称
root用户远程登录限制
检查方法
执行:
#more/etc/securetty
检查是否有下列行:
Console
执行:
#more/opt/ssh/etc/sshd_config
检查是否有PermitRootLoginno
操作步骤
1、执行备份:
#cp–p/etc/securetty/etc/securetty_bak
#cp-p/opt/ssh/etc/sshd_config/opt/ssh/etc/sshd_config_bak
2、新建一个普通用户并设置高强度密码:
#useraddusername
#passwdusername
3、禁止root用户远程登录系统:
#vi/etc/securetty
去掉console前面的注释,保存退出
#vi/opt/ssh/etc/sshd_config
将PermitRootLogin后的yes改为no
回退操作
执行:
#cp/etc/securetty_bak/etc/securetty
#cp-p/opt/ssh/etc/sshd_config_bak/opt/ssh/etc/sshd_config
风险说明
严重改变维护人员操作习惯,必须新建一个能够执行交互式登录的普通用户并能够通过su提升权限,可能带来新的威胁
1.10.检查passwd、group文件权限设置
配置项名称
检查passwd、group文件权限设置
检查方法
执行:
#ls–l/etc/passwd/etc/group
操作步骤
1、执行备份:
#cp–p/etc/passwd/etc/passwd_bak
#cp–p/etc/group/etc/group_bak
2、修改文件权限:
#chmod644/etc/passwd
#chmod644/etc/group
回退
执行:
#cp/etc/passwd_bak/etc/passwd
#cp/etc/group_bak/etc/group
风险说明
权限设置不当可能导致无法执行用户管理,并可能造成某些应用运行异常
1.11.系统umask设置
配置项名称
系统umask设置
检查方法
执行:
#more/etc/profile
检查系统umask值
操作步骤
1、执行备份:
#cp-p/etc/profile/etc/profile_bak
2、修改umask设置:
#vi/etc/profile
将umask值修改为027,保存退出
回退操作
执行:
#cp/etc/profile_bak/etc/profile
风险说明
umask设置不当可能导致某些应用无确自动创建目录或文件,从而运行异常
2.访问、认证安全配置要求
2.1.远程登录取消telnet采用ssh
配置项名称
远程登录取消telnet采用ssh
检查方法
查看SSH、telnet服务状态:
#ps–elf|grepssh
#ps–elf|greptelnet
SSH服务状态查看结果为:
online
telnet服务状态查看结果为:
disabled
操作步骤
1、备份#cp–p/etc/inetd.conf/etc/inetd.conf_bak
2、修改/etc/inetd.conf文件,将telnet行注释掉
#telnetstreamtcpnowaitroot/usr/lbin/telnetdtelnetd
3、重启服务#inetd-c
4、安装ssh软件包,通过#/opt/ssh/sbin/sshdstart来启动SSH。
回退操作
执行:
#cp–p/etc/inetd.conf_bak/etc/inetd.conf
启动telnet
#/usr/lbin/telnetdstart
停止SSH
#/opt/ssh/sbin/sshdstop
风险说明
影响维护人员操作习惯,需要重启服务
2.2.限制系统FTP登录
配置项名称
限制root、daemon、bin、sys、adm、lp、uucp、nuucp、nobody、hpdb、useradm等系统FTP登录
检查方法
执行:
#cat/etc/ftpd/ftpusers
查看具体的禁止FTP登陆系统的用户
操作步骤
1、执行备份:
#cp-p/etc/ftpd/ftpusers/etc/ftpd/ftpusers_bak
2、禁止用户FTP登录系统:
#vi/etc/ftpd/ftpusers
每一个一行,添加以下禁止FTP登录
root、daemon、bin、sys、adm、lp、uucp、nuucp、nobody、hpdb、useradm
回退操作
执行:
#cp/etc/ftpd/ftpusers_bak/etc/ftpd/ftpusers
风险说明
禁止某些登录FTP可能导致某些应用无常运行
2.3.配置允许访问inetd服务的IP围或主机名
配置项名称
配置允许访问inetd服务的IP围或主机名
检查方法
执行:
#cat/var/adm/inetd.sec
查看有无类似logindeny192.54.24.5cory.berkeley.edutestlan配置
操作步骤
1、执行备份:
#cp-p/var/adm/inetd.sec/var/adm/inetd.sec_bak
2、添加允许访问inetd服务的IP围或主机名:
#vi/var/adm/inetd.sec
按照如下格式添加IP围或主机名
servicename{allow|deny}{hostaddrs|hostnames|netaddrs|netnames}
回退操作
执行:
#cp/var/adm/inetd.sec_bak/var/adm/inetd.sec
风险说明
需确认IP信任围,设置不当会导致网络服务通信异常
2.4.禁止除root外使用at/cron
配置项名称
禁止除root外使用at/cron
检查方法
执行:
#cd/var/adm/cron
#catcron.allow
#catat.allow
查看是否存在root;
执行:
#catcron.deny
#catat.deny
检查是否存在cron.deny和at.deny文件,若存在,应删除。
操作步骤
1、执行备份
#cd/var/adm/cron
#cp-pcron.denycron.deny_bak
#cp-pat.denyat.deny_bak
#cp-pcron.allowcron.allow_bak
#cp-pat.allowat.allow_bak
2、添加root到cron.allow和at.allow,并删除cron.deny和at.deny。
#cd/var/adm/cron
#rm-fcron.denyat.deny
#echoroot>cron.allow
#echoroot>at.allow
#chownroot:
syscron.allowat.allow
#chmod400cron.allowat.allow
回退操作
#cd/var/adm/cron
#cp-pcron.deny_bakcron.deny
#cp-pat.deny_bakat.deny
#cp-pcron.allow_bakcron.allow
#cp-pat.allow_bakat.allow
风险说明
除root外不能使用at/cron,可能影响某些应用。
2.5.设定连续认证失败次数超过6次(不含6次)锁定该账号
配置项名称
配置当用户连续认证失败次数超过6次(不含6次),锁定该用户使用的账号。
检查方法
执行:
#cat/etc/default/security
检查是否存在AUTH_MAXTRIES=6
操作步骤
1、执行备份
#cp-p/etc/default/security/etc/default/security_bak
2、执行下列命令,设置最大登录认证重试次数锁定为6次
echoAUTH_MAXTRIES=6>>/etc/default/security
回退操作
#cp-p/etc/default/security_bak/etc/default/security
风险说明
root账号也在锁定的限制围,一旦root被锁定,就需要光盘引导,因此该配置要慎用。
3.文件系统安全配置要求
3.1.重要目录和文件的权限设置
配置项名称
重要目录和文件的权限设置
检查方法
执行以下命令检查目录和文件的权限设置情况:
#ls–l/etc/
#ls–l/tmp/
#ls–l/etc/default/
#ls-l/etc/rc.config.d/
操作步骤
1、执行备份:
使用cp命令备份需要修改权限的文件或目录
2、权限修改:
使用chmod命令修改文件或目录权限
回退操作
使用cp命令恢复被修改权限的文件或目录
或使用chmod命令恢复权限
风险说明
修改某些重要的配置文件的权限可能导致系统功能或应用异常
3.2.检查没有所有者的文件或目录
配置项名称
检查没有所有者的文件或目录
检查方法
执行:
#find/\(-nouser-o-nogroup\)-execls-al{}\;
咨询管理员找到的文件或目录是否应用所需
操作步骤
1、执行备份:
使用cp命令备份没有所有者的文件或目录
2、使用chmod命令添加属主或删除没有所有者的文件或目录:
#rm–rffilename
回退操作
使用cp命令恢复被删除的没有所有者的文件或目录
风险说明
执行检查会大量消耗系统资源,需要确认无所有者的文件的具体用途
4.网络服务安全配置要求
4.1.禁止NIS/NIS+服务以守护方式运行
配置项名称
禁止NIS/NIS+服务以守护方式运行NetworkInformationSystem
检查方法
执行:
#more/etc/rc.config.d/namesvrs
查看该文件中是否存在以下参数:
NIS_MASTER_SERVER=0
NIS_SLAVE_SERVER=0
NIS_CLIENT=0
NISPLUS_SERVER=0
NISPLUS_CLIENT=0
操作步骤
1、执行备份:
#cp-p/etc/rc.config.d/namesvrs/etc/rc.config.d/namesvrs_bak
2、编辑/etc/rc.config.d/namesvrs文件,设置参数:
#ch_rc-a-pNIS_MASTER_SERVER=0-pNIS_SLAVE_SERVER=0-pNIS_CLIENT=0-pNISPLUS_SERVER=0-pNISPLUS_CLIENT=0/etc/rc.config.d/namesvrs
回退操作
#cp-p/etc/rc.config.d/namesvrs_bak/etc/rc.config.d/namesvrs
风险说明
NIS/NIS+服务无法自动启动
4.2.禁用打印服务以守护方式运行
配置项名称
禁止打印服务以守护方式运行
检查方法
执行:
#more/etc/rc.config.d/tps
查看该文件中是否存在XPRINTSERVERS="''"
#more/etc/rc.config.d/lp
查看该文件中是否存在LP=0
#more/etc/rc.config.d/pd
查看该文件中是否存在PD_CLIENT=0
操作步骤
1、执行备份:
#cp-p/etc/rc.config.d/tps/etc/rc.config.d/tps_bak
#cp-p/etc/rc.config.d/lp/etc/rc.config.d/lp_bak
#cp-p/etc/rc.config.d/pd/etc/rc.config.d/pd_bak
2、设置参数:
#ch_rc-a-pXPRINTSERVERS="''"/etc/rc.config.d/tps
#ch_rc-a-pLP=0/etc/rc.config.d/lp
#ch_rc-a-pPD_CLIENT=0/etc/rc.config.d/pd
回退操作
#cp-p/etc/rc.config.d/namesvrs_bak/etc/rc.config.d/namesvrs
风险说明
打印服务无法自动启动
4.3.禁用SENDMAIL服务以守护方式运行
配置项名称
禁止SENDMAIL服务以守护方式运行
检查方法
执行:
#more/etc/rc.config.d/mailservs
查看该文件中是否存在SENDMAIL_SERVER=0
操作步骤
1、执行备份:
#cp-p/etc/rc.config.d/mailservs/etc/rc.config.d/mailservs_bak
#cp-p/var/spool/cron/crontabs/root/var/spool/cron/crontabs/root_bak
2、设置参数:
#ch_rc-a-pSENDMAIL_SERVER=0/etc/rc.config.d/mailservs
#cd/var/spool/cron/crontabs
#crontab-l>root.tmp
#echo'0****/usr/lib/sendmail-q'>>root.tmp
#crontabroot.tmp
#rm-froot.tmp
回退操作
#cp-p/etc/rc.config.d/mailservs/etc/rc.config.d/mailservs_bak
#cp-p/var/spool/cron/crontabs/root/var/spool/cron/crontabs/root_bak
风险说明
导致无法收发,需确认服务器用途
4.4.禁用不必要的标准启动服务
配置项名称
禁用不必要的标准启动服务
检查方法
检查SNAplus2服务,执行:
#more/etc/rc.config.d/snaplus2
查看该文件中是否存在START_SNAPLUS=0、START_SNANODE=0、START_SNAINETD=0
检查多播路由服务,执行:
#more/etc/rc.config.d/netdaemons
查看该文件中是否存在MROUTED=0、RWHOD=0、DDFA=0、START_RBOOTD=0
检查DFS分布式文件系统服务,执行:
#more/etc/rc.config.d/dfs
查看该文件中是否存在DCE_KRPC=0、DFS_CORE=0、DFS_CLIENT=0、DFS_SERVER=0、DFS_EPISODE=0、EPIINIT=0、DFSEXPORT=0、BOSSERVER=0、DFSBIND=0、FXD=0、MEMCACHE=0、DFSGWD=0、DISKCACHEFORDFS=0
检查逆地址解析服务,执行:
#more/etc/rc.config.d/netc