國內最大的開放源碼組織——共創軟件聯盟最近在北京舉辦了“‘十五’‘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將在我國得到快速發展。