位置:海鸟网 > IT > linux/Unix >

Linux操作系统下的安全问题研究

错新网讯

1 Linux操作系统

Linux系统支持多用户、多进程、多线程、实时性较好、功能强大而稳定,可以运行在Intel处理器、DEC的Alphas、Motorola的

M68k处理器、Sun Sparc、PowerPC、MIPS等平台上, 能运行的硬件平台目前是最多的。象现代Unix操作系统那样,它也具有虚

拟内存、共享库、命令装载、执行代码之间共享的拷贝一执行一写盘页操作(Cow机制)、优秀的内存管理和TCP/IP网络等。Linux与其它操作系统一样,也存在安全隐患。而随着它在全世界范围内的普及使用,目前针对其的攻击越来越多,安全事件也呈上升趋势,形势非常严峻。要想在技术日益发展、纷繁芜杂的网络环境中,保证Linux系统的安全性,需要切实做好事

前预防以及事后恢复的工作。


2 对Linux操作系统安全缺陷的思考

2.1 系统上的缺陷

Linux是一个自由、开放的操作系统软件,其最初设计目标并不是一种安全操作系统, 因此Linux在安全方面存在一些不

足、漏洞和后门。

(1)进行管理的文件操作划分为读、写、执行3种操作,其他操作不包括在内。使许多系统文档一旦可写,就可以被任意修

改。在Linux系统中,有许多的重要文件,如/bir/login,如果入侵者修改该文件,那么他再次登录时。就会毫无困难。对设备的操

作与文件相似。

(2)进程终止后其运行时使用的内存等资源未能重置或清空,造成可能的泄密。

(3)未标识的隐蔽存储信道存在,成为入侵系统或截获机密信息的薄弱环节。

(4)对用户的初始登录和鉴别,未能提供可信通信路径来传输用户数据,导致鉴别用户身份的数据例如密码的泄露。

(5)系统内核可以轻易插入模块。系统内核允许插入模块能使用户扩展Linux操作系统的功能,使Linux系统更加模块化,同时这也是十分危险的。模块插入内核后,就成为内核的一部分,可以做原来内核所能做的任何事情。

(6)进程不受保护。有些十分重要的进程,如VJEB服务器守护进程,但是并没有得到系统的严格保护,十分容易遭到破坏。

(7)缺乏有效的审计机制,无法跟踪记录各种违规操作和破坏。

2.2 人为的安全性问题

作为多用户的操作系统,Linux允许多个用户同时访问系统的资源,同一个用户也可以同时执行多个任务。同时,现在的计算机大都在网络环境下运行。多用户和网络环境必然存在安全问题。不仅要在理论上重视安全问题,实践上更不能忽视,在实际使用Linux时要加强安全管理。这个问题如果不重视,解决不好,则容易为系统留下安全隐患,轻则导致系统无法正常使用,影响工作,重则导致重大损失,这种损失程度视Linux的应用环境而异。在操作系统的实际使用、操作、管理中,主要存在如下安全隐患:

(1)思想上不重视,认识不到操作系统安全的重要性及安全问题可能带来的风险;存在麻痹和侥幸心理,认为安全问题不会或不可能发生在自己身上。

(2)有关计算机安全的规章制度不健全,甚至根本就无章可循;不认真贯彻和严格执行规章制度,甚至就根本不贯彻和执行,使制度形同虚设。

(3)有意牺牲安全性来换取工作上的便利。

(4)系统管理员和操作员技术水平差,不知怎样提高系统的安全性。以上所说,也是造成计算机安全问题的主要原因。因此,必须重视Linux的安全使用与管理问题。


3 强化Linux操作系统安全的策略分析

如何强化Linux的安全,业界经历了多年的积累,从系统管理到网络管理都有比较成熟的经验可以借鉴。

3.1 用户管理与口令管理

也就是对用户访问系统资源进行控制,允许或禁止其访问某些资源。

用户对资源的访问,主要是指访问某些目录、文件,运行某些程序。这可用权限管理的办法来解决,不过限制的是普通用户而非超级用户。这里提出如下设置原则:

(l)有关系统安全、设置方面的文件/目录,一般不能让普通用户访问,除非确有必要。

(2)普通用户自己的文件/目录应根据实际情况设置:一般情况下,重要的只让主人自己访问,共享的可让其他人有一定程度的访问权限,如只能读不能写,只能执行等。

(3)设置用户创建文件/目录时的初始权限。

(4)每个用户应有自己的工作目录,不要互相混用,以免出现混淆、麻烦。

口令更是保密的关键。每个用户都有自己的口令,应该绝对保密,否则一旦泄露,尤其是超级用户,则会对系统构成严重威胁。破获超级用户口令的人可以对系统做任何操作而不受限制。由此可见,加强口令的管理尤其重要。因此,尽量做到:定期更换口令;不要使用弱口令;键入口令时,不要有别人在旁边;尽最不要把口告诉别人。

3.2 系统的安全管理工作

仔细设定Linux的各种系统功能, 并且加上必要的安全措施,让黑客们无机可乘,这主要由超级用户来完成。从安全使用与管理的角度来说,主要是指限制或允许哪些用户、哪些主机可以访问本系统的资源。目的是为了防止非授权的访问,以提高安全性。这方面的方法也很多,例如删除非法用户,限制可疑用户登录,限制网上其它主机的访问等等。一般来说, 对Linux系统的安全设定包括取消不必要的服务、限制远程存取、隐藏重要资料、修补安全漏洞、采用安全工具以及经常性的安全检查等。

3.3 及时下载补丁与更新内核

在Internet上常常有最新的安全修补程序,Linux系统管理员应该消息灵通,经常光顾安全新闻组,查阅新的修补程序。一般情况下, 用户可以通过Linux的一些权威网站和论坛尽快地获取有关该系统的一些新技术以及一些新的系统漏洞的信息,做到防范于未然, 及时更新系统的最新核心以及打上安全补丁,这样能较好地保证Linux系统的安全。内核是Linux操作系统的核心,它常驻内存,用于加载操作系统的其他部分,并实现操作系统的基本功能。由于内核控制计算机和网络的各种功能,因此,它的安全性对整个系统安全至关重要。

3.4 增强安全防护工具

系统自身的增强毕竟存在很大的局限性,因此,增强安全防护工具也是尤为重要。SSH是安全套接层的简称, 它是可以安全地用来取代rlogin、rsh和rcp等公用程序的一套程序组。SSH采用公开密钥技术对网络上两台主机之间的通信信息加密,并且用其密钥充当身份验证的工具。由于SSH将网络上的信息加密,因此它可以用来安全地登录到远程主机上,并且在两台主机之间安全地传送信息。实际上, SSH不仅可以保障Linux主机之间的安全通信,Windows用户也可以通过SSH安全地连接到Linux服务器上。


4 结束语

从计算机安全的角度看, 没有百分之百安全的计算机系统,Linux系统也不例外。采用以上的安全守则,虽然可以使Linux

系统的安全性大大提高,但不能完全杜绝黑客入侵,同时系统管理员和用户应加强学习与培训,不断提高安全使用、操作、管理操作系统的技能, 不断提高安全意识与安全防范技能,在使用和管理操作系统的过程中,勤于思考,不断探索,研究新情况,解决新问题,积累经验,提高自己在安全使用和管理操作系统方面的知识水平和操作技能。