mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
在OpenStack上创建实例时,需要提供相关的系统镜像。通常使用的是qcow2格式的镜像,但一些镜像的官方没有提供适用于OpenStack的镜像。这时就需要我们将官方提供的镜像转换为适用于OpenStack的镜像。此处以Kali系统为例。
Kali Linux是基于Debian的Linux发行版,每一季度更新一次,由Offensive Security Ltd维护与资助。Kali Linux预装了许多渗透测试的软件,包括nmap、Wireshark、John the Ripper等,因此Kali Linux常用于渗透测试相关的项目。Kali Linux系统永久免费,用户可通过硬盘、live CD、live USB运行Kali Linux。
环境部署
登录一台磁盘空间较大的Linux主机,此处以CentOS 7为例,配置EPEL源
yum install qemu-kvm bridge-utils libvirt* virt-* p7zip
7za x kali-linux-2022.3-vmware-amd64.7z
安装虚拟化工具
Kali Linux官方网站提供了基于不同应用场景的镜像文件,为了避免系统初始化安装的过程,建议使用基于虚拟机的镜像文件。从Kali Linux官方网站获取基于虚拟机的镜像文件,将文件下载到Linux中。镜像文件通常默认是一个7z格式的压缩包,用户需要通过p7zip将其解压
[root@bogon uu]# ls -lh kali-linux-2022.3-vmware-amd64.vmwarevm/
总用量 12G
-rw-r--r--. 1 root root 1.7G 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s001.vmdk
-rw-r--r--. 1 root root 1.4G 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s002.vmdk
-rw-r--r--. 1 root root 555M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s003.vmdk
-rw-r--r--. 1 root root 20M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s004.vmdk
-rw-r--r--. 1 root root 1.4G 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s005.vmdk
-rw-r--r--. 1 root root 335M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s006.vmdk
-rw-r--r--. 1 root root 237M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s007.vmdk
-rw-r--r--. 1 root root 209M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s008.vmdk
-rw-r--r--. 1 root root 425M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s009.vmdk
-rw-r--r--. 1 root root 510M 8月 8 18:59 kali-linux-2022.3-vmware-amd64-s010.vmdk
...
qemu-img convert -O qcow2 kali-linux-2022.3-vmware-amd64.vmwarevm/kali-linux-2022.3-vmware-amd64-s0*.vmdk kali.qcow2
解压完成后,查看文件目录中的VMDK文件列表。解压后的文件大小为12G左右。如果Linux系统的磁盘空间太小,那么建议在转换格式之前进行磁盘扩容。
通过qemu-img命令将所有VMDK文件转换为一个QCOW2格式的文件
[root@bogon uu]# file kali.qcow2
kali.qcow2: QEMU QCOW Image (v3), 86000000000 bytes
[root@controller ~]# . admin-openrc
[root@controller ~]# glance image-create --name "Kali-Linux" --disk-format qcow2 --container-format bare --file kali.qcow2
+------------------+----------------------------------------------------------------------------------+
| Property | Value |
+------------------+----------------------------------------------------------------------------------+
| checksum | 443b7623e27ecf03dc9e01ee93f67afe |
| container_format | bare |
| created_at | 2022-11-14T04:03:36Z |
| disk_format | qcow2 |
| id | 078858c3-5bc7-4806-893e-3c3e00dc12a7 |
| min_disk | 0 |
| min_ram | 0 |
| name | kali |
| os_hash_algo | sha512 |
| os_hash_value | 6513f21e44aa3da349f248188a44bc304a3653a04122d8fb4535423c8e1d14cd6a153f735bb0982e |
| | 2161b5b5186106570c17a9e58b64dd39390617cd5a350f78 |
| os_hidden | False |
| owner | 562e63b84e4949b4b7b1a626c0678980 |
| protected | False |
| size | 12181700608 |
| status | active |
| tags | [] |
| updated_at | 2022-11-14T04:03:37Z |
| virtual_size | Not available |
| visibility | public |
+------------------+----------------------------------------------------------------------------------+
由于源文件较大,整个格式转换的过程比较漫长。格式转换完成后,验证转换后的镜像文件。在创建实例时需要大于86G的磁盘空间。
如果是直接在OpenStack控制节点转换了镜像格式,那么可以直接从控制节点上传镜像文件
[root@bogon uu]# ls -lh
总用量 15G
-rw-r--r--. 1 root root 2.5G 10月 31 12:09 kali-linux-2022.3-vmware-amd64.7z
drwxr-xr-x. 2 root root 4.0K 8月 8 18:59 kali-linux-2022.3-vmware-amd64.vmwarevm
-rw-r--r--. 1 root root 12G 11月 1 10:09 kali.qcow2
tar -jcvf kali.bz2 kali.qcow2
如果镜像文件不在OpenStack的控制节点上,那么需要将镜像文件传输至本地再上传。查看镜像文件大小。镜像的大小为12G左右,而lszrz工具最大支持4G大小的文件传输。此时需要将镜像文件进行压缩
[root@bogon uu]# ls -lh
总用量 18G
-rw-r--r--. 1 root root 3.5G 11月 1 10:27 kali.bz2
-rw-r--r--. 1 root root 2.5G 10月 31 12:09 kali-linux-2022.3-vmware-amd64.7z
drwxr-xr-x. 2 root root 4.0K 8月 8 18:59 kali-linux-2022.3-vmware-amd64.vmwarevm
-rw-r--r--. 1 root root 12G 11月 1 10:09 kali.qcow2
sz kali.bz
压缩完成后,查看压缩包。镜像的压缩包大小为3.5G,可将压缩包传输至本地。来不及解释了,快上车!(进群看公告)欢迎新的小伙伴加入!在这里,我们鼓励大家积极参与群内讨论和交流,分享自己的见解和经验,一起学习和成长。同时,也欢迎大家提出问题和建议,让我们不断改进和完善这个平台。↓↓↓点个在看,你最好看!