как устанавливать программы в кали линукс
Типичный способ установки пакета из файла DEB:
С помощью этих команд устанавливаются пакеты из стандартных репозиториев — это самый надёжный способ в том плане, что для устанавливаемого пакету будут установлены зависимости и в будущем этот пакет будет обновляться вместе с другими программами в системе. То есть установка из стандартных репозиториев является приоритетной.
Установка без учёта зависимостей
Следующая команда установит пакет без проверки зависимостей:
При выполнении операции менеджером пакетов, например, обновление кэша:
может возникнуть сообщение об отсутствующих зависимостях, исправить это можно командой:
Установка DEB файла с помощью apt
Программа apt также умеет устанавливать пакеты из указанных файлов, при этом одновременно будут установлены необходимые зависимости для этого пакета:
Установка пакетов с помощью gdebi
Вы можете установить программу gdebi:
И затем устанавливать пакеты с помощью неё:
gdebi также установит необходимые зависимости. На самом деле, gdebi появилась когда apt-get не могла устанавливать локальные файлы (или эта возможность не была документирована), сейчас же вместо gdebi можно использовать apt, которая предустановлена в каждом дистрибутиве, основанном на Debian.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Управление пакетами в Kali Linux и других дистрибутивах на основе Debian (поиск, установка и удаление программ, решение проблем)
Сопроводители дистрибутивов Linux поддерживают репозитории пакетов из которых программы можно установить в дистрибутив с помощью того или иного менеджера пакетов. Такие репозитории (их состав, частота обновления, предварительная настройка пакетов) являются главными отличиями дистрибутивов друг от друга (а не обои или графическое окружение рабочего стола, которые всегда можно поменять).
Такой централизованный подход позволяет не тратить время на обновление отдельных программ (как например это нужно делать в Windows, где вам самостоятельно нужно отслеживать появление новых версий и обновлять их).
Умение управлять пакетами в Linux нужно как для установки и обновления программ, так и решения других проблем, например, отсутствующие файлы, необходимые для компиляции программы, которую вы хотите установить из исходного кода. В этой статье рассмотрены как азы, так и даны более продвинутые подсказки (например, как найти пакет, содержащий необходимый для компиляции файл).
Данная статья сфокусирована на менеджере пакете apt и дистрибутиве Kali Linux, но всё сказанное в ней применимо и к другим основанным на Debian дистрибутивам (Linux Mint, Ubuntu).
Как работают репозитории приложений Linux
Сопроводители дистрибутивов Linux отбирают программы для помещения в репозитории. Эти программы упаковываются в пакеты, для Debian и производных это файлы с расширением .deb. В эти пакеты помещаются скомпилированные файлы программ, файлы настроек и все другие, необходимые для работы прогрммы файлы, а также метаинформация, в которой указано, какие ещё пакеты нужно установить для разрешения зависимостей, а также какие действия нужно выполнить перед и после установки пакета, а также перед и после его удаления.
В случае выхода новых версий пакетов, их все можно обновить одной командой — очень удобно.
Для чего нужны зависимости
Если вы уже устанавливали пакеты в Linux, то вы могли обратить внимание, что вы вводите имя одной программы для установки, но зачастую одновременно с ней устанавливаются ещё и другие пакеты — это зависимости.
Зависимости — это библиотеки, программы, драйверы и прочее, что необходимо для работы другой программы. Такой подход позволяет один и тот же код (библиотеку) использовать в различных программах. К примеру, мы пишем приложение, в которое ходим добавить сетевые функции с поддержкой различных протоколов — нам не нужно всё писать с нуля, мы можем воспользоваться библиотекой libcurl (от авторов программы cURL), которая уже поддерживает десятки сетевых протоколов. И так могут поступить многие другие программы — они все могут использовать одну библиотеку без необходимости дублировать код — достаточно установить библиотеку в ОС один раз.
Для работы некоторых программ необходимы другие программы, либо они являются обёртками, графическими интерфейсами для облегчения использования утилиты. Такие программы также являются зависимостями.
Использовать apt или apt-get
Для управления пакетами может применяться команда apt или apt-get. На самом деле, выбор ещё больше: dpkg, aptitude, synaptic, wajig, а также графические интерфейсы от авторов дистрибутивов. Но все эти менеджеры пакетов имеют свои чёткие особенности, а apt и apt-get очень похожи, у них практически одинаковые команды и опции, они выполняют одинаковые функции. Разберёмся, чем отличаются apt и apt-get.
Программа apt предназначена для интерактивного использования и её поведение может меняться с выходом новых версий. А программа apt-get предназначена для использования в скриптах и её поведение и вывод очень консервативны.
На самом деле, для большинства типичных задач (установка и удаление пакетов), программы очень похожи.
Я предпочитаю apt как более «свежую», но на самом деле практически во всех последующих примерах команд вы можете заменить «apt» на «apt-get» и не почувствуете никакой разницы.
Обновления кэша с информацией о приложениях
Когда в репозиторий вносятся изменения, например, при обновлении пакета, необходимо синхронизировать эту информацию с локальным кэшем вашей операционной системы Linux. Это делается командой:
Этого же результата (обновления кэша) можно достичь разными способами, в том числе имеется ещё несколько команд. Например, следующая команда также обновит кэш (нет принципиальной разницы, какую команду вы используете):
Даже если вы не собираетесь выполнять полное обновление системы, обновление кэша необходимо выполнить перед установкой любых пакетов. В противном случае вы можете столкнуться с ошибкой, что требуемый пакет не найден. Эта ошибка возникает из-за того, что в вашей системе есть информация о предыдущей версии пакета и ссылка для его скачивания, и именно по этому адресу менеджер пакетов пытается получить файл пакета. Но в репозитории устаревшая версия уже могла быть удалена. В результате получается, что пакет есть в репозитории, но ваша система не узнает его новый адрес, пока не обновит свой кэш.
Как установить программу
Используйте команду вида:
Вы можете установить сразу несколько пакетов за раз:
Поиск пакетов
Для поиска пакетов предназначена команда вида:
Данная команда ищет по описанию пакетов и может выводить слишком большой список. Эта команда может пригодиться, если имя нужной утилиты не совпадает с названием пакета (например, один пакет содержит несколько утилит).
Обратите внимание, что для данной команды, в отличие от большинства других с apt, не требуются права root (можно использовать без sudo).
Поиск пакетов только по названию
Предыдущая команда бывает бесполезной из-за слишком большого вывода информации. Вы можете использовать следующую команду для поиска по имени пакета:
Вы также можете указать подстановочные символы, например для поиска по названию, начинающемуся на слово ПАКЕТ:
Для поиска по названию, оканчивающемуся на слово ПАКЕТ:
Для поиска по названию, в котором присутствует слово ПАКЕТ:
Ещё более удобной, на мой взгляд, командой для поиска пакетов является:
Последняя команда ищет в именах по слову ПАКЕТ и выводит список всех пакетов, где оно встречается. Использовать подстановочные символы не нужно.
Как проверить, установлен ли пакет
Вы можете использовать команды apt list или apt search не только для поиска пакетов, но и просмотра информации о том, установлены ли они.
Рядом с описанием пакетов вы можете увидеть один из трёх вариантов:
Как посмотреть информацию о пакете
Вы можете узнать следующую информацию о любом пакете, независимо от того, установлен он в вашей системе или нет:
Чтобы узнать информацию о пакете используйте команду вида:
Как удалить пакет
Для удаления используйте команду вида
Можно удалять сразу много пакетов за раз:
Как полностью удалить пакет, вместе с конфигурационными файлами
При удалении пакета удаляются все его файлы, но обычно остаются небольшие (изменённые) файлы конфигурации пользователя на случай, если удаление было случайным. В этом случае простая отправка запроса на установку для случайно удалённого пакета восстановит его работу, как и раньше. С другой стороны, вы можете избавиться от этих остатков, вызвав purge даже для уже удалённых пакетов. Обратите внимание, что это не влияет на данные или конфигурацию, хранящиеся в вашем домашнем каталоге.
Итак, для полного удаления пакета используйте команду вида:
Обновление всех пакетов системе в Kali Linux
Чтобы обновить все пакеты, для которых вышли новые версии, а также установить необходимые зависимости и удалить мешающие пакеты, используется команда:
Среди удаляемых пакетов могут быть конфликтующие (мешающие установке требуемых зависимостей).
Аналогичный результат можно получить командами (это одна из немногих команд, которая различается для apt и apt-get):
Для удобства можно объединить команду обновления кэша и команду запуска полного обновления системы в одну, опция -y используется для того, чтобы у нас не спрашивалось подтверждение, а сразу начался процесс установки новых пакетов:
Как узнать, в каком пакете содержится файл
Если вы компилируете программы из исходных кодов, то вы, наверняка, сталкивались с ошибками компиляции, когда программа не находит какой-либо файл и компиляция обрывается. Что делать в данной ситуации? Понятно, что нужно установить пакет, который содержит требуемый файл. Но как узнать имя этого пакета?
С помощью программы apt-file можно искать по именам файлов в пакетах (как установленных, так и нет). Также она может показать все файлы в пакете.
Сразу после установки кэш данных о программах пуст. Чтобы его обновить нужно выполнить команду:
Когда всё готово, то поиск осуществляется так:
К примеру поиск файла ffi.h:
У программы apt-file есть альтернативы, подробности смотрите в статье «Как в Linux узнать, в каком пакете содержится файл».
Как посмотреть зависимости пакета
Вы можете посмотреть, какие пакеты будут установлены в качестве зависимостей командой вида:
Как узнать, для каких программ данный пакет является зависимостью
Если вы хотите удалить программу, но не уверены, нужна ли она для других программ, то вы можете проверить, для каких пакетов она является зависимостью командой вида:
Как просмотреть список изменений пакета
Для пакетов вы можете вывести список изменений, сделанных в различных версиях программы. Для этого выполните команду вида:
Как скачать пакет без установки
Если вы хотите скачать пакет без установки, например, чтобы изучить его или внести изменения, то выполните команду вида:
Как проверить, всё ли впорядке с кэшем приложений
Если вы хотите узнать, имеются ли сломанные зависимости, то выполните диагностическую команду:
Следующая команда dpkg установит пакет без проверки зависимостей:
При выполнении операции менеджером пакетов, например, обновление кэша:
может возникнуть сообщение об отсутствующих зависимостях, исправить это можно командой:
Программа apt также умеет устанавливать пакеты из указанных файлов, при этом одновременно будут установлены необходимые зависимости для этого пакета:
Удаление ненужных программ
Время от времени рекомендуется выполнять команды по удалению пакетов, которые были установлены автоматически (так как были зависимостями других программ), но теперь больше не нужны.
Для этого применяется команда:
Её использование безопасно и не должно приводить к проблемам.
Очистка кэша установочных файлов
При каждом обновлении программ файлы пакетов скачиваются в кэш. После обновления скаченные файлы (можно назвать их установочными) не удаляются, и постепенно кэш разрастается до больших размеров. Это сделано намерено с той идеей, что если после очередного обновления вы обнаружите, что новый пакет имеет проблемы, а старая версия уже недоступна в онлайн репозитории, то вы сможете окатиться до старой версии установив её из файла, сохранённого в кэше.
Для роллинг дистрибутивов кэш разрастается очень быстро. Поэтому время от времени можно выполнять команду:
clean вычищает локальный репозиторий от полученных файлов пакетов. Она удаляет все, кроме lock файла из /var/cache/apt/archives/ и /var/cache/apt/archives/partial/.
Исправление ошибок установки пакетов и зависимостей
Опция -f исправляет, пытается привести в норму систему с нарушенными зависимостями. Эта опция, когда используется с install/remove, может пропустить какие-либо пакеты, чтобы позволить APT найти вероятное решение. Если пакеты указаны, эта команда должна полностью исправить проблему.
Альтернативы для apt
Для apt, кроме программы apt-get, которая является очень похожей, существует ещё несколько альтернатив.
В Debian вы можете выбрать среди следующих менеджеров пакетов:
dpkg — этот пакет предоставляет низкоуровневую инфраструктуру для обработки установки и удаления пакетов программного обеспечения Debian. При установке программ не устанавливает зависимости.
aptitude
aptitude — это менеджер пакетов с рядом полезных функций, в том числе: похожий на mutt синтаксис для гибкого сопоставления пакетов, возможность извлекать и отображать журнал изменений Debian для большинства пакетов и режим командной строки, аналогичный режиму apt-get. Программа не позволяет разрастаться кэшу слишком сильно и выполняет автоматическую очистку.
Чтобы былы понятны основные возможности программы, посмотрите на доступные команды и опции.
Действия (если не задано, aptitude запускается в диалоговом режиме):
synaptic
Synaptic — это графический инструмент для управления пакетами, основанный на GTK+ и APT.
Synaptic позволяет устанавливать, обновлять и удалять программные пакеты удобным способом.
Помимо этих основных функций, предоставляются следующие возможности:
wajig
Обёртка командной строки для apt, apt-cache, dpkg, aptitude и других. Её цель — упростить управление пакетами за счёт объединения основных функций этих инструментов в одном интерфейсе.
Кроме рассмотренных программ, в дистрибутивах Linux могут применяться и собственные инструменты. К примеру, в Linux Mint имеется собственный инструмент с графическим интерфейсом для обновления программ. Также в Linux Mint при запуске программы apt вместо неё будет использоваться собственный скрипт, который является обёрткой для aptitude (из-за этого вывод команды apt может вас смутить).
Портативные программы в Linux
При компиляции программы из исходного кода, совсем необязательно устанавливать её на уровне системы — вы можете запускать скомпилированные файлы из любого места в вашей системе. Это позволяет попробовать новую версию программу без удаления той, которая установлена из репозитория.
Как решить проблему «команда не найдена» («command not found»)
Если при попытке запуска программы вы столкнулись с ошибкой «команда не найдена» («command not found»), то она означает, что не установлен пакет, содержащей данную программу. Конечно, при условии, что вы правильно ввели имя команды — поэтому начните с проверки имени, а также используйте клавишу TAB для вывода подсказок и автоматического дополнения.
Начните с попытки установить пакет с одноимённым именем — довольно часто название команды совпадает с именем пакета, например nmap, sqlmap — это команды запуска и имена пакетов, которые их содержат:
Если вы получите сообщение, что пакет с таким именем не найден, то попробуйте выполнить поиск по описанию пакетов — довольно часто в описании перечислены программы, которые включены в данный пакет:
Если удалось определить имя пакета, установите его.
Если и это не помогло, то установите (если ещё не сделали) команду apt-file, обновите кэш и выполните поиск:
Данный способ наверняка поможет найти нужный пакет. Если даже это не сработало, то возможны следующие варианты:
Warning: apt-key is deprecated
Команда apt-key управляет ключами, которые отвечают за проверку подписи репозиториев пакетов приложений.
Теперь при любом использовании команды apt-key вы будете получать сообщение:
10 вещей, которые нужно сделать после установки Kali Linux
Десять первых шагов, которые помогут использовать свежую Kali Linux для профессиональной оценки безопасности компьютерных систем.
Дистрибутивы Linux предоставляют широкие возможности кастомизации, и Kali Linux – не исключение. Всего несколькими командами можно автоматизировать задачи, установить любимый софт, создать дополнительных пользователей и оптимизировать взаимодействие с терминалом. Как сделать самое важное? Рассказываем.
1. Установите Git
Git – это open-source система контроля версий программного обеспечения для совместного использования и редактирования кода. Она позволит вам «клонировать» репозитории и не ограничивать свои пентестерские нужды встроенным функционалом Kali Linux.
Переносимся в терминал для установки git :
Теперь ссылка в буфере, вставьте её в терминал после команды:
Вы получите локальную копию репозитория и вывод со статистикой.
2. Назначьте Bash-алиасы
Используйте алиасы для часто вводимых команд. Для примера сократим команду besside-ng – сканера безопасности WEP сетей. Алиасы Bash хранятся в файле, их можно дополнить и обновить:
Файл пустой? Значит вы не пользовались алиасами до этого. Самое время! Введите строчку в открытый nano файл:
Закрывайте (Ctrl+x) и сохраняйте (y, Enter). Рассмотрим синтаксис: alias объявляет псевдоним hackwifi и указывает на команду в одинарных кавычках. Проверим в новом окне терминала:
Тем, кто выбрал Kali для знакомства с Linux, не помешают:
3. Создайте непривилегированного пользователя
Вы ведь не собираетесь работать под рутом? Не подвергайте систему опасности – создайте обычного пользователя. Баги в пользовательских программах под рутом потенциально опасны для файловой системы, а в серверных программах они могут давать атакующему доступ к оболочке суперпользователя.
Поэтому создайте непривилегированного пользователя в новой Kali Linux и будьте спокойны:
4. Установите терминальный мультиплексор
Мультиплексор в данном случае – это плиточный эмулятор терминала, в котором можно открыть несколько сессий в одном окне. Главное преимущество – возможность видеть все ваши сессии одновременно, не перекрывающими друг друга.
На скриншоте представлен Tilix – надёжный open-source эмулятор терминала. В качестве альтернатив можете попробовать tmux и screen.
Tilix доступен в репозиториях Kali Linux и устанавливается командой:
5. Установите любимые инструменты
Некоторые версии Kali Linux ориентированы на минималистичных пентестеров, которые предпочитают обходиться без тысячи предустановленных инструментов. В этом случае придётся устанавливать любимые инструменты вручную. Типы инструментов каждого пентестера зависят от его умений и области знаний.
Kali Metapackages дают возможность устанавливать отдельные категории инструментов Kali Linux и смотреть состав метапакетов.
Описание и размер желаемого метапакета перед установкой. Вот как установить все инструменты Kali Linux, которых нет даже в полных образах:
Внимание! Это займёт 15 Гб, устанавливайте метапакеты исходя из ваших нужд.
6. Установите свежий Tor
Качайте софт для анонимности из оригинальных источников. Версия Tor в репозиториях Kali Linux не всегда вовремя обслуживается и обновляется. Это означает, что у вас не будет критических обновлений стабильности и безопасности.
Поэтому добавьте репозитории Tor Project из источников самого проекта:
Затем скачайте ключ подписи пакета Tor Project и импортируйте в систему:
OK в выводе свидетельствует об удачном добавлении ключа в систему. После чего следует обновиться:
7. Установите Syncthing для хранения данных
Syncthing – это кроссплатформенная, приватная, лёгкая альтернатива проприетарным облачным хранилищам. Передача кейлогов, скриншотов, записей веб-камер и другой «добычи» между виртуальными серверами и локальными машинами Kali может оказаться, в лучшем случае, разочарованием для пентестера. Syncthing делает безопасную передачу файлов абсолютно безболезненной.
Начните с установки зависимостей:
Затем скачайте и установите ключи:
Ключи gpg нужны системе для проверки подписи источника при установке пакетов. Благодаря подписям обеспечивается целостность пакетов, которая может быть нарушена вследствие изменения оригинального пакета или перехвата трафика.
Осталось добавить репозиторий проекта в список источников уже знакомым вам способом:
8. Установите редактор кода
Atom – это бесплатный, навороченный и кастомизируемый текстовый редактор с возможностями совместного использования кода в реальном времени, интуитивного автозавершения и установки пакетов для расширения функциональности. В качестве альтернатив можете попробовать Geany и Gedit.
Для установки Atom в Kali Linux скачайте deb-пакет. Затем установите зависимости:
После этого Atom будет доступен из меню приложений.
9. Установите OpenVAS
OpenVAS – это свободный сканер уязвимостей, который расширит ваш инструментарий. Фреймворк запускался под именем GNessUs, бесплатного форка Nessus, который сейчас стоит денег 🙂
OpenVAS дает начинающим отличные возможности для понимания работы сканеров уязвимостей.
10. Поменяйте ключи и пароль SSH
Kali Linux устанавливается с одинаковым паролем (toor), что упрощает автоматизацию атак. Кроме того, стандартные ключи SSH могут позволить злоумышленнику перехватить ваши сообщения. Для смены ключей перейдите в каталог, а затем сбросьте конфигурацию сервера:
🐉 Установка пакетов deb на Kali Linux [4 метода]
Введение
Существует два способа установки программного обеспечения в системе Kali Linux.
Вы можете использовать метод терминала, где вы будете использовать менеджер пакетов apt или другие независимые от дистрибутива пакетные платформы, такие как Snap, AppImage и FlatPak.
Установка Deb-файлов в дистрибутивах на базе Debian, таких как Ubuntu и Debian, может быть простой, поскольку эти операционные системы поставляются с программным центром.
Центр программного обеспечения – это утилита, с помощью которой пользователи могут найти, загрузить и установить программное обеспечение в графическом виде.
К счастью, это не так сложно, как можно подумать.
Метод-1: Установка пакета DEB с помощью DPKG
DPKG – это инструмент командной строки, используемый для установки, сборки, удаления и управления пакетами Debian в системах Linux.
Он поставляется с различными опциями, которые вы можете просмотреть, выполнив команду:
Чтобы установить пакет с помощью dpkg, запустите Терминал и с помощью команды cd перейдите к местоположению файла и установите его, используя приведенный ниже синтаксис.
В нашем случае мы установим файл VSCode.deb. VSCode – это мощная IDE, разработанная Microsoft и включающая поддержку различных языков, таких как Python, Java, C++, JavaScript и др.
Это происходит потому, что когда вы используете dpkg для установки пакета в Linux, он проверяет вашу систему на наличие всех зависимостей, необходимых для установки и запуска программы.
Если хотя бы одна зависимость не выполнена (что чаще всего и происходит), пакет остается в состоянии “unconfigured” и считается нерабочим.
Метод-2: Установка пакета DEB с помощью DPKG
В качестве альтернативы, вы можете избежать ошибок, сначала проверив наличие зависимостей, требуемых пакетом, и установив их; вы можете сделать это, выполнив приведенную ниже команду.
В выводе появится список всех зависимостей, необходимых для установки файла vscode.deb.
Теперь вы можете установить эти зависимости с помощью команды apt, показанной ниже:
После установки всех необходимых зависимостей перейдите к установке deb-файла с помощью приведенной ниже команды.
Метод-3: Установка DEB-файлов с помощью менеджера пакетов APT
Помимо DPKG, вы можете использовать команду apt для установки deb-файлов в системе Kali Linux.
Однако этот метод работает по-своему и требует наличия активного подключения к Интернету.
Этот метод классный потому, что apt сначала составляет список всех необходимых зависимостей и устанавливает их из репозитория.
После этого он вызывает утилиту dpkg и использует ее для установки файла.
Таким образом, метод apt использует dpkg под капотом.
Чтобы установить пакет с помощью apt, запустите Терминал и с помощью команды cd перейдите в каталог файла и используйте приведенный ниже синтаксис для установки файла.
Метод-4: Установка DEB-файлов с помощью GDEBI
GDEBI – это утилита командной строки, которая позволяет вам плавно устанавливать deb-файлы за счет правильной обработки зависимостей.
Мы говорим “плавная установка”, потому что dpkg иногда может быть довольно агрессивным при установке определенных пакетов.
GDEBI не поставляется предустановленным в Kali Linux. Чтобы установить его, используйте приведенную ниже команду:
После этого перейдите к установке deb-пакета, используя приведенный ниже синтаксис.
Заключение
Думаю, теперь у вас есть три способа, которые можно использовать для установки deb-файла в системе Kali Linux.
Не стесняйтесь оставлять комментарии ниже, если вы столкнулись с какими-либо трудностями.