Введение
Kali Linux — дистрибутив Linux для тестирования безопасности. Этот курс начинается с повседневных навыков работы в терминале, необходимых перед использованием инструментов безопасности. Предыдущий опыт работы с Linux или Docker не требуется.
Ваша машина LabEx работает под Ubuntu и содержит отдельный контейнер Kali. Контейнер предоставляет собственные файлы и программы, используя общее с хостом ядро Linux. Лабораторная работа подготавливает среду за вас; вы войдёте в Kali как обычный пользователь, определите систему, прочитаете справку по команде и сохраните небольшую запись о среде. В этой первой работе нет цели для сканирования.
На протяжении всей работы используйте интерфейс Terminal. Рабочий стол, учётная запись Docker Hub и отдельный шаг установки программ не нужны.
Войдите в Kali и создайте первый файл
На этом шаге вы войдёте в подготовленную среду Kali, определите своего пользователя и рабочую папку и запишете короткий текстовый файл.
Терминал — это текстовое окно; оболочка — программа, читающая ваши команды. Щёлкните в Terminal, введите команду и нажмите Enter. Копируйте только команду, без приглашения перед ней.
Изначальный терминал принадлежит хосту Ubuntu и пользователю labex. Лабораторная работа предоставляет команду kali, открывающую оболочку Bash в подготовленном контейнере. Настройка контейнера уже завершена; самостоятельно выполнять команды Docker не нужно.
kali
Теперь приглашение выглядит так:
kali@kali-training:/home/labex/project$
Здесь kali — имя пользователя, kali-training — имя контейнера, а путь — текущая папка. Завершающий $ обычно обозначает обычного пользователя; в приглашении администратора root часто используется #. Приглашения можно менять, поэтому подтвердите текущую учётную запись командой whoami, выводящей эффективное имя пользователя:
whoami
Ожидаемый вывод:
kali
Вы работаете как обычный пользователь, а не root. Административные операции будут рассмотрены далее в курсе.
Используйте pwd (вывести рабочую папку), чтобы узнать, куда будут записаны файлы с относительными именами:
pwd
Ожидаемый вывод:
/home/labex/project
Путь, начинающийся с /, является абсолютным путём файловой системы. Эта папка проекта доступна хосту Ubuntu по тому же пути, поэтому сохраняемые здесь файлы остаются доступны LabEx. Другие пути контейнера, например /etc/os-release, принадлежат Kali. Домашняя папка пользователя контейнера — /home/kali; она отличается от общей папки проекта.
echo выводит сообщение. Одинарные кавычки сохраняют слова вместе как буквальный текст. Оператор оболочки > отправляет вывод в файл вместо экрана, создавая файл или заменяя его содержимое. Создайте с его помощью первый учебный файл:
echo 'Kali practice started' > welcome.txt
Вывода не ожидается: сообщение попало в welcome.txt в текущей папке. cat читает файл и выводит его содержимое:
cat welcome.txt
Ожидаемый вывод:
Kali practice started
Это подтверждает, что вы умеете создавать и читать файл в рабочей папке Kali. Оставайтесь в этой оболочке Kali для следующего шага. Если вы закроете терминал, откройте новый Terminal и снова выполните kali. Команда exit внутри Kali возвращает на хост; она не удаляет контейнер или файлы проекта.
Определите Kali и сохраните сведения о выпуске
На этом шаге вы прочитаете идентификационные данные системы Kali, воспользуетесь встроенной справкой команды и сохраните сведения о выпуске, не предполагая определённый номер версии.
Дистрибутивы Linux предоставляют /etc/os-release как текстовый файл с записями KEY=value. В /etc находятся файлы настройки и идентификации системы. Прочитайте файл в оболочке Kali, открытой на шаге 1:
cat /etc/os-release
Найдите в выводе следующие записи:
PRETTY_NAME="Kali GNU/Linux Rolling"
...
ID=kali
...
ID обозначает дистрибутив; PRETTY_NAME — его понятное человеку название. Записи, начинающиеся с VERSION, описывают выпуск, если они предоставлены, например VERSION_ID, VERSION или VERSION_CODENAME. Принятый для лабораторной работы образ сейчас содержит эти поля, но разные дистрибутивы Linux предоставляют разные наборы полей версии. Читайте фактические значения вместо копирования версии из учебника. Если в ID указано ubuntu, вы всё ещё на хосте: выполните kali, затем повторите команду.
Kali — дистрибутив с непрерывным обновлением, поэтому его программы меняются со временем. Эта работа использует фиксированный образ для воспроизводимости упражнения. Для определения среды не нужно обновлять сведения о пакетах или сами программы. Минимальный контейнер Kali также не содержит всех инструментов безопасности.
Чтобы узнать, как работает команда, многие программы предоставляют параметр --help. Параметр изменяет запрашиваемое поведение; --help запрашивает информацию об использовании вместо чтения файла. Попробуйте его с cat:
cat --help
Ближе к началу вы должны увидеть:
Usage: cat [OPTION]... [FILE]...
Concatenate FILE(s) to standard output.
[FILE] — обозначение места для путей к файлам, а не текст, который нужно вводить буквально. Необязательные части заключены в квадратные скобки. Справка подтверждает, что содержимое файла обычно направляется в стандартный вывод, который вы читаете в терминале.
Снова используйте > из шага 1 для сохранения вывода. На этот раз команда выдаёт фактические сведения о выпуске, а не введённое вами сообщение:
cat /etc/os-release > kali-release.txt
Команда читает /etc/os-release и записывает отдельный файл в папке проекта. Она не изменяет системный файл идентификации. Прочитайте сохранённую запись:
cat kali-release.txt
Вывод должен совпадать с ранее прочитанным источником, включая ID=kali и все имеющиеся записи VERSION. Сохранение небольшого файла целиком сохраняет исходные значения и кавычки и не требует ещё не изученных команд фильтрации. Теперь у вас есть читаемая запись о среде в /home/labex/project/kali-release.txt.
Резюме
Вы вошли в подготовленный контейнер Kali с хоста Ubuntu, распознали приглашение обычного пользователя и подтвердили свою учётную запись и рабочую папку. Вы создали и прочитали текстовый файл, воспользовались cat --help и сохранили фактические сведения о выпуске Kali в общей рабочей папке.
В соответствующем задании вы примените те же навыки, чтобы создать точную запись о выпуске в новой независимой среде.



