图片 9

贰.2 活动形式下教导Kali ISO 镜像

本部分将学习使用Virtual Machine Manager工具创建虚拟机。

2.2.1 在物理计算机上

KVM 全称是 基于内核的虚拟机(Kernel-based Virtual Machine),它是一个
Linux 的一个内核模块,该内核模块使得 Linux 变成了一个 Hypervisor:

创建虚拟机的步骤在Linux版本之间是相当不同的。例如,Ubuntu服务器提供Xen工具——一个棘手的命令行解决方案,在它里面创建一个配置文件,并使用有许多选项的命令更多信息请参加下篇文章)。相反,由于有图形Virtual
Machine Manager工具,Red Hat和SUSE创建虚拟机更容易。

在这种方式下,前提条件是你需要一个烧录了Kali Linux
ISO镜像文件的U盘(细节在前面章节)或DVD-ROM。

它由 Quramnet 开发,该公司于 2008年被 Red Hat 收购。
它支持 x86 (32 and 64 位), s390, Powerpc 等 CPU。
它从 Linux 2.6.20 起就作为一模块被包含在 Linux 内核中。
它需要支持虚拟化扩展的 CPU。
它是完全开源的。官网。

Virtual Machine
Manager在半虚拟化或完全虚拟化环境里都可以使用。使用Virtual Machine
Manager创建虚拟机后,你也能从工具里启动和监视虚拟机。不过,一些比较高级的选项在Virtual
Machine
Manager里不可用。例如在节点之间创建虚拟机的选项或一个高可用性解决方案的创建。

BIOS/UEFI负责早期的引导过程,并可以通过一个名为Setup的软件进行配置。特别是,它允许用户选择首选的引导设备。在这种情况下,根据先前所创建的是U盘还是DVD-ROM,你可以选择是从DVD-ROM驱动器或者是U盘启动。

 

使用Xen创建虚拟机

进入Setup软件通常是在计算机通电后按下特定的键。这个键通常是Del或Esc键,有时可能是F2或F10。大多数情况下,当计算机加电后,在操作系统加载之前,屏幕上会短暂地闪现这个选项。

 

在下面的步骤中,我们将学习在SUSE Linux Enterprise 10 SP1
虚拟化主机上如何安装一个准虚拟化的SUSE Linux Enterprise Server 10 SP1
实例。

一旦BIOS/UEFI中正确配置了从你的设备进行引导,引导Kali
Linux就只是需要简单地插入DVD-ROM光盘或U盘,然后开机启动即可。

安装组件介绍:

1.确保你的服务器启用了Xen内核。接下来,运行virt-manager命令开启Virtual
Machine Manager。将会出现如下图1中的界面。

禁用安全引导:虽然在UEFI模式下Kali
Linux可以引导,但其不支持安全导引。你应该在Setup程序中禁用该功能。

 
    1. KVM (名称来自英语: Kernel-basedVirtual
Machine 的缩写,即基于内核的虚拟机) , 是一种用于Linux内核中的虚拟化基础设施,可以将Linux内核转化为一个hypervisor。
        其基本结构由两部分组成:
        一个是KVM Driver ,是Linux
内核的一个模块,负责虚拟机的创建,虚拟内存的分配,虚拟CPU寄存器的读写以及虚拟CPU的运行等;

图片 1 

2.2.2 在虚拟机中

        

图1:Virtual Machine
Manager为所有在同一台物理服务器上的虚拟机提供一个界面

对于Kali Linux用户来讲,虚拟机有很多好处。如果你想试试Kali
Linux但还没准备确定要在自己的机器上永久安装它,或者你有一个性能很强大的系统,并且想同时运行多个操作系统,这些情形对于虚拟机来讲特别有用。使用虚拟机是许多渗透测试人员和安全专业人员的一个通用选择,他们需要使用Kali
Linux中提供的各种工具,但仍然希望能够完全访问他们的主操作系统。这种方式也为他们提供了归档或安全删除虚拟机及其任何客户端数据的能力,而不需要重新安装整个操作系统。

      2.
 另一个部分是稍微修改过的Qemu,用于模拟PC硬件的用户空间组件,模拟I/O设备模型以及提供访问外设的途径。

2.从Virtual Machine
Manager界面起,全部点击“New”。开启虚拟机创建向导。从向导的开启界面起,点击“Forward”

虚拟化软件的快照特性还可以很容易地尝试有潜在危险的操作,比如恶意软件分析,这样可以通过恢复先前的快照,从而可以很容易地摆脱可能遇到的问题。

 
      qemu  全称 Quick
Emulator 。 
是独立虚拟软件,能独立运行虚拟机(根本不需要 kvm )。 kqemu 是该软件的加速软件。 kvm 并不需要 qemu 进行虚拟处理,只是需要它的上层管理界面进行虚拟机控制。虚拟机依旧是由 kvm 驱动。所以,大家不要把概念弄错了,盲目的安装 qemu 和 kqemu 。
         当一起工作的时候,KVM管理CPU和MEM的访问,QEMU仿真硬件资源(硬盘,声卡,USB,等等)当QEMU单独运行时,QEMU同时模拟CPU和硬件。        
       
从QEMU角度来看,也可以说QEMU使用了KVM模块的虚拟化功能,为自己的虚拟机提供硬件虚拟化的加速,从而极大地提高了虚拟机的性能。除此之外,虚拟机的配置和创建,虚拟机运行依赖的虚拟设备,虚拟机运行时的用户操作环境和交互,以及一些针对虚拟机的特殊技术(诸如动态迁移),都是由QEMU自己实现的。

3.这个向导现在问你想做什么。如果你想要安装一个全新的操作系统,选择“I
need to install an operating
system”。如果你想要使用操作系统上已经预安装好的磁盘或磁盘镜像,选择“I
have a disk or disk image with an installed operating
system”,如图2所示。

对于主要的操作系统来讲,有很多可用的虚拟化工具,包括VirtualBox,VMware
Workstation,Xen,KVM和Hyper-V等。最终你会使用最适合你的虚拟机,但我们只会讲在桌面环境中使用最频繁的两种:VirtualBox和VMware
Workstation Pro,两都均运行在Windows
10上(当然,也可以运行在Linux上)。如果你没有公司的策略限制或个人偏好,我们的建议是你可以先试试VirtualBox,因为其是免费的,运行良好,开源,且有适用于多种操作系统的版本。

        从QEMU和KVM模块之间的关系可以看出,这是典型的开源社区在代码共用和开发项目共用上面的合作。
       诚然,QEMU可以选择其他的虚拟机或技术来加速,比如Xen或者KQEMU;
       
KVM也可以选择其他的用户空间程序作为虚拟机实现,只要它按照KVM提供的API来设计。但是在现实中,QEMU与KVM两者的结合是最成熟的选择,这对一个新开发和后起的项目(KVM)来说,无疑多了一份未来成功的保障。

图片 2 

下一节,我们将假设你已经安装的合适的虚拟化工具,并且操作很熟练。

 

图2:选择“I need to install an operating system”以开始新的安装

(注:假定虚拟化工具是运行在X86结构 CPU的Windows
10上的。)

 

4.从可用的操作系统列表里,选择SUSE Linux Enterprise Server
10并点击“Forward”。现在你能看见如图3的摘要窗口。

序言

      3.
 libvirt
是目前使用最为广泛的对KVM虚拟机进行管理的工具和API。Libvirtd是一个daemon进程,可以被本地的virsh调用,也可以被远程的virsh调用,Libvirtd调用qemu-kvm操作虚拟机。

图片 3 

要发挥虚拟化的全部特点,你需要有一颗有相应虚拟化特性的CPU,并且这些特性没有被BIOS/UEFI所禁用。在Setup页面把“Intel
Virtualization Technology”和/或”Intel VT-d Feature”选项选上。

 

图3:从摘要窗口你能配置和完成虚拟机

你还应用有一个64位的主机(宿主机)操作系统,比如用于Debian
Linux发行版的AMD64架构、用于RedHat
Linux发行版的x86_64架构和适用于Windows的Windows 64位架构。

 

注意:当选择把一个操作系统作为虚拟机安装,试着选择能从DVD安装的操作系统,而不是从CD。在SUSE
Linux Enterprise
Server的最新版本里,从CD安装来的Xen有一个问题。这两个都能配置一个安装服务器以安装你所选的操作系统。

如果你缺少了这些先决条件,不但虚拟化工具运行会有问题,而且在其上会被限制只能运行32位的客户操作系统。

 

5.在摘要窗口有几个安装选项可用。首先,在Virtualization
Method下面你能选择你想要使用的虚拟化类型。如果你的CPU有虚拟化支持,选择“Full
virtualization”。如果不支持“Paravirtualization”是你唯一的选择。SUSE
Linux Enterprise Server 10
SP1能作为一个准虚拟化操作系统安装,不过不是所有的操作系统提供了这种可能。

由于虚拟化工具与主机操作系统及硬件是在一个较低层次嵌入的,它们之间经常存在不兼容的情况。不要期望这些工具同一个时刻都运行得很好。另外,请注意,Windows的专业版本安装的同时也安装了Hyper-V,并且启用了它,这可能会干扰你所选择的虚拟化工具。如果要关闭Hyper-V,请从Windows设置中执行“打开或关闭Windows功能“。

 

6.接下来,选择虚拟机名字。如果你没有登陆你自己的名字,安装程序会创建一个名字。

VirtualBox

 

7.现在点击“Hardware”连接到内存和CPU配置。在配置内存时,你将注意到初始内存与最大值内存之间的差别。初始内存是虚拟机第一次启动时分配给它的内存。我推荐把它设置成一个相对较低的值,因为它很容易增长。内存的最大值是虚拟机能使用的最大内存数量。这不是一个动态配置,仅仅是指定上限。把它设置成与你服务器的RAM数量相等也没有问题。接下来,选择机器能使用的虚拟处理器数量。把虚拟CPU的数量设置得比可用处理器的数量更高是没有意义的,不过如果你想在仅有一个CPU的物理机上,看起来似乎有32个处理器——可能的最大值,你能在这里指定。

在初始化安装后,VirtualBox的主屏幕看起来像图2.6。

一、安装准备
1.确定机器有VT
       终端输入命令: grep vmx /proc/cpuinfo (INTEL芯片)
grep svm /proc/cpuinfo (AMD芯片)
不知道芯片的生产厂商则输入:egrep ‘(vmx|svm)’ /proc/cpuinfo
如果flags: 里有vmx
或者svm就说明支持VT;如果没有任何的输出,说明你的cpu不支持,将无法成功安装KVM虚拟机。

图片 4 

图片 5

2. 确保BIOS里开启VT
 Intel(R) Virtualization Tech [Enabled]
如有必要,还需在BIOS中开启VT-d

图4:虚拟机可用的内存和CPU的数量能轻松更改。

图2.6 VirtualBox开始页面

3. 确保内核版本较新,支持KVM
用uname –r查看内核版本,如果在2.6.20以下的linux版本,需升级内核。

8.至于图形适配器,默认下使用的是准虚拟化的图形适配器。这个适配器执行得很好,在多数情况下没有必要更改。

点击New(新建)(如图2.7)开始一个新向导,它将指引你完成创建新虚拟机所有参数设定所需的多个步骤。

我这里使用   CentOS release 6.3      内核版本  2.6.32-279.el6.x86_64

9.创建虚拟机时最重要的选择之一是你想要使用的磁盘。安装程序的默认选择是在目录/var/lib/xen/images里创建一个磁盘镜像文件。这样很好,但是对于性能来说,设置LVM卷并使用LVM卷作为虚拟化磁盘是个好主意。为了让虚拟机创建更容易,在本文中,我们将基于一个磁盘镜像文件配置虚拟磁盘。点击连接到Disks。你能看见安装程序所创建的磁盘。

图片 6

 

图片 7 

图2.7 名称和操作系统

 

图5:基于一个磁盘镜像文件配置虚拟磁盘

在第一步,如图2.7所示,你必须给你的新虚拟机取一个名字。这里使用“Kali
Linux”。你还需要指明要用哪种操作系统。因为Kali Linux是基于Debian
GNU/Linuxr
,所以选择Linux类型,版本选择Debian(32-bit)或Debian(64-bit)。虽然其它的Linux版本也可以使用,但这样选择有助于区分你将要安装的各种虚拟机。

二、安装KVM
下面就Ubuntu和CentOS下安装使用KVM虚拟机做介绍:

注意:这是个技巧。想要在数据中心使用你的虚拟机吗?把磁盘镜像文件放在SAN上,这能使在另一台主机上创建虚拟机更容易!

图片 8

1.Ubuntu 安装
用guest登陆,安装KVM的命令为:
sudo apt-get install kvm qemu
qemu-kvm virt-manager kernel-package linux-source kqemu-source
build-essential
kvm安装成功后会有/dev/kvm,如果无需图形管理器,只需要安装前三个即可。

10.为了更改磁盘属性,比如磁盘文件的大小或位置,选择这个虚拟磁盘并点击“Edit”,根据你现在的需求更改磁盘属性。

图2.8 内存大小

再来查看下KVM是否安装成功,执行:virsh -c qemu:///system list
如果输入结果像下面这样的,那么成功了:
Connecting to uri: qemu:///system
Id Name State

11.正如你在图5所看到的,安装程序默认状态下不会让你访问光盘驱动。你可能想要设置光盘驱动,只要能够执行来自DVD安装盘的安装就可以。点击CD-ROM并选择虚拟机里你想要作为光盘驱动使用的媒介。默认的是主机操作系统上的/dev/cdrom。如果你想从一个ISO文件安装,使用Open按钮浏览ISO文件的位置。

在第二步,你必须决定给虚拟机分配多少内存。虽然对于作为服务器的Debian虚拟机,推荐的内存大小是768MB,但运行Kali桌面系统肯定是不够的,特别是对于Kali
Linux
Live系统而言,因为Live系统要使用内存来存储对文件系统所做的更改。我们建议将内存大小增加到1500MB(图2.8),强烈建议你分配不少于2048MB的RAM。


图片 9 

图片 10

2.CentOS中安装时
注1:CentOS中安装时,先要选择Selinux为enable,使用命令
#system-config-securitylevel-tui
可查看或修改selinux的状态。

图6:选择ISO文件替换物理CD-rom很容易

图2.9 硬盘

注2: CentOS中用root登陆时则安装命令为:
yum install kvm kmod-kvm qemu
再装入kvm模块:modprobe kvm-intel (Intel机器) 或者 modprobe kvm-amd
(amd机器)

12.在摘要窗口的Network
Adapters网络适配器)部分,你能看见自动添加了一个准虚拟化的网络适配器。稍后我们将讨论到网络适配器。

第三步(如图2.9),你会被提示为你的新虚拟机选择一个物理或虚拟硬盘。虽然对于Kali
Linux Live系统来讲,可以不要硬盘,这里还是添加一块,在第4章“安装Kali
Linux”中,我们将演示安装的过程,界时会用到这里添加的硬盘。

注3:可以用以下命令来检查是否装入kvm模块:
/sbin/lsmod | grep kvm
如果输出关于kvm版本的信息则已装入kvm模块

13.现在检查Operating System
Installation所提及的安装资源。如果都有了,点击OK并部署你的虚拟机。

图片 11

注4:
安装好后,可使用qemu-kvm命令,输入该命令,如果系统显示未知的命令,可查看/usr/libexec中是否有qemu-kvm可执行文件,如果有,将其拷贝到/bin目录下即可。
     
 如果确实按照上面的步骤进行了,却在/bin,/usr/libexec,/usr/bin,/usr/sbin里都找不到qemu-kvm可执行文件,可执行以下命令:
#yum provides “*/qemu-kvm”

安装虚拟操作系统之后,你能从Virtual Machine
Manager访问它。在这一系列的后面部分,我们将学习更多管理选项。

图2.10 硬盘文件类型

注5:安装新内核后,可能有部分软件版本过低,不兼容。比如firefox因版本过低,无法启动。
CentOS下可使用如下命令更新该软件(以firefox为例):
#yum update firefox

Machine
Manager工具创建虚拟机。
创建虚拟机的步骤在Linux版本之间是相当不同的。例如,Ubuntu服务器提供Xen工具——…

虚拟机硬盘的内容是以文件形式存储在宿主机上的。VirtualBox可以使用多种格式(如图2.10)来保存硬盘的内容:默认(VDI)的对应于VirtualBox的本机格式;VMDK是VMware使用的格式;QCOW是QEMU所使用的格式。这里保持默认值不变,因为你没有什么原因要变它。当你想从一种虚拟机向另一种虚拟机迁移时,主要感兴趣的就是这种能兼容多种格式的能力。

 

图片 12

 

图2.11 在物理硬盘上存储

**三、使用KVM

图2.11中的说明文字,“存储在物理硬盘上”清楚地描述了动态和固化硬盘分配的优点和缺点。在本例中,我们保持默认选择不变(动态分配),因为我们使用的是笔记本上的SSD硬盘。我们不想浪费空间,也不需要额外的性能,因为机器已经很快了。

**

图片 13

1.安装虚拟机图形管理工具——Virtual Machine Manager

图2.12 文件位置和大小

为方便期间我使用 centos图形界面工具 来操作创建虚拟机
virt-manager 管理虚拟化的方法

如图2.12所示,默认的硬盘大小为8GB,这对于Kali
Linux的标准安装是不够的,因此增加容量到20GB。你也能调整这个磁盘镜像文件的名字和存放的位置。当硬盘上没有足够的空间时,允许将磁盘映像存储在外部驱动器上,这是非常方便的。

Virtual Machine Manager (virt-manager)
是一个轻量级应用程序套件,形式为一个管理虚拟机的命令行或图形用户界面
(GUI)。除了提供对虚拟机的管理功能之外,virt-manager 还通过一个嵌入式虚拟网络计算
(VNC) 客户端查看器为 Guest 虚拟机提供一个完整图形控制台。

图片 14

作为一个应用程序套件,virt-manager 包括了一组常见的虚拟化管理工具。这些工具已在表
1
中列出,包括虚拟机构造、克隆、映像制作和查看。virsh 实用程序不是 virt-manager 包的一部分,但它本身就具有很重要的价值。

图2.13 新虚拟机出现在列表中

 安装:yum install virt-manager.x86_64

当目前为止,已经成功创建了虚拟机,但你还不能实际运行,因为还没安装操作系统。现在你还有一些设置需要调整。点击虚拟机管理器(VM
Manager)屏幕中的Setting(如图2.13),然后我们一起来看看一些最有用的设置。

 

图片 15

打开:GUI方式 菜单Applications->System
Tools->Virtual Machine Management

图2.14 存储设置

 

在存储页(如图2.14),你应该将Kali
Linux映像文件与虚拟光驱相关联。首先,选取在存储树型列表中的CD-ROM,然后点击右边的小CD-ROM图标,会显示一个上下文菜单,在其上选择“选择虚拟光盘文件…“(Choose
Virtual Optical Disk File…)

 

图片 16

创建后后打开报错:

图2.15 系统设置:主板

Unable to open a connection to the libvirt management daemon.