Привет, друг. Сегодня поговорим про виртуальные машины. То что виртуалки — штука, в хозяйстве, полезная, обычно все согласны. Но когда доходит до реального использования, далеко не все применяют их повседневно. Я сейчас говорю про тех кто занимается OSINT. Как там в других сферах, я не особо в курсе. Хотя думаю, что вряд ли ситуация принципиально отличается. В том смысле, что если, на первый взгляд — не очень важно, то можно и забить. Я попробую в этой статье донести мысль почему виртуальные машины всё-таки стоит внедрить в свой рабочий процесс и активно использовать. Мы разберёмся какие бываю виртуалки, какая от них польза, как настраивать, устанавливать операционную систему, какие есть нюансы и что нужно знать.
Оглавлениение
Что такое виртуальные машины
Для начала пару слов о том что это вообще такое — виртуальные машины. Простыми словами это ещё одна дополнительная операционная система внутри твоей основной. Основную принято называть хостом, а дополнительную — гостевой. Гостевая система забирает часть ресурсов твоего компьютера и использует их для своей работы. При этом она может быть полностью изолирована от хостовой, либо иметь точки соприкосновения, например общей буфер обмена или общие каталоги. Но об этом поговорим отдельно. Программу, которая управляет всем этим процессом называют гипервизором. Здесь тебе придётся выбрать между двумя наиболее популярными: VirtualBox и VMware. Но мне кажется, что ты выберешь VirtualBox, чуть позже объясню почему мне так кажется. Хотя, в любом случае, это дело вкуса и принципиальной разницы нет.
VirtualBox и VMware это, конечно же, не единственно существующие варианты, есть и другие. Но, будем честными, они уж совсем на любителя.
Для чего нужны виртуальные машины
Есть три основные задачи, которые призваны решать виртуальные машины.
- разграничение рабочих пространств под разные цели;
- маршрутизация трафика;
- защита от вредоносного ПО.
Деление конечно же условное, потому как, в идеале, все эти задачи должны решаться в комплексе. Но такое разделение полезно чтобы понять как это работает и ничего не провтыкать. Потому что это, как раз, те задачи, которые сами по себе важны, но прямо на результат не влияют. А так как OSINT в большинстве случаев это довольно трудоёмкий процесс, то отвлекаться на, хоть и важные, но второстепенные вопросы, обычно не хочется. И именно тут и проявляется полезность использования виртуалок. Потому как их достаточно один раз нормально настроить и дальше можно не парится. Давай более подробно разберем эти задачи.
Разграничение рабочих пространств
В зависимости от направления работы может меняться набор инструментов. А, с учётом того, что один и тот же набор может использоваться больше чем один раз, очень логичным выглядит иметь заготовки подобных наборов под разные задачи:
- Подмена локации и анонимность. Если приходится часто работать по какой-то конкретной стране или региону, то будет очень здраво иметь виртуалку настроенную именно под этот регион. Самое базовое это добавить туда VPN с нужной локацией, аккаунты с личностями из этой страны (статья про фейковые аккаунты или Sock Puppets), добавить в браузере в закладки инструменты по этой стране. Ну и так далее, смысл я думаю понятен. Всё это, во-первых, элемент удобства, а во-вторых — безопасности. Потому как ты точно ничего не перепутаешь и случайно, не засветишь, например, ни тот аккаунт.
- Использование программ. Утилиты наподобие Metagoofil, да и вообще любые парсеры, могут оставлять после себя большое количество файлов. Далеко не все они нужны, но и удалять всё сразу может быть не лучшим решением. Потому как ситуация может изменится и то что казалось ненужным, через время окажется крайне полезным. А чем больше таких файлов, тем легче запутаться. Например забыть куда положил какой-то документ, или, даже, забыть что вообще он был. В такой ситуации тоже могут помочь виртуальные машины. Т.е. запускать все подобные утилиты на отдельной виртуалке и там же хранить результаты, забирая только те файлы которые нужны прямо сейчас.
- Хранение информации. Если развивать идею из предыдущего пункта, то стоит отметить, что можно использовать виртуальные машины специально для хранения информации. Например, какой-то особо чувствительной — попадание которой в чужие руки очень нежелательно. Или, ещё вариант, это хранение аккаунтов существование которых не хочется демонстрировать. Подход тут будет зависеть от важности хранимых данных или степени паранойи. Можно просто зашифровать диск, а можно использовать специализированные дистрибутивы. Например Tails (обзор Tails). Ну а флешку с ней можно закопать в огороде, причём в соседском.
Маршрутизация трафика
Под маршрутизацией трафика подразумевается использование всяких VPN и proxy. Общий смысл в том, что благодаря виртуалкам, всё это можно более гибко настроить. Начиная, как я уже упоминал, от использования конфигурации VPN под конкретную локацию, заканчивая созданием цепочек анонимизации. Например на хостовой системе запускаем VPN, а на гостевой — proxy, или TOR, или другой VPN. Кому как нравится и удобнее. Хотя в большинстве случаев для OSINT эти заморочки не имеют смысла и VPN хватает. На крайний случай — VPN+proxy, например, для обхода всяких геоблоков. Но, ничто не мешает, для каких-то ситуаций иметь уже настроенную виртуалку с более сложно схемой. Например в статье про Whonix я показывал как использовать отдельную виртуальную машину в качестве шлюза, через который будет идти трафик другой виртуалки — это позволяет добавлять дополнительные звенья в общую цепочку.
Защита от вредоносного ПО
Сам факт использования виртуалок уже повышает степень защищённости от всяких вирусов и тому подобного. Потому как даже если ты с чем-то подобных столкнёшься — под угрозой будет именно виртуалка, а не весь твой компьютер. Но можно пойти дальше и сделать отдельную виртуальную машину — песочницу. В которой открывать всё подозрительное и потенциально опасное. Там же всё это можно отдельно проверять, чтобы убедится что угрозы нет. Это вообще очень правильная практика — всё что чужое считать опасным и открывать в песочнице.
Ещё один правильный подход это хранить снимки состояний виртуальных машин. Не только песочницы, а вообще всех. Потому как и без посторонней помощи, можно накосячить и что-нибудь сломать. А чинить или переустанавливать не всегда есть желание. Сильно проще, используя снимок, вернуть всё в исходное состояние. Про снимки расскажу чуть дальше, на примерах.

Теперь давай посмотрим на популярные гипервизоры и разберёмся на примерах как создавать и запускать виртуальные машины.
Образ системы
Перед созданием виртуалки нужно разжиться образом системы, которую будем ставить. Тут есть два варианта:
- можно скачать iso-образ нужной системы и установить с нуля, так как бы ты устанавливал систему себе на компьютер;
- второй вариант — это скачать уже готовый образ виртуальной машины. Многие разработчики дистрибутивов Linux выкладывают их.
Мне, по понятным причинам, больше нравится второй вариант. Для этого примера образ виртуальной машины будем использовать Kali Linux. Потому для начала идём на сайт, в раздел загрузки Kali Linux, и качаем уже готовый образ, под ту виртуалку которую планируем использовать.

Если тебе нужна виртуалка с Windows, то придётся устанавливать самому, предварительно скачав iso-образ, причём качать его тоже стоит с сайта Microsoft. Использовать чужие сборки — как установочных дисков, так и готовые виртуальные машины — идея очень плохая. Ты ведь не знаешь что автор туда напихал и чем это тебе грозит. Вот и не стоит играть в эту лотерею.
Кстати, по поводу ico образа с Windows есть небольшой нюанс, который не все знают — потому расскажу. Но это только если у тебя хост тоже Windows. Если что-то другое — прокручивай дальше. И только если нужно скачать образ Windows 10, потому как Windows 11 скачивается как обычно.
В чём суть. Если просто перейти в раздел загрузки Windows 10 на сайте Microsoft, то тебе предложат сначала скачать утилиту для создания загрузочных носителей. Можно конечно и так. Но возникает закономерный вопрос — нахрен оно нужно. Лучше скачать сразу образ, потому что нам нужен именно он. Для этого перед тем как переходить в раздел загрузки, открой в браузере пустую вкладку, затем открой инструменты разработчика и переключи отображение вида как на мобильном устройстве. И уже после этого открывай там страницу загрузки с сайта Microsoft. Останется только выбрать язык и можно скачать образ.
VirtualBox
Теперь давай делать сами виртуальные машины. Если ещё нету, то качаем с официального сайта VirtualBox и устанавливаем. Там же можно скачать и установить Extension Pack. Это добавит некоторые функции, например возможность шифровать диски.

При первом запуске VirtualBox, что-то особо настраивать в самой программе смысла нет, потому можно сразу переходить к созданию виртуалки. Для начала, давай разберемся как установить туда систему.
Установка системы
Для установки системы из образа жмём кнопку «Создать». В открывшемся окне нужно указать стартовые параметры новой виртуальной машины.

- Имя — то как виртуалка будет подписана в списке;
- Папка — где будут хранится файлы виртуалки;
- Образ ISO — выбираем скачанный образ системы;
- Вид и версию ОС оно, как правило, укажет автоматически после добавления файла образа. Если вдруг этого не произошло — можно выбрать из списка;
Здесь же можно включить автоматическую установку. Хотя я так обычно не делаю, потому что тогда все параметры при установке будут выставлены по-умолчанию. А это не всегда нужно.
Во вкладке «Укажите виртуальное оборудование» выделяем сколько виртуалка заберёт себе оперативной памяти и ядер процессора. Тут принцип, я думаю, понятный — чем больше отдадим, тем быстрее будет работать. Но, учитывая, что лютая производительность от виртуалки, как правило, не требуется, то вполне достаточно 4Гб памяти и 4 ядра — для Windows. И 2-4 Гб памяти и 2 ядра для Linux. Но тут зависит от исходных мощностей твоего компьютера. Если запас позволяет — ставь больше. При этом не забывай учитывать ситуацию, когда может понадобится запуск одновременно нескольких виртуалок. Но, в любом случае, эти параметры можно будет потом поменять.
Во вкладке «Укажите виртуальный жёсткий диск» выделяем место под виртуалку. Сколько выделять зависит от целей использования, главное не забывать что нужно будет ещё какие-то программы устанавливать и иметь хоть немного резерва. Потому «программа минимум» это: для Windows — 60 Гб, а для Linux — 30 Гб (в зависимости от дистрибутива можно и меньше). Здесь же можно включить параметр «Выделить место в полном объёме» — в таком случае размер файлов виртуалки сразу будет таким, каким мы указали размер диска. Если не включать — размер будет увеличиваться по мере необходимости.
После нажатия кнопки «Готово», созданная виртуалка появится в списке. В нём будут отображаться все виртуальные машины и здесь же мы будем ими управлять.
На этом этапе сама виртуалка уже создана, но система на неё ещё не установлена. Чтобы началась установка — виртуалку нужно запустить. Для этого жмём кнопку «Запустить». После чего начнётся обычная установка операционной системы. Процесс точно такой же как и при установке на компьютер.

Единственное отличие есть при первом запуске уже установленной системы. Оно в том что нужно установить дополнения гостевой системы. Они нужны чтобы стали доступны все возможности виртуалки. Например изменение разрешения при изменении размера окна, общие папки, общий буфер, перетаскивание файлов между хостом и гостевой системой, ну и т.д.
Для установки дополнений, в верхнем меню жмём «Устройства» и выбираем «Подключить образ дополнений гостевой ОС». После этого появится подключенный диск, на котором будут установочные файлы дополнений под разные операционные системы.
Вот, в принципе, и всё — наша виртуальная система готова к работе. Можно начинать использовать по назначению.
Добавление системы
Теперь разберём вариант с добавлением уже готовой виртуалки. Тут всё ещё проще. Так как мы уже скачали образ виртуальной машины Kali Linux, то в VirtualBox нажимаем кнопку «Открыть».

В открывшемся окне выбираем и открываем файл с витруалкой. В нашем случае это то что скачивали с сайта Kali. После этого виртуальная машина появится в общем списке. В принципе, можно сразу запускать. Но изначально у неё будут выставлены минимально необходимые для работы параметры. Потому, если ресурсы позволяют, стоит немного добавить.

Для этого открываем настройки и переходим в раздел «Система». Там, на вкладке «Материнская плата» добавляем памяти, а на вкладке «Процессор» добавляем ядер процессора. Сохраняем и запускаем. Дополнения гостевой ОС тоже нужно будет установить. Их нужно устанавливать для каждой новой виртуалки.
Общие папки в VirtualBox
Следующий важный вопрос это взаимодействие гостевой системы с хостом. Потому как часто может возникнуть необходимость, например, передать файлы с одной системы на другую. Для гостевой системы — хост, это по сути, внешнее устройство, с которым можно настроить взаимодействие. Для этого есть несколько вариантов.

В верхнем меню выбираем пункт «Устройства» и здесь есть несколько вариантов взаимодействия:
- Общие папки. Мы можем добавить папку которая будет видна и на хосте и в гостевой системе. Соответственно, всё что в ней лежит доступно с обоих систем. Если гостевая это Linux то сразу после создания общей папке у тебя не будет прав доступа. Чтобы это исправить нужно добавить себя в группу vboxsf:
sudo usermod -aG vboxsf имя_пользователя
После перезагрузки папка станет доступной.
- Общий буфер обмена. Тут понятно. На одной системе скопировали — на другой вставили.
- Функция Drag and Drop — возможность перетаскивать файлы с одной системы в другую.
Снимки состояний
Ещё один важный момент, про который я упоминал выше, это снимки состояний. Дело в том, что виртуальные машины могут ломаться. Не особо важно по какой причине. Важнее то что если ты её активно эксплуатировал в работе, там может быть что-то важное, что не хочется терять. Т.е. снимок — это по сути бэкап.
Чтобы его сделать нужно открыть список виртуалок, выбрать нужную, и справа — там где её характеристики, открыт вкладку «Снимки». В верху появится кнопка «Сделать». После её нажатия в списке добавится снимок текущего состояния, который можно применить, если что-то пошло не так.
Ещё один вариант резервного копирования — это создание копии всей машины. Виртуальные машины можно экспортировать (кнопка «Экспорт» на главном экране) в отдельный файл и, например, перенести на другой компьютер.
В принципе, перечисленного тебе будет достаточно для комфортного повседневного использования VirtualBox. Забивать себе голову всеми остальными настройками и возможностями я особого смысла не вижу. Но если очень хочется у них на сайте есть гайд, листов приблизительно на 500 — можно полистать.
Виртуальные машины VMware

Ну и нельзя не упомянуть VMware. Сама по себе программа не плохая, и работает достойно. Есть даже, не безосновательное, мнение что VMware стабильнее чем VirtualBox. Хотя для не особо сложных задач ты вряд ли почувствуешь разницу. Ну и разобраться с ней тоже не составит труда, потому как создание виртуалок, снимки, настройки — всё очень похоже. Но внимательный читатель наверняка помнит, что в начале я написал — скорее всего ты сделаешь выбор в пользу именно VirtualBox. Почему? Потому что когда компания Broadcom заполучила в свои цепкие руки VMware Workstation, они сначала придумали отличную идею, но реализовали её через известное место. Отличная идея заключается в том что VMware Workstation Pro стала бесплатной. А «но» заключается в том, что чтобы её заполучить, имеется в виду с официального источника, нужно решить неслабый квест.
Квест на столько не слабый, что на YouTube народ записывает целые гайды о том как скачать VMware Workstation. В двух словах суть такова: когда на сайте vmware.com ты найдёшь, а найдёшь ты не сразу, где скачивается Workstation и нажмёшь кнопку загрузки, то тебя отправит на сайт Broadcom. На котором сначала нужно будет зарегистрироваться. И искать где скачать VMware тебе придётся уже там. А это тоже квест. Дам подсказку — раздел бесплатных загрузок находится в разделе платных загрузок. И если, вдруг, ты подумал что это всё и сейчас будешь скачивать — хер там плавал. Когда ты нажмёшь на кнопку скачивания, тебе предложат заполнить анкету, в которой нужно указать свои данные, где живёшь и кем работаешь. Скипнуть анкету нельзя.
А когда ты, скрипя зубами, её заполнишь, то увидишь радостное сообщение, что анкета отправлена на рассмотрение. Что, а главное — зачем, там рассматривать для скачивания бесплатной программы, я не могу даже предположить. Зато точно знаю, что длится этот процесс может достаточно долго, потому что, судя по всему, их одобряют вручную. А когда это радостное событие настанет и тебе на почту придёт письмо, что твой аккаунт одобрен, ты удалишь это письмо на хрен, потому что уже давно настроил и используешь VirtualBox. Во всяком случае я сделал именно так. И на этой радостной ноте, мы можем заканчивать эту статью.
Твой Pulse.
