APP下载

浅谈Linux系统的安全基线研究

2018-10-10王庆刚黄龙

数字技术与应用 2018年7期

王庆刚 黄龙

摘要:随着信息化技术的高速发展,服务器系统的安全性变得越来越重要,特别是被广泛应用于服务器的Linux操作系统。本文从当前Linux系统面临的安全问题出发,针对口令容易被破解、用户权限过高、文件传输协议设置不当和其他的一些安全问题等方面进行了分析和研究,并从安全基线配置的角度给出了提高Linux系统安全性的新思路和方法,对保障服务器的系统安全具有重要意义。

关键词:Linux;系统安全性;安全基线配置

中图分类号:TP316 文献标识码:A 文章编号:1007-9416(2018)07-0205-02

在计算机网络技术迅速发展的时代背景下,信息安全对服务器系统的安全性要求也越来越高。Linux系统作为一种广泛应用于各类服务器的开源免费操作系统,其稳定性和性价比方面无与伦比的优势使它受到众多用户的青睐,也正是因为Linux操作系统在当前很多政府部门、企业服务器中的广泛应用,使得它成为黑客攻击的重点目标,Linux系统的安全问题已成为一个亟待解决的问题。尽管Linux操作系统自身保留了一定的系统安全特性,但在安装时并没有进行相关的安全设置,造成系统安全基线配置成为影响系统安全的一个重大薄弱环节。安全基线是Linux系统中最基本的安全要求,但同时也在Linux安全系统中扮演着重要角色,本文针对Linux系统中面临的一系列安全问题,通过对系统安全基线配置的研究,切实提高了Linux系统的安全性能。

1 Linux系统面临的安全挑战

1.1 存在弱口令风险

口令是计算机安全系统的一个不可或缺的部分,是保护计算机系统的前沿阵地。由于Linux操作系统多数采用的是静态口令认证技术,许多黑客利用简单的密码尝试登录设备,口令猜测可以利用社会工程学通过猜测系统可能使用的口令进行,也可以通过计算机编程的方式操控软件程序自动地进行多次猜测。过短项目组成单一的密码相对比较容易被黑客通过以上的两种暴力手段破解,从而导致系统关键数据文件流失,严重影响系统的正常运转,甚至会造成巨大的财产损失。这种源于管理人员对系统的设置过于简单产生的漏洞是可以避免的,但却由于管理人员的惰性可能致使系统存在巨大的安全隐患。

1.2 系统用户权限管理不规范

系统通常有明确的用户权限管理,用户仅可以访问被授权范围的特定资源。Linux操作系统中的用户一般分为三类:root用户、虚拟用户和普通用户。root用户是系统管理员用户,此用户拥有系统的最高权限,可以操作系统中任何文件和命令;虚拟用户也被称为伪用户,这类用户是系统自身拥有的,也是系统运行不可缺少的用户,但不具有登录系统的能力;普通用户是由系统管理员添加,能够正常登录Linux系统,但只能操作系统管理员分配给它宿主目录的内容。在实际管理工作中,系统管理员往往会给普通用户分配一些特殊权限进行系统的管理,但如果Linux系统特殊用户权限分配过高,即普通用户权限过高,一旦黑客攻陷了这些普通用户账号就能够通过它们向操作系统发起攻击,这可能会对整个系统造成不可估量的损失。

1.3 文件传输协议设置不合理

使用FTP进行文件传输需要一个用户名和相应的口令,而在互联网的每个FTP服务器系统中都申请一个帐号是不现实的,于是Internet提供了匿名FTP服务用来解决这个问题。匿名FTP服务充分体现了网络的开放性,用户可以通过网络连接到远程服务器主机上,并且从中下载文件,而不需要在该服务器上拥有帐号。当远程服务器提供匿名FTP服务时,会指定某些文件對网络开放,允许网络用户匿名访问和存取,而系统中的其他文件则禁止被用户访问。但匿名FTP服务也存在一些安全问题,例如用于文件传输的FTP协议的安全配置不合理,服务器中的其他私密信息就非常可能被暴露出来,从而被黑客获取和利用。

1.4 其他的安全问题

Linux操作系统中某些业务操作需要通过普通用户su进入root,但是如果普通用户能够轻松跳转到root,那么系统的安全性就会大大降低;另外,Linux系统中若被植入了木马病毒文件,这可能导致不需要密码就可以登录本地系统的所有非root帐号,从而盗取服务器中的文件信息。

2 Linux系统安全基线的研究

针对以上Linux系统中面临的各种安全挑战,下面我们对Linux系统的安全基线进行了详细的分析和研究,并通过合理的安全配置来解决这些安全问题,不断提高Linux系统的安全性。

2.1 对帐号口令进行安全配置

2.1.1 检查口令的最小长度

在Linux系统中,控制密码长度的配置文件为login.defs文件,该文件在目录/etc下,在配置文件中可以手动添加关键字。对于采用静态口令认证技术的设备,口令长度至少8位,配置的匹配正则表达式为:/^\s*PASS_MIN_LEN\s+(\w+),匹配规则为:>=8,配置方法就是在文件/etc/login.defs中设置PASS_MIN_LEN不小于标准值。

2.1.2 设置系统密码复杂度策略

在设置了口令最小长度后,可能存在诸如1234567890、qwertyuiop等符合口令最小长度,但复杂性较低的口令。这些口令由于构成比较单一,都属于弱口令的范畴,即仅包含简单数字和字母等元素。为了确保系统的安全性,在Linux系统中应该对密码的复杂度进行配置,要求口令由大写字母、小写字母、数字和特殊字符的随机组合构成。Redhat系统中修改/etc/pam.d/system-auth文件, Suse10、Suse11修改/etc/pam.d/common-password文件,对属性ucredit=-1、lcredit=-1、dcredit=-1、ocredit=-1都进行选择,并追加到password requisite pam_cracklib.so后面。

2.1.3 设置口令的生存周期

对于采用静态口令认证技术的设备,即使按照上文对口令最小长度和复杂度都进行合规的配置,仍然可能存在暴露给其他人的风险,所以需要对口令进行定期修改。/etc目录下的login.defs文件可以实现对口令生存周期的设置。通常对于静态口令来说,一般生存周期应该不超过90天,配置的匹配正则表达式为:^\s*PASS_MAX_ DAYS\s+(\w+),匹配规则为:<=90,即在文件/etc/login.defs中设置PASS_MAX_DAYS不大于标准值。

2.2 对用户权限进行设置

2.2.1 检查用户目录默认访问权限

在Linux系统中,需要对不同权限、不同类型的用户设置不同的umask值,以此来防止不同组的用户或同组的不同用户对某一特定用户创建的文件进行访问、修改等。在创建新文件或目录时应设置合理的访问权限,配置的匹配正则表达式为:^\s*[u|U][m|M][a|A][s|S][k|K]\s+(\w+),匹配规则为:=027,配置方法是在login.defs文件的末尾增加UMASK 027来将访问权限设置为750。

2.2.2 设置命令行界面超时退出

用户对Linux系统进行操作的过程中,如果因临时事务暂时离开而没有及时注销账号,此时可能发生非法用户对系统进行错误操作的情况,因此非常有必要对命令行界面设置超时退出。对于具备字符交互界面的设备,配置适当的帐户定时自动注销功能,该配置的匹配正则表达式为:.+,匹配规则为:=<=300,配置方法是在root账户状态下执行vi/etc/profic命令添加export TMOUT=300配置语句,重新登录后即可激活超时退出功能。

2.2.3 限制root用户的远程登录

为了保证Linux系统的安全,只允许root账号的本地登录,而不能通过ssh或telnet等方式进行远程登录,该配置的匹配正则表达式为:/^\s*PermitRootLogin\s+(\w+)/i和/(auth\s*required\s *pam_securetty.so)/,配置方法是将/etc/ssh/sshd_config文件中PermitRootLogin的值修改为no和修改/etc/pam.d/login文件中的auth required pam_securetty.so。

2.3 对网络协议进行安全配置

2.3.1 禁止匿名用户登录FTP

主要是禁止系统的匿名VSFTP和WU-FTP用户登录,配置方法是在/etc/vsftpd.conf文件中设置anonymous_enable=NO,同时在/etc/password文件中删除相应的ftp用户。

2.3.2 禁止root用户登录FTP

该配置主要是禁止系统的root账号登录VSFTP和WU-FTP,具体配置方式是在/etc/ftpusers文件中添加root用户。

2.4 Linux系统其他安全项的配置

2.4.1 限制普通用户su到root

一些普通用戶在业务操作中需要用到root权限,此时要为该普通用户开通su到root的权限,并对其他用户禁止su到root。配置方法是在/etc/pam.d/su文件的开头添加auth sufficient pam_rootok.so和auth required pam_wheel.so group=wheel,并通过usermod -G wheel username命令将用户添加到wheel组,即可实现对特定用户开通su到root的权限。

2.4.2 删除潜在的危险文件

Linux系统中的.rhosts、.netrc、hosts.equiv等类型文件都属于危险文件,需要手动进行发现和删除。可通过执行命令find/-maxdepth 3-name .rhosts/.netrc/hosts.equiv来发现系统中存在的危险文件,然后执行命令mv .rhosts/.netrc/hosts.equiv) 完成危险文件的手动清除。

3 结语

Linux作为目前应用最广泛的服务器端操作系统,其系统安全性也受到用户的重点关注。本文通过对安全基线配置的研究可以切实提高Linux系统的安全防护能力,这有效解决了当前Linux系统所面临的诸多安全问题,降低了系统遭受攻击的风险。网络技术的快速发展必然会给Linux系统带来新的安全挑战,但只要我们积极应对并不断优化系统的安全基线配置,必定能够逐步完善Linux系统的安全性,为用户提供一个良好的系统环境。

参考文献

[1]卿斯汉,曾山松,杜超.Windows安全基线研究[J].信息网络安全,2015,(3):6-13.

[2]王艳丽.浅谈Linux用户管理[J].电子科技,2010,23(5):122.

[3]余柏山.Linux系统管理与网络管理[M].清华大学出版社,2014.

[4]彭锦强.Linux系统root密码的破解与防护研究[J].中国化工贸易,2017,(6):252.