Linux产业发展方向:专家看好系统安全

Linux在中国蓬勃兴起已经两年有余,大大小小的Linux公司不下十几家,参与开发的人员和爱好者数不胜数。但迄今为止,Linux在中国并没有得到大规模的应用,真正盈利的Linux厂商也很少。在中国,Linux究竟应该选择什么样的突破口?专家、学者、Linux厂商甚至用户都在积极探索。

国内最大的开放源码组织??共创软件联盟最近在北京举办了“‘十五’‘863’Linux及相关软件发展”研讨会,召集国内外知名的Linux专家学者、政府部门、研究院所、Linux厂商代表共同研讨,为中国Linux产业的发展出谋划策,寻找促进Linux产业发展的突破口。归纳起来,专家们看好Linux在以下方面的发展:

 基于Linux的安全操作系统

五月份的中美黑客大战给我们敲响了警钟,我国的“电子领空”极其脆弱,抛开其他原因不谈,缺少具有自主知识产权的操作系统是重要原因之一。如果我国的政府部门、军事、重要企业等关键部门把自己的信息系统完全建立在国外产品的基础上,其安全性就很难得到保障。

 推动网络计算机(NC)在中国的大规模应用

宽带接入在国内已经日益普及,B/S计算模式也得到广大用户的认同,在这种情况下,NC再次获得了发展的机遇,而以Linux为核心的网络计算机将彻底打破Wintel在桌面计算领域的一统天下,使我们有可能开发出具有自主知识产权的NC。

嵌入式应用是Linux最有发展前途的领域

信息家电、无线接入设备、网络设备、专用终端等都是嵌入式Linux应用的大市场,也是中国Linux厂商大有作为的领域。

企业级应用

根据Linux本身的技术优势和用户的实际需求,Linux的企业应用主要集中在邮件服务器、集群、Web服务器等领域。

在看好上述应用领域的同时,专家们也指出了中国Linux产业目前存在的问题:第一,对开放源码、GPL规则的认识还不统一,没有形成完整的自由软件社区,一些Linux公司在软件开发上仍然沿用传统模式,没有充分利用开放源码的技术和人力资源,其结果是在全球性的Linux开发项目中,缺少由中国人担纲的项目;第二,用户对Linux的认识和接受还有待加强;第三,需要探讨开放源码运动的商业模式,使之既能为用户带来好处,又能为Linux厂商带来收益。


突破点1:开发安全的Linux操作系统

观点:

实施电子政务、开展电子商务、保卫国家“电子领空”的安全,这些都离不开安全的计算环境。一般而言,安全的计算环境包括两个方面:其一是软、硬件本身的安全性;其二是从国家安全角度考虑,关键的产品和技术是否拥有自主知识产权。对中国的计算机应用实际来说,这两方面的问题都与开放源码的Linux系统有不可割裂的联系。构建具有自主知识产权的安全计算环境正是中国发展Linux产业的重要目标,也是我们的机遇。


分析:

从技术实现的角度看,安全的计算环境首先需要安全的操作系统,因此,目前国内的主要研究侧重于开发安全的Linux操作系统。中科院计算所Linux安全专家谢华刚谈道,目前GNU/Linux存在的安全问题包括以下一些:

访问控制不完善,超级用户的权限过大

在现有的GNU/Linux系统中,如果用户ID是“0”,那么他可以执行很多系统管理操作,诸如模块加载/卸载、路径设置、防火墙规则设定等。因此,如果入侵者获得超级用户权限,他就可以为所欲为。

文件系统不能得到有效的保护

在Linux系统中有很多重要的文件,例如/bin/login,如果黑客进入系统,他完全可以修改login程序并替换原来的/bin/login。当他再次登录时,他就不需要任何账号和口令。这就是人们常说的“特洛伊木马”。

进程得不到保护

进程提供各种服务。例如,HTTPD是一个Web服务器,它为远程客户端提供Web内容服务。因此在一个Web服务器系统中,保护该进程不被非法中断是非常重要的,但如果入侵者获取了超级用户权限,我们就无能为力了。

此外,应用程序漏洞太多、认证系统不可靠等问题都是GNU/Linux存在的不安全因素。

解决方案:

针对以上问题,由谢华刚主持开发了Linux入侵检测系统??Lids,它是一个用于增强Linux核心安全级别的核心“补丁”。该项目也是全球性Linux开发项目中由中国学者主持的少数项目之一。

据谢华刚介绍,Lids的主要目的是解决上述安全问题。当你在Linux系统中安装了Lids之后,文件系统、进程、访问控制都将得到保护。无论是普通用户还是超级用户都不能修改被Lids保护的文件,也不能中断被Lids保护的进程;任何人对系统的访问都将受到ACL规则的严格限制。目前,Lids已经入选www.insecure.org评出的“50个顶级安全工具”。

除Lids之外,国内还有一些单位在开发专用的安全Linux操作系统。中软公司推出了增加了入侵检测系统的中软Linux 3.0应用套件;国防科大计算机学院也在研究Linux安全增强技术。据国防科大计算机学院罗军教授介绍,他们已经针对代理服务器这一具体应用,与其他单位合作开发了一个以Linux为基础的专用安全操作系统。在系统的开发过程中,该研究小组主要采用了以下技术:

紧密结合应用需求,在专用上下功夫

“专用”意味着应用面的缩小和某些功能的减弱,但从安全的角度看,则是安全性能的增强。通过对Linux功能模块的裁剪,把一些不会用到的模块统统去掉,尽量减少系统的被攻击面,同时,为了防止类似特洛伊木马等方式的攻击,我们提出了进程认证的思想。在研制的专用安全操作系统中,所有二进制文件都利用密码技术产生一个进程认证码,用于标识自身的合法性。操作系统内核的进程执行机制将根据进程认证码来识别合法进程并决定执行与否,这样就保证了未经认证的程序不能在系统中运行。

采用双重检验的身份认证机制

通过破译系统管理员口令入侵并破坏系统是黑客常用的手段,为了杜绝这种情况的发生,我们采用加密技术实现了安全增强的开机认证,采用“知道什么(用户口令)”和“拥有什么(表明系统管理员身份的智能卡)”相结合的双重机制来判定登录者是否是合法的系统管理员。这种双重检验的身份认证机制分别用于开机认证和用户登录认证,从而有效地防止了系统管理员以外的人员擅自开启机器和通过猜测系统管理员口令入侵系统的现象发生。

实现了内存缓冲区的客体重用

在Linux系统中,当一块内存空间被释放或者被虚存管理机制换出时,内存中存放的信息并没有被清除,而是残留在内存中,一旦这块内存空间再分配给其他用户,就有可能因内存残存信息而导致信息泄密。为了堵住这一漏洞,我们在内存空间分配或释放时采用了内存零化技术,确保内存缓冲区的安全重用。 

 实现了加密文件系统

传统的文件加密方法是利用“crypt”命令或依赖包含加密功能的应用软件。这两种方法使用起来都非常麻烦,保密性非常低。我们通过类似TCFS的方式,将加密服务和文件系统紧密集成,使加密文件系统能自动地对系统中的文件进行加密和解密。这种加密和解密过程对用户是透明的,加密文件的合法访问者能够方便地读取文件内容;而不具备访问权限的用户(包括系统管理员)将无法读取文件的内容,从而解决未经授权的访问和硬盘失窃等问题。

增强的自主访问控制

Linux文件权限模式是一种控制粒度很粗的DAC机制,它将用户粗分为文件拥有者、同组人和其他三类,分别指定读、写、执行权限。文件的拥有者无权指定文件的访问对象。但在我们开发的专用安全操作系统中,我们实现了基于访问控制表(Access Control Lists, 简称ACL)的DAC策略。它能够使客体拥有者以单个用户为单位授权或拒绝访问,从而使系统具有更细的存取控制粒度。

存在的问题:

罗军认为,Linux安全机制的采用的确使一些系统的安全性上了一个新台阶。但同时也应该看到,由于Linux操作系统一开始并不是按照安全操作系统的结构规划设计的,因此,其安全增强策略给人的感觉仿佛是在堵塞漏洞,谁也不敢保证所有的漏洞都已被堵上。随着各种安全机制的采用,Linux系统的管理和使用也会变得越来越复杂、效率降低,这将使安全技术的推广变得非常困难。另外,GPL这个使Linux走向兴旺的规则也使Linux安全增强面临两难的境地:一方面,公布源代码意味着将系统的易受攻击点完全暴露出来;另一方面,不公布源代码又与GPL规则相违背。因此,如何在GPL规则下增强Linux的安全功能是我们面临的挑战。


突破点2:基于Linux的网络计算机

观点:

中科院院士倪光南认为,Linux在桌面计算领域的发展前景一直颇有争议。从世界范围来看,Linux在这方面的发展不如人意,所占份额仅为5%左右,看来在PC机普及率很高的发达国家,Linux要在桌面计算领域与Windows抗衡是很困难的。但在中国,情况会有所不同,因为PC机还远未普及,再加上宽带网络的普及和Internet应用的推动,给网络计算机(NC)的发展提供了新的机遇,使它完全有可能超越PC,成为主流的桌面平台。

分析:

倪光南认为,在20世纪90年代中期,Oracle总裁Larry Ellison提出的网络计算机是以Java应用为基础的。在当时,大多数应用系统还没有过渡到B/S(浏览器/服务器)模式、对老的Windows应用软件缺乏解决方案,同时大多数局域网的速率只有10Mb/s,NC本身的性能价格比也不够好。在这种情况下,NC的失败是必然的。但现在的应用环境发生了很大变化,我们完全可以重新定义NC。

NC是专用于宽带网络计算环境的瘦客户机,在这种环境中,应用程序和数据都存储在服务器上。NC本身除有人机交互必需的显示器和输入设备外,一般没有外部存储器(硬盘、光盘等),也很少有扩展口。这种NC可以支持多种工作模式,支持包括Windows、Unix、Linux等多种平台的应用软件。更重要的是,这种NC大多数是非Wintel结构。

从这一定义可以看出:NC一般带有10Mb/s或100Mb/s速率的以太网端口,应用程序和数据都存储在服务器上;NC的输入设备视实际需要而有所不同,小配置只有键盘、鼠标,更全的配置可能还包括密码键盘、IC卡读卡机和其他身份验证设备。基于这种定义,我们不难发现,现代计算环境非常适合于NC的应用,这主要体现在以下方面:

100Mb/s(或更快)网络已成为常规配置;

B/S(浏览器/服务器)模式逐渐取代C/S(客户机/服务器)模式,主要的应用软件和数据逐渐转移到网上;

WBT(基于Windows的终端)模式基本上解决了与Windows应用软件兼容的问题;

客户机“变瘦”有利于信息安全和强化管理。

在这种应用环境中,PC机的一些优点从某种意义上说变成了缺点,例如资源的浪费和难以管理。因为在网络计算环境下,约有3/5的人不需要强大的、全功能的PC,而PC机本身的灵活性、可扩展性、本地存储设备等反而成为管理和安全的负担。而NC恰恰相反,它安全、易用、好管理,更重要的是它可以采用非Wintel结构,并由此打破微软与Intel构成的壁垒,获得更好的性能价格比。

对中国的计算机产业来说,因为有了Linux的支持,将使我们有可能开发出具有自主知识产权的CPU,并生产出具有自主知识产权的网络计算机。


突破点3:嵌入式应用大有可为

观点:

北京网虎科技有限公司总经理曾启柚认为,在嵌入式软件领域,国内外厂商基本处在同一起跑线上,在未来格局上谁将充当什么角色现在还未露端倪。对中国软件业来说,嵌入式软件前景美好,开发嵌入式操作系统更是一个难得的机会,嵌入式操作系统将全面推动软件产业的整体发展,出现一批SKD、数据库、支持工具和应用软件开发商,中国软件业也将因此而一改台式机软件市场的被动局面,在嵌入式领域大展宏图。

分析:

据IDC预测,未来信息家电产品的需求将大幅度增长,到2002年,全球信息家电产品的售出量将达到5570万台,每年信息家电产品的销售将以61.8%的复合增长率成长,10年之后,其产量将是计算机产量的10倍。届时,信息家电将取代传统家电,成为市场主流。

面对巨大的嵌入式软件市场,国外公司早在几年前就开始研制嵌入式系统,到目前为止,已经有几十种嵌入式操作系统面世,应用软件更是丰富多彩。具有代表性的嵌入式操作系统厂商有Sun、Oracle、Microware、ISI、QSSL和微软等。

在中国,北京凯思软件集团有HOPEN系统、中科红旗有嵌入式红旗Linux、共创软件联盟推出了CC-Linux、网虎则研制出了XTinux。目前,这些嵌入式Linux系统已经在机顶盒、网络微波炉、彩票机以及工业控制领域得到应用。

分析Linux受到信息家电厂商青睐的原因,曾启柚认为主要有4条:第一,它可应用于多种硬件平台,使Linux开发商可以在标准平台上开发原型,然后移植到具体的硬件上,加快了软硬件的开发过程;第二,Linux可以按照GPL规则进行配置,不需要额外的许可证或与供应商建立特定的合作关系;第三,Linux是免费的,可以得到源代码,这将加快开发进度,并节省大量的开发经费;第四,Linux的高度模块化使添加部件非常容易。

存在的问题:

尽管从具体应用来看,我们自主开发的嵌入式Linux操作系统与国外产品相比有一定优势,但我们也必须看到,在嵌入式系统开发领域,我们在很多方面仍然落后于国外同行。首先是开发力量的差距,国内最早从事嵌入式软件开发的单位在进入时间上与国外同步,但开发力量与国外相比尚有差距;第二是市场的差距,国外嵌入式软件市场已经很成熟,开发、需求两旺,而国内需求才刚刚开始走强;第三是目前国内应用软件的品种和数量还远远不能满足市场需求。因此,在十五期间,中国的相关行业应该在发挥优势,弥补不足中发展自己的嵌入式Linux系统。

除以上三个突破点之外,企业级应用也是今年Linux厂商推广的重点。相信随着Linux技术的日益成熟、用户认同度的上升,Linux将在我国得到快速发展。(本文内容根据与会代表的发言整理,未经本人审阅。)