网络安全 频道

保护Linux网络安全技术扫描(上)

 随着人们对安全问题的日益重视,网络安全已经不仅仅是技术问题,而是一个社会问题。企业应当提高对网络安全的重视,不应被各种商业宣传所迷惑。认为安装了防火墙、认证授权和入侵检测系统就可以保护网络免受各种攻击。实际上,并没有绝对安全的网络,也没有"无坚不摧"的安全解决方案。从辩证法的角度来说,安全是相对的。

      一、Linux 网络安全安全现状
  
  目前,内核的维护主要分两种模式:对于私有操作系统,如Windows/Solaris等,由于个人用户不能直接接触其源代码,其代码由公司内部开发人员维护,其安全性由同样的团队保证,内核的修正与其他应用程序一样,以patch/SP包的方式发布;对于Linux这样的开放式系统,从机制上讲,全世界的开发人员都能获得源代码,从而找出其中的纰漏,但是同时,如果网络管理人员不能及时更新内核,也会留下安全隐患。影响操作系统安全的因素有很多,从编程水平到用户的使用水平等,都将影响到系统的安全。仅仅通过开放或者封闭源代码,都不能从根本上解决安全问题。



  Linux服务器运行的软件主要包括: Samba, VsFtp, Openssh, Mysql, Php和Apache等,这些软件大多数是开源软件,而且都在不停升级,稳定版和测试版交替出现。在www.apache.org 上,最新的changeLog中都写着:bug fix, security bug fix的字样。所以Linux网管员要经常的关注相关网站及时升级或添加补丁。千万不要报侥幸心理,否则一个Shell脚本就可能拿下你的网站。套用一句名言"你的网络永远可能在第二天被黑客接管"。

  二、身份认证技术

  身份认证是对网络中的主体和客体的身份进行验证的过程,所包括的典型技术有:口令认证机制、公开密钥基础设施(PKI)强认证机制、基于生物特征的认证等。

  1. 口令认证

  口令认证是最常用的一种认证方式。口令是相互约定的代码,通常只有用户和系统知道。口令有时由用户选择,有时由系统分配。通常情况下,用户先输入某种标志信息,比如用户名和ID号,然后系统询问用户口令,若口令相匹配,用户即可进入系统访问。口令有多种,如一次性口令,系统生成一次性口令的清单,规定第一次时必须使用X,第二次时必须使用Y,第三次时用Z……还有基于时间的口令,即访问者使用的口令随时间变化,变化基于时间和一个秘密的用户密钥,这样口令随时都在改变,使其更加难以猜测。

  2. PKI的认证机制

  PKI(Public Key Infrastructure)技术是通过公钥密码体制中用户私钥的机密性来提供用户身份的惟一性验证,并通过数字证书的方式为每个合法用户的公钥提供一个合法性的证明,建立了用户公钥到证书ID号之间的惟一映射关系。

      PKI主要由证书生产系统和应用系统组成,证书生产系统又包括数字证书认证中心(Certification Authority,CA)和密钥管理中心(Key Management,KM),共同完成数字证书的申请、审核、签发、注销、更新、查询等功能。证书应用系统提供身份认证、加解密、签名验签等安全服务功能,以解决业务应用中的机密性、完整性、认证性、不可否认性等安全问题。 由于数字证书本身是公开的,因此在身份验证过程中必须通过公钥与私钥之间的惟一映射关系(由公钥加密体制自身提供保证)来间接建立用户私钥和证书ID号之间的映射关系。

      数字证书可以存储在多种介质上(硬盘、软盘、IC卡、USB Key等)。若采用硬件形式如智能IC卡、USB Key等,把用户的私钥存放其中则更安全。 PKI的认证是一种强认证机制,综合采用了摘要算法、非对称加密、对称加密、数字签名等技术,很好地将安全性和高效性结合起来。这种认证方法目前广泛应用在电子邮件、应用服务器访问、客户端认证、防火墙认证等领域。

  3. 生物特征的识别认证

  基于生物特征的识别认证是一项正处于研究开发阶段的技术,常见的有指纹、声音、视网膜或虹膜、手掌几何学等。这种利用个人生理特征进行鉴别的方式具有很高的安全性。目前已推出的设备包括:视网膜扫描仪、指纹识别仪、声音验证设备、手型识别器。

  4 合理选择身认证技术

   若是用户提交的每一个变量都要求有生物学验证(如指纹鉴定),则将获得极高水平的可靠性。但是也会造成用户填写一个表格就要几十分钟。这时用户就会采取绕过安全验证的方法。一个系统的可靠性只能由整个链条中最薄弱的环节来决定。在任何安全系统里面,人是最脆弱的连接,单单技术本身不能让系统安全。网络管理员要建立合理的用户痛苦量(痛苦量是指安全限制引起的抵制的函数),不能仅仅从技术上考虑问题,还要站在用户的观点上考虑。

三、访问控制技术之防火墙

  访问控制的主要任务是保证网络资源和应用系统不被非法使用和访问。访问控制所包括的典型技术有:防火墙、虚拟专用网(VPN)、等技术。

  1 防火墙

  对于连接互联网上的系统,不管是什么情况都要明确一点:网络是不安全的。因此,虽然创建一个防火墙并不能保证系统100%安全,但却是绝对必要的。防火墙是指设置在不同网络(如可信任的内部网和不可信的公共网)或网络安全域之间的一系列部件的组合,它是不同网络或网络安全域之间信息的惟一出入口,能根据单位的安全策略(允许、拒绝等)控制出入网络的信息流,且本身具有较强的抗攻击能力。

      防火墙同时也是目前用得最广泛的一种安全技术,它可以限制外部对系统资源的非授权访问,也可以限制内部对外部的非授权访问,同时还限制内部系统之间,特别是安全级别低的系统对安全级别高的系统的非授权访问。

  Linux 网络使用的防火墙技术是netfilter/iptables。Linux内核从1.1版本开始,就已经具备包过滤功能。在2.0内核中,开始采用Ipfwadm来操作内核的包过滤规则。到2.2版本时,Linux内核采用了Ipchains来控制内核的包过滤规则。

     
      发展到2.4.x时,Ipchains被一个全新的包过滤管理工具Iptables所替代。新发布的2.6版内核也在安全方面进行了改进。因此,无论拥有哪个版本的Linux内核,无论选择哪个版本的Linux来构建自己的企业网,都可以利用现有的系统构建出一个理想实用的防火墙。

      2001年Russell完成了其名为netfilter(http://www.netfilter.org)的内核框架。这些防火墙软件套件一般都比其前任有所改进,表现越来越出众。netfilter/iptables已经包含在了2.4以后的内核当中,它可以实现防火墙、NAT(网络地址翻译)和数据包的分割等功能。netfilter工作在内核内部,而iptables则是让用户定义规则集的表结构。netfilter/iptables是从ipchains和ipwadfm(IP防火墙管理)演化而来的。

0
相关文章