2)查看telnet是否开启,默认未开启:
systemctl status telnet.socket
d) 应采用口令、密码技术、生物技术等两种或两种以上组合的鉴别技术对用户进行身份鉴别,且其中一种鉴别技术至少应使用密码技术来实现。Linux操作系统目前仅有“用户名+口令”一种鉴别方式,一般是不符合的,目前常见的有通过数字证书Ukey来实现双因子认证。或借助于堡垒机来进行多重认证,降低安全风险。 二、访问控制a) 应对登录的用户分配账户和权限;检查重要文件和目录权限设置是否合理,Linux系统对文件的操作权限包括四种:读(r,4);写(w,2);执行(x,1);空(-,0),文件的权限分为属主(拥有者)、属组、其它用户和用户组的权限。配置文件权限值不能大于644,对于可执行文件不能大于755。
ls -l 重要文件名如/etc/passwd
b) 应重命名或删除默认账户,修改默认账户的默认口令;输入 more /etc/shadow 得知用户表,见身份鉴别的a项,查看是否有默认账户且还在使用,centos默认可用账户只有root,其他账户虽不会被使用,但是应禁用和删除。一般默认存在很多无用账户。
root作为Linux系统的重要默认用户,一般要求禁止远程登录,检查命令如下:
more /etc/ssh/sshd_config
默认为允许,不符合。 c) 应及时删除或停用多余的、过期的账户,避免共享账户的存在;根据上一项的检查结果,并与配合人员访谈各在用账户的使用情况。默认账户games、news、 ftp、 1p等应被被禁用,特权账号halt、shutdown应被删除。默认符合。 d) 应授予管理用户所需的最小权限,实现管理用户的权限分离;在实际生产中,Linux系统很难完全满足该项要求,因为超级管理员用户root一旦被禁用会影响系统和应用的正常使用。但仍应严格限制具有root级权限的账户,其他用户仅应通过使用sudo被赋予root级权限。通过以下命令核查root级权限都授予哪些账户。管理员权限仅分配给root用户。
命令:more /etc/sudo.conf
此项默认符合。 e) 应由授权主体配置访问控制策略,访问控制策略规定主体对客体的访问规则;对于Linux主机,是由系统管理员通过root账户为其它账户分配权限,所以该项主要检查权限分配是否合理,访问控制策略配置是否符合安全要求。 此项默认符合。 f) 访问控制的粒度应达到主体为用户级或进程级,客体为文件、数据库表级;Linux系统已经对一些默认账户和系统文件分配了不同的权限,也就是说主体已经达到了用户级,客体已经达到了文件级,该项主要检查新建用户和文件是否存在权限过大、权限滥用的情况。
Linux操作系统默认关闭SELinux服务,开启后会影响系统和业务应用的正常使用。也可通过对操作系统内核进行二次开发或使用加固软件来实现强制访问控制。
more /etc/selinux/config
三、安全审计a) 应启用安全审计功能,审计覆盖到每个用户,对重要的用户行为和重要安全事件进行审计;查看审计服务状态看到审计服务默认已开启:
service auditd status 或者 service rsyslog status
auditd进程主要记录安全信息及对系统安全事件进行追溯,rsyslog进程用于记录系统中的各种信息(例如硬件报警信息和软件日志。Linux 在安全审计配置文件 /etc/audit/audit.rules中配置安全时间审计规则)
b) 审计记录应包括事件的日期和时间、用户、事件类型、事件是否成功及其他与审计相关的信息;输入以下命令查看日志信息是否足够详细:tail -20 /var/log/audit/audit.log
默认符合。
c) 应对审计记录进行保护,定期备份,避免受到未预期的删除、修改或覆盖等;检查审计记录保存的目录,验证是否能被普通用户轻易删除,访谈管理员对审计记录的保护措施和备份策略,是否使用syslog或snmp方式将操作系统日志发送到日志服务器,检查审计记录是否备份不少于六个月。 d) 应对审计进程进行保护,防止未经授权的中断。测试使用非审计管理员中断审计进程,是否能成功,询问和检查是否安装第三方审计进程保护软件。 四、入侵防范a) 应遵循最小安装的原则,仅安装需要的组件和应用程序;查看系统当前版本,是否及时安装安全补丁:
uname -a
查看操作系统中已安装的程序包,检查是否有目前不需要的组件和应用程序:
yum list installed b) 应关闭不需要的系统服务、默认共享和高危端口;输入以下命令检查系统当前运行的服务:
systemctl list-unit-files | grep enable
如果安装了samba可能存在默认共享,如果未安装就无默认共享。 c) 应通过设定终端接入方式或网络地址范围对通过网络进行管理的管理终端进行限制;Linux系统中/etc/hosts.allow控制可以访问本机的IP地址,/ete/hosts.deny控制禁止访问本机的IP。实际测评中基本都像下图未在此处进行配置,多在防火墙或堡垒机上进行限制。
more /etc/hosts.allow
more /etc/hosts.deny