■ 湖
當(dāng)前,信息技術(shù)對(duì)社會(huì)生活的影響日益廣泛與深刻,公眾對(duì)信息安全的期望也日益高漲。在這種背景下,源代碼開放的Linux等操作系統(tǒng)正被越來越多的人所接受。但以往許多軟件都是針對(duì)Windows系統(tǒng)開發(fā)的,在Linux系統(tǒng)中即使在WinE兼容環(huán)境下也不能運(yùn)行。還有一些硬件只有Windows驅(qū)動(dòng)程序,在其他系統(tǒng)中根本無法使用。這些問題給開源操作系統(tǒng)的進(jìn)一步推廣應(yīng)用造成了很大障礙。
近兩年來,筆者使用Linux系統(tǒng)開展工作與學(xué)習(xí),經(jīng)過不斷摸索,發(fā)現(xiàn)利用硬件系統(tǒng)、操作系統(tǒng)和運(yùn)行環(huán)境經(jīng)過全面精簡(jiǎn)的輕量化虛擬機(jī),不僅可以解決軟件和硬件的兼容性問題,而且能夠獲得較高的運(yùn)行效率與良好的安全性能,實(shí)際使用效果令人滿意。
1.Linux平臺(tái):是應(yīng)用移植的基礎(chǔ)環(huán)境與目標(biāo)平臺(tái)。所安裝的Linux發(fā)行版應(yīng)當(dāng)具備以下特性:容易使用,足夠穩(wěn)定,資源豐富,有社區(qū)支持。推薦采用本土化的Ubuntu Kylin系統(tǒng)長(zhǎng)期支持版。
2.虛擬機(jī)軟件:是虛擬機(jī)管理平臺(tái)與硬件系統(tǒng)虛擬化工具。推薦采用開源軟件VirtualBox(需要擴(kuò)展功能包),它體積小巧而功能強(qiáng)大,在同類軟件中最容易安裝和使用。
3.Windows鏡像及精簡(jiǎn)工具:用于給虛擬機(jī)安裝操作系統(tǒng)。Windows鏡像推薦采用微軟官方的XP SP3 VL免激活中文版,精簡(jiǎn)工具推薦采用免費(fèi)軟件nLite(需要.NET Framework 3.5 SP1)。
4.應(yīng)用虛擬化軟件:即軟件綠化工具,可虛擬軟件運(yùn)行環(huán)境并提供沙箱隔離功能。推薦采用免費(fèi)綠色軟件Cameyo,也可使用VMware公司的商業(yè)軟件ThinApp。
5.驅(qū)動(dòng)管理工具:用于精確提取和恢復(fù)非虛擬機(jī)自帶的待移植硬件的驅(qū)動(dòng)程序。推薦采用驅(qū)動(dòng)精靈綠色版。
6.待移植軟件和硬件:一般應(yīng)當(dāng)只移植那些無法取代的軟件和硬件,在Linux系統(tǒng)中已有替代產(chǎn)品的就盡量不要移植。若待移植軟件有多個(gè)可用版本,應(yīng)當(dāng)優(yōu)先移植體積小巧而功能足夠的版本。
1.安裝虛擬機(jī)軟件:從官網(wǎng)(www.virtualbox.org)或軟件源中下載VirtualBox及擴(kuò)展功能包,并安裝到本地Linux平臺(tái)中。再打開終端運(yùn)行“sudo adduser 賬戶名vboxusers”,將用戶賬戶添加到虛擬機(jī)用戶組中。
2.創(chuàng)建移植工作平臺(tái):創(chuàng)建一臺(tái)虛擬機(jī),安裝好Windows XP SP3、.NET Framework 3.5 SP1和nLite,并將Cameyo復(fù)制到系統(tǒng)中(或安裝好ThinApp),然后建立一個(gè)系統(tǒng)快照。
3.制作精簡(jiǎn)Windows鏡像:使用nLite對(duì)Windows原版鏡像進(jìn)行精簡(jiǎn),刪除不必要的功能組件和系統(tǒng)文件。要精簡(jiǎn)50%比較容易,若要獲得更高的精簡(jiǎn)比與更好的使用效果,則需進(jìn)行深入研究與反復(fù)嘗試。如果自己制作的精簡(jiǎn)鏡像不能滿足實(shí)際需求,也可采用他人制作的比較好的精簡(jiǎn)版本,例如LTM Mini XP SP2、Deepin Lite XP SP3等。
4.綠化待移植軟件:恢復(fù)虛擬機(jī)快照,使用Cameyo(或ThinApp)逐一綠化待移植軟件。軟件綠化過程比較簡(jiǎn)單,主要包括安裝前掃描、軟件安裝、安裝后掃描、軟件打包、綠化包編輯、綠化包測(cè)試等步驟。
5.提取硬件驅(qū)動(dòng):將待移植硬件用標(biāo)準(zhǔn)安裝方式安裝到虛擬機(jī)中,并進(jìn)行測(cè)試以保證其能正常使用。然后用驅(qū)動(dòng)精靈綠色版將驅(qū)動(dòng)程序提取出來,以備使用。
6.制作輕量化虛擬機(jī):
(1)創(chuàng)建精簡(jiǎn)虛擬機(jī):創(chuàng)建一臺(tái)虛擬機(jī),根據(jù)實(shí)際需求對(duì)硬件系統(tǒng)進(jìn)行精簡(jiǎn)設(shè)置。例如軟驅(qū)、串口現(xiàn)已不再使用,聲卡在虛擬機(jī)中可以停用,光驅(qū)在VirtualBox擴(kuò)展功能安裝完畢后也可停用。
(2)安裝精簡(jiǎn)Windows系統(tǒng):在虛擬機(jī)中用前面制作的精簡(jiǎn)Windows鏡像安裝好操作系統(tǒng),并安裝VirtualBox擴(kuò)展功能。在命令行中運(yùn)行“services.msc”打開服務(wù)配置窗口,禁用不必要的服務(wù);運(yùn)行“gpedit.msc”打開組策略配置窗口,對(duì)與安全性有關(guān)的選項(xiàng)進(jìn)行設(shè)置。再適當(dāng)進(jìn)行其他優(yōu)化,例如禁止檢測(cè)閑置IDE通道、取消預(yù)讀取功能等,以便加快虛擬機(jī)啟動(dòng)速度。
(3)添加綠化軟件和硬件驅(qū)動(dòng):將前面制作的綠化軟件及提取的硬件驅(qū)動(dòng)復(fù)制(恢復(fù))到虛擬機(jī)中,建立一個(gè)系統(tǒng)快照。然后進(jìn)行測(cè)試以保證所有軟件和硬件都能正常使用,測(cè)試完畢后恢復(fù)系統(tǒng)快照。
(4)導(dǎo)出虛擬機(jī)文件包:有兩種導(dǎo)出方法。第一種方法是直接將虛擬機(jī)文件夾制作成壓縮文件包;將其復(fù)制到其他機(jī)器上后,解壓并雙擊其中的*.vbox文件即可將虛擬機(jī)導(dǎo)入到VirtualBox管理器中。這種文件包的好處是,可以包含系統(tǒng)快照且壓縮比率較大,不足之處是不能導(dǎo)入到其他虛擬機(jī)軟件中使用。
第二種方法是使用VirtualBox管理器的“導(dǎo)出虛擬電腦”功能,導(dǎo)出開放式虛擬化設(shè)備文件包(*.ova);將其復(fù)制到其他機(jī)器上后,可以使用虛擬機(jī)的“導(dǎo)入虛擬電腦”功能進(jìn)行導(dǎo)入。這種文件包的優(yōu)缺點(diǎn)跟前一種正好相反,將其導(dǎo)入到其他機(jī)器上以后最好在首次使用前建立一個(gè)系統(tǒng)快照。
本實(shí)例是筆者為滿足日常工作實(shí)際需求而制作的一個(gè)虛擬機(jī),操作系統(tǒng)采用LTM Mini XP SP2,包含工行網(wǎng)銀助手、建行網(wǎng)銀工具、農(nóng)行K寶工具、支付寶數(shù)字證書、騰訊TM2013、阿帕比公文閱讀器、Tiny PDF虛擬打印機(jī)等軟件,支持使用網(wǎng)銀盾等商密設(shè)備,可以運(yùn)行360網(wǎng)管版離線升級(jí)工具等綠色軟件。虛擬機(jī)文件包(百度網(wǎng)盤地址:pan.baidu.com/s/1i3FyKh3) 大 小 約380MB,正常開機(jī)用時(shí)約10秒(休眠后開機(jī)只需1秒),開機(jī)內(nèi)存占用約65MB,日常使用時(shí)分配150~250MB內(nèi)存即可。
對(duì)虛擬機(jī)的安全性能應(yīng)當(dāng)給予足夠重視,但若采用第三方安全軟件,將導(dǎo)致虛擬機(jī)資源占用急劇增高,運(yùn)行效率顯著降低。而綜合運(yùn)用虛擬機(jī)快照、組策略配置、沙箱隔離等措施,可以使虛擬機(jī)既具有良好的安全性,又始終能保持輕量化。
本實(shí)例是筆者為驗(yàn)證本方法在電子政務(wù)內(nèi)網(wǎng)等專網(wǎng)環(huán)境下應(yīng)用的可行性而開展的一個(gè)試驗(yàn)。虛擬機(jī)操作系統(tǒng)采用 Deepin Lite XP SP3,包含衛(wèi)士通SJY107信息保密系統(tǒng)、騰訊通RTX2011、易泰多RTXOA插件、阿帕比公文閱讀器、Tiny PDF虛擬打印機(jī)等軟件,支持使用USB加密通信模塊等商密設(shè)備,還可使用GDI位圖打印機(jī)。虛擬機(jī)性能指標(biāo)與前一實(shí)例大致相當(dāng)。
在專網(wǎng)環(huán)境下往往存在主機(jī)監(jiān)控審計(jì)類安全軟件,其目的是監(jiān)管專網(wǎng)中的物理終端。若將其安裝到虛擬機(jī)中,不但沒有多少實(shí)際意義,反而會(huì)嚴(yán)重影響運(yùn)行效率。因此,今后在開展專網(wǎng)升級(jí)改造時(shí),采購(gòu)終端管理軟件應(yīng)當(dāng)要求能在Linux系統(tǒng)中使用(甚至支持跨平臺(tái)),配置終端管理策略應(yīng)當(dāng)只要求監(jiān)管物理終端,而對(duì)虛擬機(jī)均可予以放行。