1.1 Linux系统的安全感
计算机和软件安全一直是比较重要的技术话题,网络安全问题随之也成了人们讨论的热门话题。安全感的字面意思就是安全无虞的感觉,是一种个人内在的精神需求。在安全的这种状态下,系统是不受威胁的。随着互联网的快速发展,Linux常常作为各种服务器被部署到互联网上,因此保障Linux系统的安全是非常重要的,我们必须要提高安全意识,做好安全防范。
难度:★
1.1.1 不容忽视的信息安全
Linux作为互联网中重要的基础设施,保障其安全性是不言而喻的。历经这么多年的发展,Linux功能更加健全,但是大家对Linux系统的安全问题关注不够。在网络上有很多专门针对Linux的攻击,我们有必要了解一些安全知识。
通过网络,人们获取了海量的信息资源,但却很容易轻视信息安全可能会造成的影响。对于信息安全,ISO(国际标准化组织)的定义是:为数据处理系统建立和采用的技术、管理上的安全保护,为的是保护计算机硬件、软件、数据不因偶然和恶意的原因而遭到破坏、更改和泄露。
通过这个定义,我们可以看到保障信息的机密性和完整性不容忽视。只有保障了Linux系统的安全,才能确保服务是安全的,那么服务提供的信息也才会有可靠性。
保障信息安全最重要的目的就是保护信息的机密性、完整性和可用性。在考虑信息安全时,需要将此三点作为重要的目标,并以此建立完善和有效的保护机制。
网络时代的高速发展,使信息呈现爆炸式的增长。现在人与人之间的距离就像唐诗“海内存知己,天涯若比邻”中说的一样。在畅游网络世界的同时,增强信息安全的意识很有必要。
信息安全的木桶原理
在安全防护时,信息安全的攻击和防护一般是不对等的。信息安全水平的高低遵循木桶原理,如图1-1所示。木桶原理讲的是一个木桶能装多少水,并不取决于最长的那块木板,而是由最短的那块木板决定。虽然有很多防护措施,但是信息安全水平的高低取决于防护最薄弱的地方。信息安全的木桶原理是指整体安全水平由安全级别最低的那部分所决定。
图1-1 木桶原理
这么一看,最短的那块木板就决定了整体的安全水平。要想安全不受到威胁,还得想办法加固短板。
信息安全的建设涉及方方面面,是一个系统工程,它需要对信息系统的各个环节进行统一的综合考虑,任何环节上的安全缺陷都会对系统构成威胁。
信息安全与Linux系统安全的关系
在日常维护或开发中,只有保障了Linux系统的安全,才能保障那些依赖Linux提供服务的信息安全。我们需要知道,信息是有生命周期的,从它产生、收集、处理、传输、分析到存储或销毁等环节,每个阶段都可能会有大量的设备、平台和应用介入,如图1-2所示。为这些设备、平台和应用提供底层支持的,往往少不了Linux系统,它支撑了信息的整个生命周期。
其实,保障Linux系统的安全只是一种手段,最终目的还是保护存储在系统中的信息。如果一个Linux系统中没有存储、传输或处理任何有价值的信息等功能,那么这个系统也就失去了保护的价值。
图1-2 信息的生命周期
1.1.2 安全感也需要有原则
大部分人会认为“安全”只是用来阻止“黑客”入侵系统的,其实安全包含的范围要宽泛得多。
在安全方面,我们的目标是让系统、服务和数据对用户正确可用,同时拒绝一些未经授权的程序进行访问。
在制定保护Linux系统的规则时需要考虑很多问题。即使按照所学知识对Linux系统进行一系列的配置,也不能百分之百地保证这个系统就是安全的。如果某个人有足够的时间和资源,就总会找到入侵当前系统的办法,因此加固系统是一个永远都要做的工作。在每次掌握新技术后,都应该持续不断地更新系统的安全性能。
基本安全原则
要想保护Linux系统安全,就需要了解一些重要的安全原则,比如防御和加固原则等。以下是关于基本安全原则的说明。
(1)最小特权原则
最小特权原则简单来说就是,某个人只应该拥有完成某个特定工作需要的最低限度的权限,而不是更多的权限。在计算机安全领域中,系统管理员常常拥有管理设备的所有权限,但是普通开发者需要使用su或sudo这样的命令获取管理员权限,以便获取某些高级权限,这些用户之间的权限关系如图1-3所示。当普通用户申请某些高级权限时,可以对其适当授予部分特定的权限,但不要授予全部的权限。
图1-3 用户之间的权限关系
(2)深度防御
当只依赖于一种防御措施时,一旦被攻破,系统便没有任何保护。深度防御则是不依赖于任何一种防御手段进行保护,而是建立层次分明的防御体系。对于系统安全来说,在网络中的每一层都应该限制来自其他网络的流量,服务器也应该有专属自己的防火墙规则。
(3)分区隔离
在过去很多基础设施只依赖某几个服务器,每个服务器上又运行着不同的服务。如果攻击者破解了其中一个服务,那么就可能会危及同一物理设备上的其他服务。现在随着虚拟机和云计算技术的发展,分区隔离将变得越来越容易。这样可以让数据存储在不同的数据库中,而重要的文件则不放在同一个服务器中。即使其中任何一个数据库被破解,攻击者也无法立即从设备中获取全部的数据。
1.1.3 不可小觑的威胁
了解一些安全手段是为了保障系统中数据的安全。与安全相对的是威胁,要想保障系统的安全,就需要了解在实际工作中有哪些潜在的威胁,这样才能有助于我们研究和开发相应的策略。
常见的安全威胁来源
在实际的安全工作中,常见的与信息安全相关的威胁来自多个方面,如图1-4所示。
图1-4 常见的安全威胁来源
内部人员威胁往往是不受重视的部分。其实内部人员的误操作或者利用职务之便恶意泄露和破坏信息的案例也不少。
在威胁来源中,像自然灾害(比如地震、雷雨)、供电中断、网络通信故障和硬件故障都属于破坏物理安全,直接破坏了信息的可用性,导致业务中断,从而无法继续向合法授权的用户提供服务。病毒和蠕虫程序的散播会让资源被恶意占用,还有可能导致信息的非法泄露和被恶意篡改。在面对不同的威胁时,需要分门别类地总结和梳理,并制定相应的解决方案。