APP下载

基于S3A3G3三级等保标准的 Linux系统主机安全加固

2018-11-12秦道祥高润生秦锐

中国教育信息化·高教职教 2018年8期
关键词:等级保护网络安全

秦道祥 高润生 秦锐

摘 要:落实信息系统网络安全等级保护制度是高校信息化建设的工作之一。等保测评过程中主机安全普遍存在问题,本文从黑客攻防的角度,以S3A3G3三级等保要求为标准,提出Linux操作系统主机安全加固的配置解决方案,能顺利地完成信息系统等级保护工作并通过测评,信息系统安全防护能力得到有效提升。

关键词:网络安全;等级保护;Linux;主机加固

中图分类号:TP309 文献标志码:A 文章编号:1673-8454(2018)15-0088-04

一、引言

随着《中华人民共和国网络安全法》的实施,信息系统等级保护工作受到各单位越来越多的重视。开展信息安全等级保护工作可以保障网络免受干扰、破坏或者未经授权的访问,防止网络数据泄露或者被窃取、篡改,解决信息安全面临的威胁和存在的问题,提高信息安全保障能力和水平,促进信息化建设健康发展。主机安全是等级保护测评工作中的重要组成部分,笔者单位2017年度测评了7个信息系统,在差距分析整改报告里,主机安全测评最高的43分,最低的21分,主机安全普遍存在重大安全隐患。由于操作系统是承载应用业务的基础,修复过程中可能会导致业务中断或升级失败等多种问题,存在一定风险,是等级保护整改过程中的难点。笔者在等保工作中探索出使用部署安全加固模板机后再对应用业务进行迁移的方式、完成信息系统的主机安全加固的方法,得到了测评中心肯定,为等保系统顺利通过测评提供了解决方案。本文以Centos 6.5操作系统为例,基于S3A3G3标准,提出对Linux服务器主机整改安全加固的解决的方案。

二、S3A3G3三级等级保护要求

根据《计算机信息系统安全保护等级划分准则》(GB 17859-1999)和《信息安全技术信息系统安全等级保护定级指南》(GB/T2224一2008),信息系统安全保护等级分5个安全等级。信息系统安全保护等级由两个要素决定:等级保护对象受到破坏时所侵害的客体和对客体造成的侵害的程度,主要包括业务信息安全(S类),关注的是保护数据在存储、传输、处理过程中不被泄漏、破坏和免受未授权的修改;系统服务安全(A类)关注的是保护系统连续正常运行,避免因对系统的未授权修改、破坏而导致系统不可用。简单说,S就是系统信息泄露或数据被篡改的影响程度,A就是服务器宕机的影响程度,G类(通用安全保护类)取这2个值中级别高的,定为最终的安全等级。根据等级保护对象受到破坏时的侵害和造成侵害的程度,高校和一般单位的信息系统最高只能定为三级,即S3A3G3的级别。

三级等保的要求为:应能够在统一安全策略下防护系统免受来自外部有组织的团体、拥有较为丰富资源的威胁源发起的恶意攻击、较为严重的自然灾难,以及其他相当危害程度的威胁所造成的主要资源损害;能够发现安全漏洞和安全事件;在系统遭到损害后,能够较快恢复绝大部分功能。三级等级保护基本要求六大类290项,其中主机安有7类32项具体要求。等保主机安全基本要求框架结构如图1所示。

三、操作系统安全防御思路

Linux是一种开放源代码、免费使用和自由传播的操作系统,它能运行主要的Unix工具软件、应用程序和网络协议,它继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。高校多数的信息系统都是部署在Linux操作系统上。CentOS 是一个基于Red Hat Linux 提供的可自由使用源代码的企业级Linux发行版本,可以提供一个安全、低维护、稳定、高预测性、高重复性的 Linux 环境,本文以Centos 6.5版本为例。

操作系统管理计算机的资源,是用户与计算机硬件之间的接口,控制整个系统运行,是计算机、网络及信息系统安全的基础。操作系统可以实现用户身份标识和鉴别、访问控制、最小特权的管理、信道保护、安全审计、内存存储保护、文件保护等功能。由于其在保护信息安全的特殊地位,已成为黑客攻击和利用的重要目标。操作系统的重要性如图2所示。

做好网络安全防护,用白帽的话来说“不知攻,焉知守”,成功防御的一个基本组成部分就是要了解敌人,了解黑客攻击的过程和方法,才能制订正确的防御策略。通常黑客攻击归纳为信息收集、获得权限、保持连接、消除痕迹4个步骤。在信息收集阶段,黑客一般会使用Nmap、Masscan、AWVS等自动化扫描工具获取服务器的IP、开放端口、操作系统类型、安装的应用等,然后根据所收集到的信息寻找服务器潜在的漏洞。攻击阶段,当黑客探测到了足够的系统信息,对系统的安全弱点了解后就会发动攻击,常用的攻击方法有利用漏洞攻击、暴力破解、木马后门攻击、缓冲区溢出等;一旦漏洞存在,会利用Metasploit、NC等工具进行shell上传,从而控制服务器。保持连接阶段,一般黑客攻击成功后除了窃取服务器中的有用信息,终极目的是能够控制目标系统,攻击后会在系统上添加特权账号,或在服务器上留下木马,或添加后门程序,从而避开操作系统的安全控制措施,达到长期控制服务器的目的。消除痕迹阶段,黑客在实现攻击的目的后,通常会采取删除日志、临时文件和账号来隐藏入侵的痕迹,躲避取证与溯源,逃避惩罚。网络世界瞬息万变,黑客各有不同,他们的攻击流程也不会全相同,以上是黑客一般情况下采用的攻击步骤。

等保目的除了合规之外,主要是减少服务器存在的漏洞,避免信息系統受到入侵。我们网络安全管理人员除了解等级保护的要求外,还必须了解黑客工具和技术,并利用这些知识来设计应对各种攻击的防御框架,做好主机安全加固总体规划。针对Linux操作系统主机防护制订以下安全策略:①最小特权原则,最小化安装操作系统,仅安装需要的服务,对于系统中的每个用户和程序“知其所需”,尽可能少地使用特权,拒绝给予超过其所需权限以外的任何特权。②权限分离,系统的管理权限由多个用户承担,不使用多余的账户,避免共享账户的存在。③完整的访问控制机制,操作系统对每个访问都要进行合法的检查,防止非法存取。④日志审计机制,除了做正常用户访问的审计之外,还要做好未经授权、被拒绝访问的访问记录。⑤其它,包括关闭不必要的服务、关闭不必要的端口、备份敏感文件、禁止建立空连接、下载最新补丁等。

四、Linux操作系统主机安全加固方案

1.操作系统安装

(1)最小化安装、配置网络(配置方法略)。

(2)开启SSH服务,并把SSH默认端口22修改成5002端口:

# service sshd start

修改/etc/ssh/sshd_config文件,在下面加上一行保存:

“ port5002”

(3)安装补丁升级至最新:

# yum install update

# cat /etc/*release //最后版本 CentOS release 6.9 (Final)

(4)openssh 版本升级到7.5p1 (此过程升级错误可能导致无法远程管理,虚拟机升级前建议做快照):

# yum install -y gcc openssl-devel pam-devel rpm-build

# wget http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.5p1.tar.gz

# tar -zxvf openssh-7.5p1.tar.gz

# cd openssh-7.5p1

# ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-zlib --with-md5-passwords--with-tcp-wrappers

# make && make install

修改配置文件/etc/ssh/sshd_config,允许root登录:

“PermitRootLogin yes ”前的#号去掉

(5)修改hostname:

# hostname=your_hostname

(6)系统Banner:

# echo “Authorized users only!” >/etc/redhat-release

# echo “Authorized users only!”>/etc/issue

2.身份鉴别

(1)身份标识唯一性,进行/etc/passwd和/etc/shadow文件的完整性相同检查,不存在相同uid 的用户,不使用过期的账号和无用的账号,限制daemon、shutdown、games、ftp、nobody等默认用户。

(2)身份标识和鉴别:创建“newuser”普通用户,仅允许“newuser”用户su为root用户:

# useradd newuser

# usermod -G wheel newuser

修改配置文件cat /etc/pam.d/su 文件:

“auth required pam_wheel.so use_uid”前的“#”号去掉

(3)远程管理加密:使用ssh协议登录,禁止使用 telnet、ftp等明文网络协议。

3.口令设置及登录失败处理

(1)口令长度:至少10位,且口令需包括数字、小写字母、大写字母和特殊符号4类元素中的至少3类:

修改配置文件 cat /etc/pam.d/system-auth,在下面加上一行保存:

“password requisite pam_cracklib.so retry=3 minlen=10 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 difok=3”

(2)口令锁定策略:需设置连续认证失败次数超过5次,锁定该账号5分钟:

修改配置文件cat /etc/pam.d/system-auth ,在下面加上一行保存:

“auth required pam_tally.so onerr=fail deny=5 unlock_time=300”

(3)口令生存期:賬户口令的生存期不得长于180天,两次修改密码的最小间隔时间 7天、密码最小长度 10位、密码过期前7天开始提示修改;

修改配置文件cat /etc/login.defs, 在下面加上几行保存:

“PASS_MAX_DAYS 180”

“PASS_MIN_DAYS 7”

“PASS_MIN_LEN 10”

“PASS_WARN_AGE 7”

(4)口令历史有效次数:不重复使用最近3次已使用过的口令。

修改配置文件 cat /etc/pam.d/system-auth,在下面加上一行保存:

“password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok remember=3 ”

4.安全审计

启用auditd服务,启用日志服务

# service auditd start

# service rsyslog start

根据具体的业务需要,在/etc/audit/auditd.conf、/etc/audit/ audit.rules文件里配置审计内容:重要用户行为、系统资源的异常使用和重要系统命令的使用;审计记录:日期和时间、类型、主体;标识、客体标识、事件的结果等;最后根据需要对审计记录保护,配置查看日志访问权限。

5.其它

(1)禁止root用户远程登录

修改配置文件 /etc/ssh/sshd_config

把“PermitRootLogin yes” 改为“PermitRootLogin no”

(2)设置命令行界系统输入超时10分钟,自动退出:

修改配置文件cat /etc/profile,在下面加上一行保存:

“export TMOUT=600”

(3)禁ping:

修改配置文件cat /etc/sysctl.conf 在下面加上一行保存:

“ net.ipv4.icmp_echo_ignore_all=1”

(4)禁止Traceroute探测:

# iptables -A FORWARD -p icmp -j DROP

(5)精简开机自启动服务,开启审计、系统日志、防火墙等服务:

# for sun in `chkconfig --list|grep 3:on|awk '{print $1}'`;do chkconfig --level 3 $sun off;done

#f or sun in auditd rsyslog sshd network iptables ip6tables;do chkconfig --level 3 $sun on;done

(6)安装zabbix主机监控客户端(配置方法略)。

(7)安装杀毒软件(配置方法略)。

6.系统应用部署完成后需要配置

(1)设置文件访问权限:

修改配置文件 /etc/profile, 在下面加上一行保存:

“umask=027”

(2)建议修改以下重要文件和目录权限(根据需要自行配置):

文件 权限值

/etc/group文件 644

/etc/passwd文件 644

/etc/xinetd.conf文件 600

/etc/shadow文件 400

/etc/services文件 644

/etc/security目录 600

/etc/rc6.d文件 750

/tmp文件 750

/etc/ 750

(3)根据服务器日志情况进行日志策略调整(等保要求相关日志保存不少于六个月)。

(4)单个用户多重并发会话、最大并发会话连接数等限制策略配置。

(5)制订备份策略保证数据安全,定期进行数据异地备份(例如每天/周对数据库和重要代码进行备份)。

7.清理系统安装配置信息

# yum clean all

# echo > /var/log/wtmp

# echo > /var/log/secure

# echo > /var/log/messages

# echo > /var/log/cron

# echo > /var/log/dmesg

# echo > /var/log/lastlog

# echo > /var/log/rpmpkgs

# echo > /var/log/utmp

# echo > /var/log/yum

# echo > /var/log/btmp

# echo > ./.bash_history

# history –c

经过加固后的Centos操作系统,使用铱迅漏洞扫描系统(Yxlink-NVS-7000)和绿盟远程安全评估系统(RSAS-6等保专用版)均未检查出低、中、高危漏洞,也未扫描出系统和其它应用的指纹信息。这样黑客在信息收集阶段,可以成功避免服务器成为攻击目标;即使有黑客找到服务器,由于短时间找不出有价值的漏洞,从黑客攻击成本考虑,也会舍弃转向去攻击有漏洞的服务器;再者,因为服务器采取了开啟防火墙、关闭不必要端口和进程、加强用户和访问控制、开启审计策略等防护措施,在黑客攻击后面的获得权限、保持连接、消除痕迹阶段也会有很好的防护效果。

五、结束语

操作系统处在最底层,是所有其他软件的基础,它在解决网络安全上也起着基础性、关键性的作用,没有操作系统的安全支持,信息系统的安全就缺乏了根基。本文以S3A3G3三级等保标准,介绍了Linux操作系统安全加固配置,全方位考虑网络安全的事前防御、事中监控、事后分析的安全管理整体需求,提出的Linux操作系统主机安全加固方案,并且能顺利通过专业测评中心的测评,是一种操作上可行、经济上省钱,并且能真正起到信息系统安全防护作用,确保信息系统安全合规,真正落实信息安全等级保护工作的解决方案。目前本方案已成为我校《信息系统网络信息安全配置基线》的一部分,主机加固方法得到全面推广,数据中心所有新安装的服器模板机以此为标准进行预配置,信息系统安全防护能力得到有效提升。

参考文献:

[1]GB17859-1999.计算机信息系统安全保护等级划分准则 [S].

[2]GB/T22240-2008.信息安全技术信息系统安全等级保护定级指南[S].

[3]GB/T 22239-2008.信息系统安全等级保护基本要求[S].

[4]吴世忠等编著.信息安全技术[M].北京:机械工业出版社,2014.4.

[5](美)Shon Harris著,张胜生、张博、付业辉译. CISSP认证考试指南(第6版)[M].北京:清华大学出版社,2014.1.

[6]周伯恒编著.CentOS 6.X系统管理实战宝典[M].北京:清华大学出版社,2013.

(编辑:王天鹏)

猜你喜欢

等级保护网络安全
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?