Mac на службе у хакера. Установка iTerm2 через встроенный терминал

635
733
15 Янв 2017
b8bcc9a1ba4e7ac7acd127621a0f9e5c.JPG



Автор:Barrow

Терминал – ключевой компонент нашей сборки, с которым вы, как пентестер, будете работать львиную долю времени, и наша задача сделать так, чтобы этот инструмент был удобным. Основные требования: чтобы терминал был приятен глазу, имел широкий функционал и стабильно работал. Хороший эмулятор терминала будет существенно облегчать и делать эффективнее вашу повседневную работу. В macOS я предпочитаю использовать эмулятор Для просмотра ссылки Войди или Зарегистрируйся, хотя также следует упомянуть утилиту Для просмотра ссылки Войди или Зарегистрируйся, которая имитирует работу старых терминалов.

В этой статье мы рассмотрим установку iTerm2 через терминал, используемый по умолчанию в macOS, и заодно научимся работать из командной строки. Даже если вы опытный пользователь и умеете работать с командной строкой, освежить знания никогда не будет лишним.

Terminalи iTerm2

Терминал, используемый по умолчанию в macOS, называется Terminal, и находится в папке Utilities внутри директории Applications. Можно воспользоваться поиском через Spotlight по ключевому слову Terminal.

clip_image002.jpg

Рисунок 1: Результат выполнения команды cat /dev/random | hexdump | grep --color=always "b6" в терминале

Основные возможности и функции стандартного терминала:

  • Множество цветовых схем
  • Группы окон
  • Вкладки
  • Разделение окна на области
  • Некоторая интеграция справочной информации
  • Прозрачность
В принципе, можно пользоваться стандартным терминалом, однако лично мне не хватает некоторых функций, как, например, копирования без использования мыши (mouse-less copy), автозаполнения и переключения в окно терминала при помощи горячей клавиши.

Вы можете Для просмотра ссылки Войди или Зарегистрируйся, однако я хочу показать установку через стандартный терминал.

Шаг 1: Загрузка iTerm2

Откройте стандартный терминал. Во время первого открытия ваша домашняя директория будет рабочей. На мой взгляд, лучше загрузить файл в директорию Downloads. Соответственно, переходим туда:

  • cd ~/Downloads
Эта команда переключает нас на папку Downloads, которая находится внутри домашней директории (символ ~ обозначает домашнюю директорию).

Далее при помощи curl (поскольку wget не встроен в macOS) нам нужно загрузить iTerm2, используя Для просмотра ссылки Войди или Зарегистрируйся. Выполняем следующую команду:

clip_image004.jpg

Рисунок2: ЗагрузкаiTerm2-3010.zip припомощиCurl впапкуDownloads

Curl – мощный инструмент, позволяющий работать из командной строки, для получения и загрузки файлов, используя синтаксис URL. Опция –Oэквивалентна параметру --remote-name, который говорит о том, что нужно записать выходной поток в локальный файл, имя которого будет эквивалентно имени скачиваемого файла. Без параметра –Oсодержимое загружаемого файла отобразилось бы на экране. Более полная информация о curl доступна на соответствующей справочной странице, ознакомиться с которой можно при помощи следующей команды:

  • man curl
Шаг 2: Проверка контрольной суммы

После загрузки проверяем, совпадает ли контрольная сумма. Контрольная сумма архива (SHA-256) на момент написания статьи:

434f52c5d554005a94e1f471018d1480a029155205644dadd65377f5eeff3624

Поскольку разработчик не включил файл с контрольной суммой в правильном формате, нам придется выполнить проверку вручную:

  • shasum -a 256 iTerm2-3010.zip
Команда выше генерирует хэш для указанного файла. Опция –aпозволяет указать алгоритм. Поскольку мы проверяем контрольную сумму SHA-256, указываем значение 256.

clip_image006.jpg

Рисунок 3: Вычисление контрольной суммы архива

После проверки контрольной суммы убеждаемся, что файл не поддельный, и загрузка произошла корректно.

Шаг 3: Распаковка iTerm2

Распаковываем архив при помощи следующей команды:

  • unzip iTerm2-3010.zip
Как только архив распакован, выполняем команду ls, чтобы убедиться, что файл находится в нужном месте:

  • ls
Теперь рядом с .zip архивом появился распакованный файл. Перемещаем iTerm.app в директорию Applications:

  • mv iTerm.app/ /Applications/
Затем удаляем архив, чтобы не засорять дисковое пространство:

  • rm iTerm2-3010.zip
clip_image008.jpg

Рисунок 4: Перемещение файла и удаление архива

Шаг 4: Запуск iTerm2

В зависимости от настроек безопасности вашей системы, возможно вам придется добавить исключение перед запуском iTerm2.

Лично я доверяю команде разработчиков iTerm и добавил исключение. Если вы не хотите добавлять исключение, тогда рекомендую продолжать пользоваться стандартным терминалом. Чтобы добавить исключение, переходим в папку Applications, выделяем iTerm.app, нажимаем control (или правую кнопку мыши) и в контекстном меню выбираем команду «Open». То же самое можно сделать в терминале при помощи следующей команды:

  • spctl --add /Applications/iTerm.app/
После выполнения этой команды, возможно, потребуется ввести имя пользователя и пароль. Spctl – альтернативный способ взаимодействия с Gatekeeper через командную строку. При помощи команды выше мы добавляем iTerm2 в список исключений безопасности. Далее запускаем iTerm2 при помощи следующей команды:

  • nohup open /Applications/iTerm.app/ &>/dev/null &
При использовании nohup команда будет оставаться запущенной, даже если мы закроем терминал, из которого появился процесс iTerm2. Команда Open запускает файл, как если бы мы дважды кликнули мышью. Далее указывается директория к запускаемому файлу. Конструкция &>/dev/null перенаправляет содержимое stdout и stderr в /dev/null. Обычно при использовании nohup создается файл nohup.out с информацией из stdout и stderr, но в нашем случае этот файл не нужен. Амперсанд в конце говорит о том, что команда должна запускаться в фоновом режиме, после чего появится строка в шелле.
clip_image010.jpg

Рисунок 5: Запуск iTerm.app

После того как запустился iTerm2, стандартный терминал можно закрыть.
clip_image012.jpg

Рисунок 6: Результат выполнения команды cat /dev/random | hexdump | grep --color=always "b6" в новом терминале

Заключение

Если вы давно не работали с терминалом или впервые имеете дело с командной строкой, воспринимайте этот опыт как подготовку к последующей работе. Мы могли бы установить iTerm с использованием графического интерфейса, однако работа во всех последующих руководствах в большей степени будет строиться через терминал.