跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

Kali Linux in the DigitalOcean Cloud

精选回复

发布于

DigitalOcean 是一个类似于AWS、Microsoft Azure、Google Cloud Platform 等的云提供商。他们提供不同Linux 发行版(例如Debian、Ubuntu、FreeBSD 等)的实例,称为“droplet”。与AWS 类似,DigitalOcean 在世界各地都有数据中心,有时在每个国家/地区都有多个数据中心。

然而,有一项特殊功能使他们有别于竞争对手。不久前,他们添加了对自定义映像的支持,允许用户导入虚拟机磁盘并将其用作Droplet。这对我们来说是完美的,因为我们可以在他们的云中使用我们自己的Kali Linux 版本。

虽然可以加载官方的Kali Linux 虚拟映像,但效率不是很高。相反,我们将构建一个轻量级的Kali 安装,以使其正常运行。

5 GB 硬盘空间,因此如果您要继续操作,请确保有足够的硬盘空间。

首先,我们将确保系统是最新的:

易于更新

apt -y 全面升级

如果安装了新内核,请在继续之前重新启动系统,然后继续启动build:

apt -y 安装git live-build cdebootstrap devscripts

git克隆https://gitlab.com/kalilinux/build-scripts/live-build-config.git

cd 实时构建配置

./build.sh --variant 最小--verbose

构建ISO 需要一段时间,因为它需要下载大量包并组装它们。与此同时,享受一杯美味的咖啡。或者茶。

“–verbose”选项将在屏幕上显示构建日志。但是可以将其删除,而是可以在build.log 文件中跟踪进度:

tail -f 构建.log

一旦启动“build.sh”的终端返回提示符,ISO 就已准备就绪,可以在images/目录中找到。

生成 ISO

构建ISO 后,我们现在可以开始构建虚拟机。创建一个新的虚拟机,将操作系统设置为最新的Debian 64 位并分配20 GB 硬盘。如果需要,Kali 培训网站上有详细的设置说明。将虚拟磁盘存储为动态分配的单个文件非常重要。其余的(例如CPU 和RAM 数量)并不重要,因为只有磁盘文件会上传到DigitalOcean。

磁盘大小很重要,因为计费是基于自定义映像的磁盘大小。它还会影响我们可以创建的实例的选择。假设创建了40 GB 硬盘,则在5 美元/月级别创建实例将失败,因为其最大硬盘大小为25 GB。在这种情况下,我们将被迫对具有50 GB 磁盘的实例使用10 美元/月的选项。别担心,即使磁盘有20 GB,它也会根据所选的Droplet 计划进行扩展。

安装时选择手动分区,设置如下图,所有文件在一个分区,无交换文件。

iiybuq0j1yj750.png

创建虚拟机

安装完成并重新启动后,我们在控制台登录并更新系统:

易于更新

apt -y 全面升级

如果您在“apt update”期间没有看到它通过镜像,则您可能在安装过程中不小心忘记添加网络镜像。按照Kali-Docs 站点上的说明进行修复并再次运行这两个命令。

更新系统

为了让DigitalOcean 为我们配置系统,我们需要安装cloud-init 包:

apt -y 安装cloud-init

echo 'datasource_list: [ConfigDrive、DigitalOcean、NoCloud、无]' /etc/cloud/cloud.cfg.d/99_digitalocean.cfg

systemctl 启用cloud-init

安装所需的软件包

引导时,磁盘已连接并映射为sda1。然而,对于液滴,它被视为vda1。为了解决这个问题,我们需要将/boot/grub/grub.cfg: 中的所有sda1 实例更改为vda1

sed -i 's/sda1/vda1/g' /boot/grub/grub.cfg

更新配置文件后,我们可以运行“update-grub”来更新系统:

更新grub

更新 GRUB

由于我们需要使用SSH 连接到DigitalOcean 上的系统,因此还需要安装(并启用)openssh-server 软件包:

apt -y 安装openssh-server

systemctl 启用ssh.service

创建标准Droplet 时,您可以选择是否使用SSH 密钥。但是,当使用自定义映像时,这不是一个选项,并且必须使用SSH 密钥。为此,DigitalOcean要求我们删除root密码:

密码-d root

我们还需要创建一个/root/.ssh 文件夹:

mkdir /root/.ssh

准备 SSH

在完成虚拟机之前,我们运行一些命令来清理:

自动删除

自动清洁

rm -rf /var/log/*

历史-c

此时,我们的虚拟机已准备就绪,因此我们运行“poweroff”来关闭系统:

关机

清理

在虚拟机文件夹中,找到.vmdk 文件,然后使用bzip2、gzip 或zip 对其进行压缩,准备上传到DigitalOcean:

bzip2 kali.vmdk

登录您的DigitalOcean 帐户。在左侧的“管理”部分中,单击“图像”,然后选择“自定义图像”选项卡。

rwa12brjyio751.png

从那里,我们上传压缩的磁盘映像。我们将其命名为Kali,将其标记为Debian,然后选择要将其上传到的区域和数据中心。请注意,上传到某个位置后,Droplet 只能在该位置启动,这是自定义图像的当前限制。此阶段要记住的另一件事是上传的图像会消耗磁盘空间,DigitalOcean 将根据磁盘使用情况进行计费。

h4a0va4shzh752.png

正在上传

完成后,“已上传”列将显示上传时间。现在我们将单击图像的“更多”选项并选择“启动液滴”。

laj1y0a2pai753.png

您将进入Droplet 设置,您可以在其中选择Droplet 计划、SSH 密钥以及启动它的项目。由于这是自定义映像,因此需要使用SSH 密钥。您可以选择现有密钥,也可以通过单击“新SSH 密钥”上传新密钥,这将打开以下屏幕,您可以在其中粘贴公钥并将其命名为:

glvpavsur0m754.png

完成后,点击“创建”,如下图所示。然后,它将带您返回仪表板(管理Droplet),其中列出了所有Droplet。由于我们使用的是SSH 密钥,因此DigitalOcean 不会发送包含Droplet 凭据的电子邮件。

s5nxw3cqyst755.png

几秒钟内,IP 显示后,我们的Droplet 就准备好了。为了进行连接,我们需要使用我们创建的SSH 私钥(在本例中称为MY_KEY):

user@computer:~$ ssh -i MY_KEY [emailprotected]

无法确定主机“192.168.1.1 (192.168.1.1)”的真实性。

ECDSA 密钥指纹为SHA256:d83fcd43d25e2a7edd291666160b47360cc85870ded。

您确定要继续连接吗(是/否)?是的

警告: 已将“IP”(ECDSA) 永久添加到已知主机列表中。

Linux kali-s-1vcpu-1gb-nyc3-01 4.19.0-kali5-amd64 #1 SMP Debian 4.19.37-2kali1 (2019-05-15) x86_64

Kali GNU/Linux 系统中包含的程序是自由软件;

每个程序的确切分配条款在

/usr/share/doc/*/copyright 中的各个文件。

Kali GNU/Linux 绝对不提供任何保证

适用法律允许。

现在我们有了一个很好的、最小的Kali Linux 安装,我们可以根据需要进行部署和自定义:

root@kali-s-1vcpu-1gb-nyc3-01:~# lsb_release -a

没有可用的LSB 模块。

经销商ID: 卡利

描述: Kali GNU/Linux 滚动

发布: 2019.2

代号: 不适用

root@kali-s-1vcpu-1gb-nyc3-01:~# uname -a

Linux kali-s-1vcpu-1gb-nyc3-01 4.19.0-kali5-amd64 #1 SMP Debian 4.19.37-2kali1 (2019-05-15) x86_64 GNU/Linux

root@kali-s-1vcpu-1gb-lon1-01:~# free -h

可用的免费共享缓冲区/缓存总数

内存: 987Mi 51Mi 527Mi 1.0Mi 407Mi 790Mi

交换: 0B 0B 0B

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。