■ 湖
当前,信息技术对社会生活的影响日益广泛与深刻,公众对信息安全的期望也日益高涨。在这种背景下,源代码开放的Linux等操作系统正被越来越多的人所接受。但以往许多软件都是针对Windows系统开发的,在Linux系统中即使在WinE兼容环境下也不能运行。还有一些硬件只有Windows驱动程序,在其他系统中根本无法使用。这些问题给开源操作系统的进一步推广应用造成了很大障碍。
近两年来,笔者使用Linux系统开展工作与学习,经过不断摸索,发现利用硬件系统、操作系统和运行环境经过全面精简的轻量化虚拟机,不仅可以解决软件和硬件的兼容性问题,而且能够获得较高的运行效率与良好的安全性能,实际使用效果令人满意。
1.Linux平台:是应用移植的基础环境与目标平台。所安装的Linux发行版应当具备以下特性:容易使用,足够稳定,资源丰富,有社区支持。推荐采用本土化的Ubuntu Kylin系统长期支持版。
2.虚拟机软件:是虚拟机管理平台与硬件系统虚拟化工具。推荐采用开源软件VirtualBox(需要扩展功能包),它体积小巧而功能强大,在同类软件中最容易安装和使用。
3.Windows镜像及精简工具:用于给虚拟机安装操作系统。Windows镜像推荐采用微软官方的XP SP3 VL免激活中文版,精简工具推荐采用免费软件nLite(需要.NET Framework 3.5 SP1)。
4.应用虚拟化软件:即软件绿化工具,可虚拟软件运行环境并提供沙箱隔离功能。推荐采用免费绿色软件Cameyo,也可使用VMware公司的商业软件ThinApp。
5.驱动管理工具:用于精确提取和恢复非虚拟机自带的待移植硬件的驱动程序。推荐采用驱动精灵绿色版。
6.待移植软件和硬件:一般应当只移植那些无法取代的软件和硬件,在Linux系统中已有替代产品的就尽量不要移植。若待移植软件有多个可用版本,应当优先移植体积小巧而功能足够的版本。
1.安装虚拟机软件:从官网(www.virtualbox.org)或软件源中下载VirtualBox及扩展功能包,并安装到本地Linux平台中。再打开终端运行“sudo adduser 账户名vboxusers”,将用户账户添加到虚拟机用户组中。
2.创建移植工作平台:创建一台虚拟机,安装好Windows XP SP3、.NET Framework 3.5 SP1和nLite,并将Cameyo复制到系统中(或安装好ThinApp),然后建立一个系统快照。
3.制作精简Windows镜像:使用nLite对Windows原版镜像进行精简,删除不必要的功能组件和系统文件。要精简50%比较容易,若要获得更高的精简比与更好的使用效果,则需进行深入研究与反复尝试。如果自己制作的精简镜像不能满足实际需求,也可采用他人制作的比较好的精简版本,例如LTM Mini XP SP2、Deepin Lite XP SP3等。
4.绿化待移植软件:恢复虚拟机快照,使用Cameyo(或ThinApp)逐一绿化待移植软件。软件绿化过程比较简单,主要包括安装前扫描、软件安装、安装后扫描、软件打包、绿化包编辑、绿化包测试等步骤。
5.提取硬件驱动:将待移植硬件用标准安装方式安装到虚拟机中,并进行测试以保证其能正常使用。然后用驱动精灵绿色版将驱动程序提取出来,以备使用。
6.制作轻量化虚拟机:
(1)创建精简虚拟机:创建一台虚拟机,根据实际需求对硬件系统进行精简设置。例如软驱、串口现已不再使用,声卡在虚拟机中可以停用,光驱在VirtualBox扩展功能安装完毕后也可停用。
(2)安装精简Windows系统:在虚拟机中用前面制作的精简Windows镜像安装好操作系统,并安装VirtualBox扩展功能。在命令行中运行“services.msc”打开服务配置窗口,禁用不必要的服务;运行“gpedit.msc”打开组策略配置窗口,对与安全性有关的选项进行设置。再适当进行其他优化,例如禁止检测闲置IDE通道、取消预读取功能等,以便加快虚拟机启动速度。
(3)添加绿化软件和硬件驱动:将前面制作的绿化软件及提取的硬件驱动复制(恢复)到虚拟机中,建立一个系统快照。然后进行测试以保证所有软件和硬件都能正常使用,测试完毕后恢复系统快照。
(4)导出虚拟机文件包:有两种导出方法。第一种方法是直接将虚拟机文件夹制作成压缩文件包;将其复制到其他机器上后,解压并双击其中的*.vbox文件即可将虚拟机导入到VirtualBox管理器中。这种文件包的好处是,可以包含系统快照且压缩比率较大,不足之处是不能导入到其他虚拟机软件中使用。
第二种方法是使用VirtualBox管理器的“导出虚拟电脑”功能,导出开放式虚拟化设备文件包(*.ova);将其复制到其他机器上后,可以使用虚拟机的“导入虚拟电脑”功能进行导入。这种文件包的优缺点跟前一种正好相反,将其导入到其他机器上以后最好在首次使用前建立一个系统快照。
本实例是笔者为满足日常工作实际需求而制作的一个虚拟机,操作系统采用LTM Mini XP SP2,包含工行网银助手、建行网银工具、农行K宝工具、支付宝数字证书、腾讯TM2013、阿帕比公文阅读器、Tiny PDF虚拟打印机等软件,支持使用网银盾等商密设备,可以运行360网管版离线升级工具等绿色软件。虚拟机文件包(百度网盘地址:pan.baidu.com/s/1i3FyKh3) 大 小 约380MB,正常开机用时约10秒(休眠后开机只需1秒),开机内存占用约65MB,日常使用时分配150~250MB内存即可。
对虚拟机的安全性能应当给予足够重视,但若采用第三方安全软件,将导致虚拟机资源占用急剧增高,运行效率显著降低。而综合运用虚拟机快照、组策略配置、沙箱隔离等措施,可以使虚拟机既具有良好的安全性,又始终能保持轻量化。
本实例是笔者为验证本方法在电子政务内网等专网环境下应用的可行性而开展的一个试验。虚拟机操作系统采用 Deepin Lite XP SP3,包含卫士通SJY107信息保密系统、腾讯通RTX2011、易泰多RTXOA插件、阿帕比公文阅读器、Tiny PDF虚拟打印机等软件,支持使用USB加密通信模块等商密设备,还可使用GDI位图打印机。虚拟机性能指标与前一实例大致相当。
在专网环境下往往存在主机监控审计类安全软件,其目的是监管专网中的物理终端。若将其安装到虚拟机中,不但没有多少实际意义,反而会严重影响运行效率。因此,今后在开展专网升级改造时,采购终端管理软件应当要求能在Linux系统中使用(甚至支持跨平台),配置终端管理策略应当只要求监管物理终端,而对虚拟机均可予以放行。