- Консольные утилиты Linux, которые смогут облегчить вам жизнь (Часть 2)
- Предисловие для новичков
- Список программ
- Администрирование
- Веб-разработка
- Приложения, которые облегчают работу без GUI
- Дополнения
- Лучшие консольные программы Linux
- 1. Screen — терминал
- 2. MidnightCommander — файловый менеджер
- 3. Lynx — браузер
- 4. Elinks — еще один браузер
- 5. Vim — текстовый редактор
- 6. Moc — аудиоплеер
- 7. RTorrent — торрент клиент
- 8. Newsbeuter — RSS ридер
- 9. Mutt — клиент электронной почты
- 10. WeeChat — мессенджер
- 11. Calcurse — календарь
- 12. Taskwarrior — список дел
- 13. cacaview — просмотр изображений
- 14. htop — монитор
- 15. BitlBee
- Выводы
- Полезные консольные Linux утилиты
Консольные утилиты Linux, которые смогут облегчить вам жизнь (Часть 2)
Так как предыдущая статья зашла довольно хорошо, было бы неправильно не поделиться дополнительными утилитами, которые я использую и по сей день. Сразу хочу оговориться, что статья адаптирована и для новичков, а старым линуксоидам придётся немного сточить зубы потерпеть разжевывание материала. Вперёд в тему!
Предисловие для новичков
Стоит начать с того, какой у вас стоит дистрибутив. Вы, конечно же, можете всё компилировать из исходников, однако не у всех пользователей есть такие навыки, а если компилятор выдаст ошибку, то пользователи просто расстроятся и не смогут попробовать новые утилиты, а не пойдут искать решения на стаке. Во избежание этого условимся на простых правилах:
- Если вы сидите на ветке Debian (Ubuntu, Debian, Mint, Pop!_os) попробуйте поискать программы на Launchpad, пакеты в репозиториях утилит формата .deb
- Если вы сидите на ветке Arch (Arch, Manjaro, Void Linux) то попробуйте поискать программу в AUR репозиториях, сами утилиты и программы в формате .appimage (если это графические утилиты), а также PKGBUILD файлы для компилирования исходников автоматически
- Если вы сидите на ветке RedHat (Fedora, CentOS), то попробуйте воспользоваться встроенной в большинство дистрибутивов ветки RedHat утилитой Flatpak (аналог Snap). Также, попробуйте поискать пакеты в формате .rpm
Если говорить обо мне, то у меня стоит Manjaro CLI, с установленной на неё i3-gaps и собственными конфигурациями, если кому интересно — можете пользоваться, остальным же советую просто придерживаться правил вверху и помнить, что любая проблема в Linux решается простым гуглением и логическими размышлениями.
Список программ
Администрирование
snap install gotop —classic
- glances — ещё один аналог htop, однако на этот раз более функциональный
Установка с помощью pip
pip install glances
Веб-разработка
- JSShell — если вам по какой-то причине не нравится консоль браузера, то всегда можно сделать те же операции в терминале
- live-server — утилита для легкого запуска локального сервера с автообновлением при изменении index.html (или другого файла)
Установка с помощью npm
sudo npm i live-server -g - wp-cli — утилита для администрирования сайта на WordPress с помощью консоли
Установка с помощью копирования исходника из репозитория
Установка c помощью npm
sudo npm i surge -g
Установка с помощью любого менеджера пакетов
sudo apt install httpie || sudo pacman -Sy httpie || sudo dnf install -Sy httpie
Установка c помощью npm
sudo npm install hget -g
Приложения, которые облегчают работу без GUI
- alsamixer — утилита для настройки звука
- neovim — удобный редактор с поддержкой асинхнронного скачивания плагинов и линтинга языков
- browsh — браузер с псевдо-GUI (ASCII-графика) прямо в консоли
Дополнения
Если у вас есть утилиты, которые вам нравятся, напишите о них в комментариях и я дополню ими статью! Спасибо за то, что дочитали.
Источник
Лучшие консольные программы Linux
В современных версиях операционной системы Linux уже все действия можно сделать через графический интерфейс, а терминал использовать совсем необязательно. Но в старых компьютерах или на серверах может быть недостаточно ресурсов для запуска сложных графических интерфейсов и приложений. Тогда на помощь приходят терминальные программы linux.
Для Linux существует огромное количество консольных программ и все они могут почти полноценно заменить графический интерфейс. Если посмотреть видео с комфортом у вас и еще не получится, то найти нужную информацию в интернете, послушать музыку, прочитать электронные сообщения вы можете даже с помощью терминала. В этой статье мы рассмотрим лучшие консольные программы Linux, которые вы можете использовать на своем компьютере.
1. Screen — терминал
Не всегда достаточно одного запущенного терминала, который доступен нам при подключении по ssh или в одном из интерфейсов TTY. Иногда нужно управлять несколькими сессиями одновременно, но нет возможности запустить графический интерфейс и несколько эмуляторов терминала.
В таких случаях на выручку приходит утилита screen. Она позволяет очень просто управлять несколькими терминалами в одном TTY. Вы можете открывать новые окна терминала, переключаться между ними, копировать информацию и многое другое. Даже если сессия будет неожиданно разорвана из-за разрыва соединения ssh, программы не будут завершены и продолжат выполняться, а вы сможете восстановить соединение.
2. MidnightCommander — файловый менеджер
MidnightCommander или mc — это двухпанельный файловый менеджер для операционных систем Linux. Он очень похож на файловый менеджер FAR, известный пользователям Windows. Все рабочее пространство разделено на четыре части — это две панели, командная строка и строка, обозначающая назначение функциональных клавиш:
Для всех команд терминала текущей папкой считается активная панель и вы можете выполнять любые команды Linux. Для удобной навигации здесь есть множество горячих клавиш, которые очень похожи на Emacs. Для установки в Ubuntu наберите команду:
3. Lynx — браузер
Lynx — это полнофункциональный консольный браузер. С помощью него вы можете просматривать интернет страницы. Это один из самых первых браузеров. Он выглядит очень по-простому, не поддерживает таблиц, css, jаvascript и других технологий. Но зато страницы загружаются очень быстро.
Навигация выполняется с помощью горячих клавиш, что позволяет использовать программу очень эффективно. Поддерживаются протоколы HTTP, FTP, Gopher, WAIS, NNTP.
4. Elinks — еще один браузер
Elinks — более новый браузер, он основан на Lynx, но поддерживает больше функций, здесь есть начальная поддержка стилей, поддержка jаvascript, таблиц, фрейомв. Есть даже поддержка цветовой палитры до 256 цветов.
Кроме того, поддерживается большее количество протоколов: HTTP, HTTPS, FTP, IRC, mailto, telnet, nntp и Gopher. Работа со ссылками и горячие клавиши немного отличаются от lynx, но пользоваться браузером достаточно удобно. Для установки elinks в Ubuntu выполните команду:
5. Vim — текстовый редактор
Vim — это один из лучших текстовых редакторов для операционной системы Linux, не только среди консольных утилит, но и в целом. Программа имеет очень своеобразный интерфейс и режимы работы, которые позволяют набирать текст и выполнять его наиболее быстро и эффективно, не отрывая рук от клавиатуры:
Вы можете перемещаться по тексту с помощью клавиш h,j,k,l в командном режиме, а также выполнять быструю замену с помощью r. Для переключения командного режима и режима редактирования используется клавиша Esc. Смотрите подробнее как пользоваться Vim в отдельной статье.
6. Moc — аудиоплеер
Moc или Music on Console — это аудиоплеер для терминала Linux, очень простая программа, которая позволяет только слушать музыку. Интерфейс очень прост и похож на интерфейс Midnight Commander.
Вам достаточно выбрать файл из нужной папки через главное меню, а затем программа начнет воспроизводить все файлы по порядку.Плеер может работать в фоновом режиме даже после закрытия сессии терминала.
7. RTorrent — торрент клиент
Как следует из названия, rtorrent — это простой torrent клиент, который, как и другие приложения командной строки работает только через терминал. Программа нетребовательна к ресурсам имеет не очень удобный интерфейс, но работает достаточно быстро и стабильно.
Также поддерживается очень гибкая настройка программы через файл rtorrent.rc. Но синтаксис файла достаточно сложный.
8. Newsbeuter — RSS ридер
Это очень простой, но полнофункциональный RSS ридер для Linux, программа полностью справляется со своей задачей, несмотря на то, что имеет только версию для терминала. Вы можете добавить несколько URL лент в конфигурационный файл программы, затем синхронизировать локальную базу данных с информацией на сервере.
Программа может запоминать уже прочитанные записи. Для установки в Ubuntu используйте такую команду:
9. Mutt — клиент электронной почты
Mutt — это клиент электронной почты для операционной системы Linux. Он поддерживает очень много форматов создания сообщений, среди которых MBox и Maildr, а также протоколы, например: IMAP, POP3, вы можете просматривать почту из различных сервисов, например, mail.ru, gmail.com, yandex.ru и многих других по доступных протоколах.
Программа имеет очень простой, но в то же время удобный интерфейс, а также поддерживает шифрование и электронные подписи.
10. WeeChat — мессенджер
WeeChat — это отличный IRC клиент для операционных систем на базе ядра Linux. Кроме консольного интерфейса, здесь есть графический и веб-интерфейс. Программа поддерживает работу через прокси, ipv6, ssl, поиск текста и сообщений, а также проверку орфографии.
С помощью удобных сочетаний клавиш вы можете выполнить любые действия очень быстро. Также поддерживаются различные расширения на Python, Ruby и Perl, позволяющие очень сильно расширить возможности программы. Чтобы установить в Ubuntu выполните:
11. Calcurse — календарь
Консольные приложения Linux также не обходятся без инструментов планирования времени и календарей. Calcurse — это очень простой, но в то же время функциональный календарь и список заданий для Linux.
С помощью этой программы вы сможете отслеживать свои дела, которые нужно сделать, а также определенные события и встречи. Также здесь есть система напоминаний, с помощью которой вы сможете получить уведомления с сроках выполнения заданий и событиях.
12. Taskwarrior — список дел
Taskwarrior — это очень простой список задач для Linux. Вы можете создавать задания, очень быстро просматривать список доступных, обозначать уже выполненные, а также планировать дату завершения.
В связке с утилитой Timewarrior от того же разработчика, вы сможете засекать время, которое уходит на выполнение каждой задачи. Для установки taskwarrior в Ubuntu выполните:
13. cacaview — просмотр изображений
Cacaview — это очень простой просмотрщик изображений с консольным интерфейсом. Рисунок выводится с помощью символов ASCII. На полноценный просмотр изображений тянет с трудом, но зато приблизительно оценить что изображено на самой картинке можно:
Для установки необходимо установить пакет caca-utils:
14. htop — монитор
htop — это монитор использования системных ресурсов в реальном времени с интерфейсом командной строки. Вы можете посмотреть сколько оперативной памяти занято, процент использования процессора, а также какие процессы используют больше всего ресурсов системы.
С помощью программы можно менять приоритеты процессов завершать их, выполнять поиск, фильтровать процессы по определенным параметрам, сортировать, а также смотреть потоки каждого процесса.
15. BitlBee
Это мессенджер с открытым исходным кодом, который позволяет пользователям общаться в таких сервисах, как IRC, чат-сетях, AIM, ICQ, NET Messenger, Yahoo!, XMPP, Google Talk, Twitter и Identica. Пользователи этих сервисов отображаются в виде каналов, после чего с ними можно общаться как с обычными пользователями IRC сети.
Возможно даже создание конференций. Программа выполнена в виде сервера и для подключения к ней необходимо использовать любой IRC клиент. Для установки наберите:
Выводы
В этой статье мы рассмотрели лучшие консольные программы linux. Они помогут вам в нужный момент полноценно работать с компьютером без графического интерфейса или даже заменят другие программы. Если вы знаете другие отличные консольные приложения, которые упущены в этой статье, напишите в комментариях!
Источник
Полезные консольные Linux утилиты
В этой подборке представлены полезные малоизвестные консольные Linux утилиты. В списке не представлены Pentest утилиты, так как у них есть своя подборка.
Осторожно много скриншотов. Добавил до ката утилиту binenv.
binenv — cамая интересная утилита для установки новых популярных программ в linux, но которых нет в пакетном менеджере.
Bat — это клон команды cat с дополнительной разметкой и подсветкой синтаксиса для большого количества языков программирования, а также интеграцией Git для отображения изменений файлов. Подробнее на русском.
Exa – это изящный инструмент командной строки, получивший множество похвал за то, что он является современной заменой старой доброй команде ls. И это справедливо, учитывая его способность использовать разные цвета при отображении различных типов файлов, прав доступа к файлам и прав собственности, блоков и информации inode, чтобы упомянуть лишь некоторые из них. Подробнее на русском.
Fd — это простой, быстрый и удобный инструмент, предназначенный для более простой и быстрой работы по сравнению с командой find. Подробнее на русском.
Procs — это современная замена ps, программы командной строки по умолчанию в Unix / Linux для получения информации о процессах. По умолчанию он обеспечивает удобный, понятный для человека (и цветной) формат вывода. Подробнее на русском.
Sd — это интуитивно понятный инструмент командной строки для поиска и замены, он является альтернативой sed. sd имеет более простой синтаксис для замены всех вхождений и использует удобный синтаксис регулярных выражений, который вы уже знаете из JavaScript и Python. Sd также в 2-11 раз быстрее, чем sed.
Dust — опрятная версия дефолтного du, c удобной записью памяти, цветом и отступами.
Starship — очень приятный prompt который легко накатывается поверх zsh, fish, bash и прочего.
Ripgrep — быстрый поиск с возможностью замены по содержимому в файлах, аналог GREP, ASK, написан на RUST, понимает регулярные выражения, игнорирует ресурсы указанные в .gitignore, автоматически пропускает бинарные, скрытые файлы. Подробнее на русском.
Ripgrep-all — Инструмент поиска, ориентированный на строки, который позволяет вам искать по регулярному выражению во множестве типов файлов. Ripgrep-all является оберткой над ripgrep и позволяет ему искать в pdf, docx, sqlite, jpg, субтитрах фильмов (mkv, mp4) и т. д.
Grex — это инструмент командной строки и библиотека для генерации регулярных выражений из предоставленных пользователем тестовых примеров. Созданное регулярное выражение имеет синтаксис PCRE.
Fzf — инструмент для «фильтрации» любых списковых данных в консоли. Может использоваться для фильтрации списка файлов, истории команд, процессов, hostnames, коммитов и прочего. Подробнее на русском.
Jq — это легкий и гибкий JSON-процессор командной строки. Подробнее на русском.
Peco — инструмент, способный сильно облегчить навигацию, а также поиск. Это небольшая утилита, которая принимает на вход список строк и выводит на экран псевдографическое меню, с помощью которого можно выбрать или найти нужную строку. Далее peco отдает эту строку на выход и завершает свою работу (по сути, это консольный аналог dmenu). Подробнее на русском.
HTTPie — HTTP клиент для командной строки, с поддержкой json, понятным интерфейсом, подсветкой синтаксиса и прочим. Подробнее на русском.
xh — удобный и быстрый инструмент для отправки HTTP-запросов. Он в максимально возможной степени воплощает превосходный дизайн HTTPie.
Rebound — это инструмент командной строки, который мгновенно извлекает результаты Stack Overflow при возникновении исключения. Просто используйте команду rebound для запуска вашего исполняемого файла.
HTTP Prompt – это интерактивный HTTP-клиент командной строки, созданный на основе prompt_toolkit и HTTPie с более чем 20 темами. Его основные функции включают в себя автоматическое заполнение, подсветку синтаксиса, автоматические куки, Unix-подобные конвейеры, совместимость с HTTpie, http-подсказка, которая сохраняется между сеансами и интеграцию OpenAPI / Swagger. Подробнее на русском.
shell2http — Простой веб сервер для удаленного выполнения команд.
reachable — инструмент, который поможет вам проверить, работает ли домен или нет.
Lazydocker — пользовательский интерфейс для управления докером. С его помощью больше не нужно запоминать команды, алиасы и следить за контейнерами через несколько терминальных окон. Всё это теперь собрано в одном окне. Просмотр состояния, логов, метрик; перезапуск, удаление, восстановление контейнеров и сервисов. Подробнее на русском.
Clog-cli — утилита для создания changelogs из истории коммитов Git.
Gotty — программа позволяет организовывать общий доступ к приложениям командной строки через браузер. Подробнее на русском.
mosh — утилита Mosh (сокращение от mobile shell), обладающая всеми преимуществами безопасности SSH, является более устойчивой в условиях плохих сетевых и мобильных соединений. Кроме того, данное приложение увеличивает способность к реагированию и снижает использование полосы пропускания. Создание подключения и авторизация в Mosh происходят через обычное соединение SSH, что значит, что для безупречной работы каких-либо механизмов безопасности на основе ключей нужно внести всего несколько дополнительных конфигураций. После проверки подлинности ключа Mosh начинает взаимодействие через зашифрованные датаграммы UDP, что делает сессию более устойчивой к изменяющимся клиентским IP-адресам и перебоям соединений, которые часто случаются при использовании мобильных устройств. Подробнее на русском.
ngrok — Безопасные интроспективные туннели к localhost.
tmate — Мгновенный доступ к терминалу (tmux).
Lazygit — псевдографический консольный клиент для Git. Если у вас есть проблемы с восприятием основных моментов в работе с Git-репозиторием из консоли, то вы всегда можете воспользоваться графическим клиентом. Один из них — Lazygit, псевдографический клиент, написанный на языке Go с использованием библиотеки gocui. В официальном описании программы автор описывает, как трудно бывает понять, что и как нужно сделать в гите, если там больше одной ветви или коммита, и как хорошо при этом помогает разобраться его клиент. Думаю, что описывать все возможности программы нет смысла, так как что еще можно сказать про гит, кроме как «позволяет коммитить, мержить и так далее»?
GNU parallel — это инструмент оболочки для параллельного выполнения работ используя один или более компьютер. В качестве работы может быть единичная команда или небольшой скрипт, который должен быть запущен для каждой строки из полученного ввода. Типичным вводом является список файлов, список хостов, список пользователей, список URL, список таблиц. В качестве работы может быть команда, которая считывает по трубе (pipe). GNU parallel затем может разбить ввод на блоки и передать блоки по трубе параллельно в каждую команду. GNU parallel может заменить вам программы xargs и tee. А также не только заменить циклы (loops), но и сделать их выполнение более быстрым за счёт параллельного выполнения нескольких работ. Подробнее на русском.
Bottom — консольное приложение для мониторинга процессов и загрузки системы. Подробнее на русском.
Bandwhich — net monitor с раскладкой по процессам, который работает и на FreeBSD.
mtr — MyTraceRoute Великолепная замена traceroute и аналогам
gdu — Более шустрый и фичастый аналог ncdu (ncurses du), на Go. Удобнее штатного du, при разборах «куда же делось свободное место».
Dog — это красивый DNS-клиент командной строки для поиска DNS, который работает как dig. Он имеет красочный вывод, понимает обычный синтаксис аргументов командной строки, поддерживает протоколы DNS-over-TLS и DNS-over-HTTPS и может генерировать JSON.
dnsmeter — это инструмент для тестирования производительности сервера имен и инфраструктуры вокруг него. Он генерирует DNS-запросы и отправляет их через UDP на целевой сервер имен и считает ответы.
Gitleaks — это инструмент SAST для обнаружения жестко закодированных секретов, таких как пароли, ключи API и токены в репозиториях git. Gitleaks — это простое в использовании универсальное решение для поиска секретов прошлого или настоящего в вашем коде.
localtls — DNS-сервер для предоставления TLS веб-сервисам на локальных адресах
fx — альтернатива jq для обработки JSON из командной строки. Подробнее на русском.
dnspeep — простая утилита, которая позволяет просмотреть DNS запросы.
Dive — инструмент для изучения образа Docker, содержимого слоев и поиска способов уменьшить размер вашего образа Docker/OCI.
datanymizer — Мощный анонимайзер базы данных с гибкими правилами. Подробнее на русском.
termshark — консольный интерфейс терминала для tshark, вдохновленный Wireshark
sysinfo — Скрипт на основе Python для получения системной информации из Linux.
SSH-Attack-Stats — Простой скрипт, который будет запущен в MOTD на сервере Linux и сообщит вам статистику атак.
dry — менеджер для Docker, по ощущениям гораздо быстрее и отзывчивее чем «LazyDocker»
gh — утилита для работы с GitHub из консоли, например можно создать Pull Request
gitlab — аналогичная утилита для работы с GitLab (неофициальная)
watch — запуск любой команды каждые N секунд, позволяет на раз-два сделать реалтайм мониторинг в консоли
runnel — автоматический запуск туннелей SSH с переподключением при обрыве соединения
Ниже утилиты и краткое описание со статьи Sysadmin-util: полезные инструменты для системных администраторов Linux. Подробнее об этих утилитах вы найдете в этой статье.
Ago — Данный инструмент выводит в удобочитаемом формате информацию, как давно файл или каталог были изменены.
Cronic – инструмент запускает команду тихо, пока не завершится неудачей, т.е. он запускает команду и скрывает STDOUT и STDERR, если она успешно завершается. Это полезно для заданий cron.
cidr2ip — Он преобразует блоки CIDR в составляющие их IP-адреса.
collapse — Инструмент collapse удаляет пустые строки и строки, содержащие пробелы, из заданных файлов.
dupes — Инструмент dupes сообщит о идентичных файлах. Это поможет вам найти дубликаты файлов, которые содержат то же самое содержимое. Утилита сравнивает у файлов хэш SHA1 .
empty-dir — Этот инструмент проверит, является ли данный каталог пустым или нет.
expand-ipv6 — Этот инструмент расширяет указанные сокращенные / сжатые адреса IPv6 до их полной формы. Это может быть полезно при настройке DNS.
multi-ping — Это многопротокольная оболочка ping. Он используется для проверки подключения удаленного хоста независимо от того, является ли он хостом IPv6 или IPv4. Значение: если пульт использует IPv4, он вызывает команду ping для проверки возможности подключения. Если удаленный хост использует IPv6, он вызовет команду «ping6».
pyhttpd — Это простой HTTP-сервер на Python, который позволяет мгновенно настроить базовый web-сервер.
randpass — Утилита randpass используется для генерации случайного пароля из командной строки.
since — Он показывает любой новый контент с момента последнего чтения файла. Это полезно для отслеживания файлов журнала.
ssl-expiry-date — Отображает дату истечения срока действия сертификата SSL данного домена или хоста.
timeout — Это позволяет пользователю выполнить команду для определенного интервала и уничтожить ее.
until-error & until-success – повторять команды до тех пор, пока не произойдет сбой или успешно выполнится
when-down & when-up – ждет, пока хост не упадет/ поднимется
mysql-slave-check – выяснить, является текущий хост – ведомым или нет
which-shell – определить оболочку, под которой мы работаем, и т. д.
Утилиты из пакета Moreutils:
sponge — «губка» для стандартного ввода. Подробнее на русском
Утилиты ниже взял из канала https://t.me/SysadminNotes
ssh-config — простая штуковина, позволяющая работать с конфигом SSH.
ssh-tools — набор из нескольких утилит. Проверяем удалённые хосты, получаем информацию о них и т. п.
assh — серьёзный инструмент, который позволяет иначе взглянуть на привычную работу с SSH. Тут вам и регулярки, и возможность использования шаблонов, хуки, работа с конфигом SSH клиента. Причём, lib-ssh запускает assh через ProxyCommand, а значит что весь этот функционал мы можем использовать и с scp, и c rcync’ом, и с git’ом, например.
domain-check-2 — Простой скрипт для проверки срока истечения важных для нас доменных имён. Подробнее на русском
[pingtop]() — интересная top утилита, с помощью которой можно пинговать несколько сайтов одновременно. Подробнее на русском
red — весьма интересный анализатор логов. Пайпим ему json выхлоп и получаем статистику по зафиксированным там событиям.
Watchman — Позволяет отслеживать состояние файлов, и по мере их изменения триггерить нужные действия, если потребуется (запускаем что-то, собираем что-то, уведомляем и т. п.).
localstack — протестировать что-то предназначенное для AWS локально
txeh — Библиотека Go и утилита CLI для управления /etc/hosts.
mkchain — Утилита, с помощью которой можно составить цепочку сертификатов, из присланных от центра сертификации файлов.
Asn — удобная утилита для отображения информации об IP и домене.
tlog — Инструмент для записи / воспроизведения терминального ввода-вывода и сессий. Подробнее на английском
frp — Быстрый обратный прокси-сервер, который поможет вам открыть доступ в Интернет к локальному серверу за NAT или брандмауэром.
tunnelto — Разместите свой локальный веб-сервер в Интернете с помощью общедоступного URL-адреса.
pd.sh — интересная штука для дебага пйплайнов. Подсовываем скрипту наш набор команд, и получаем информацию о том, как пайплайн отрабатывает и в каком месте возникает ошибка, если такое происходит.
logtop — утилита, которая выводит top IP адресов, анализируя логи веб-сервера. Это для тех, кому не очень хочется однострочник на bash писать c awk, sort и uniq.
Choose — аналог cut и awk ‘
whatfiles — простая и удобная утилита, которая покажет, с какими файлами работает тот или иной процесс в системе. Этакий упрощённый вариант strace’а.
topngx — этакий top для Nginx. Утилита анализирует логи и выдаёт администратору итоговую статистику. По сути, это аналог другой утилиты — ngxtop, правда эта уже давно не поддерживается.
SSHHeatmap — Создает тепловую карту IP-адресов, которые сделали неудачные попытки входа в систему по SSH.
desed — Отладчик для Sed: отлаживайте сценарии sed, не выходя из вашего терминала.
3mux — Терминальный мультиплексор, вдохновленный i3
frontail — утилита для трансляции логов по http\https. Удобно использовать в случаях, когда нужно быстро, в браузере, показать содержимое какого-либо лога и его изменения в реальном времени. Подробнее на русском
critic.sh — Суровое тестирование bash скриптов. Выглядит не менее интересным даже в сравнении с shellcheck
jql — Вместо jq можно попробовать jql для работы с JSON.
asciicast2gif — утилита для конвертации ascii кастов, в обычную gif анимацию. Подробнее на русском
Nginx-builder — инструмент, который автоматизирует сборку Nginx с нужными модулями. Описываем всё в yaml, запускаем сборку и получаем готовый rpm или deb пакет
linux-exploit-suggester — Быстрый аудит сервера на возможность применения эксплойтов
linux-exploit-suggester-2 — Подсказка эксплойтов ядра Linux нового поколения
ssl-cert-check — делаем простой мониторинг SSL с уведомлениями на email о необходимости продления сертификата. Подробнее на русском
jl — Удобная утилита для парсинга\чтения JSON логов
Wondershaper — утилита для настройки ограничений скорости сетевого интерфейса на сервере. Подробнее на русском
mkcert — удобная штука, с помощью которой можно у себя на локалхосте для часто употребляемых тестовых имён выписать валидный сертификат.
https-portal — Полностью автоматизированный сервер HTTPS на базе Nginx, Let’s Encrypt и Docker.
httpsat — утилита, которая позволяет получить статистику доступа к нужному сайту. Скрипт работает с cURL’ом, и поддерживает многие доступные в нём опции при соединении. Подробнее на русском
GeoLogonalyzer — И вот ещё занятный анализатор логов, который на основе asn, гео, и некоторых сопутствующих данных выявляет аномалии и сообщает о них. Например, если пользователь много раз заходил с одного IP адреса, но внезапно зашёл с другого (причём из другой подсети вовсе, либо из другой географической точки), анализатор сформирует отчёт об этом.
graphpath — Утилита для быстрого построения ASCII схемы сети прямо в терминале.
Sosreport — утилита для сбора информации о текущем состоянии системы. Удобно использовать самому в рамка первичного осмотра, удобно попросить клиента выполнить команду и прислать отчёт, готовый для изучения. Подробнее на русском
Fatrace (file access trace) — простая и удобная в использовании утилита для мониторинга текущей активности в системе. Отлично подойдёт для тех случаев, когда strace или blktrace оказываются избыточны. Подробнее на русском
httping — простая утилита, с помощью которой можно «пинговать» сайт по определённому адресу и получать общую (а при необходимости подробную) статистику по ответу и доступности. Подробнее на русском
Bashdb — утилита-дебаггер для bash скриптов. Дебаг скриптов задача не частая, но если она стоит, то на bashdb имеет смысл обратить внимание. Подробнее на русском
Goaccess — функциональный анализатор логов, который может работать с ними в реальном времени, визуализировать информацию и отдавать её в разных форматах. Доступен для установки на большинстве популярных дистрибутивов прямо из репозиториев. Подробнее на русском
testssl.sh — это скрипт, который позволяет протестировать SSL сервис и вывести подробную статистику по нему. Это как SSLlabs, только имеется возможность проведения проверки разных сервисов. Кроме того, для скрипта доступен простой веб-интерфейс. Подробнее на русском
iprange — Обнаружилась очень удобная утилита для работы с подсетями и IP адресами. Умеет вычислять нужные подсети из разных диапазонов, что порой бывает необходимо, например, при работе с ipset и фаерволом на сервере.
container-diff — утилита для сравнения образов контейнеров. Сontainer-diff умеет анализировать и учитывать при сравнении историю образа, файловую систему, пакеты apt, pip и npm. Выглядит очень удобно для отслеживания изменений в рамках одного контейнера, либо для сравнения двух разных образов.
https://gist.github.com/agarzon/5554490 — Скрипт для проверки присутствия IP в различных DNSBL
Prochunter — хорошая утилита для поиска скрытых процессов, запущенных в системе. Подробнее на русском
Sysdig — удобный и функциональный инструмент, дающий администратору широкие возможности для сбора информации о работающей системе. Подробнее на русском
ioping — очень простая, но при этом удобная утилита для быстрой проверки отзывчивости дисковой подсистемы. В CentOS ставится из репозитория EPEL. Подробнее на русском
ctop — полезная *top утилита для мониторинга работы контейнеров.
hstr — от англ. history, инструмент для просмотра истории команд.
pastebinit — инструмент командной строки в Deb-системах для отправки данных на «pastebin», сайт, который позволяет пользователям размещать отрывки текста для публичного просмотра. Подробнее на русском
fpaste — инструмент командной строки в RedHat-системах для отправки данных на http://fpaste.org/, сайт, который позволяет пользователям размещать отрывки текста для публичного просмотра.
Eternal Terminal — удаленная оболочка, которая автоматически переподключается. Подробнее на русском
tfquery — Выполняйте SQL-запросы в своей инфраструктуре Terraform. Запрашивайте ресурсы и анализируйте их конфигурацию с помощью SQL.
kubectx — утилита для управления контекстами kubectl и переключения между ними.
kubens — утилита для переключения между пространствами имен Kubernetes.
fselect — утилита для поиска файлов с помощью SQL-подобных запросов.
kubesql — инструмент, использующий sql для запроса ресурсов Kubernetes, таких как поды, узлы и т. д.
k3d — k3d создает кластеры k3s в контейнерах. Вы можете развернуть многоузловой кластер k3s на одной машине с помощью docker.
arkade — arkade предоставляет marketplace для установки ваших любимых DevOps утилит командной строки.
helmfile — обёртка для helm, которая позволяет в одном месте описывать множество helm релизов, параметризовать их чарты для нескольких окружений, а также задавать порядок их деплоя..
cheat.sh — утилита и онлайновый сервис, к которому можно обращаться из командной строки и искать по внушительной коллекции из чит-шитов, собранных силами сообщества. Сюда входит около тысячи команд Unix/Linux и 55 языков программирования.
lnav — это расширенный просмотрщик логов. Это терминальное приложение, которое может понять ваши файлы журналов и упростить вам поиск проблем практически без настройки.
Не утилита, но очень полезное:
Автоматический запуск tmux, при входе на сервер по SSH:
https://t.me/SysadminNotes/1661
автоматический запуск tmux, при входе на сервер по SSH. Добавляем в
И при каждом входе на сервер, получаем либо уже существующую, либо новую сессию tmux.
Для screen можно попробовать такую конструкцию:
if $(screen -ls | grep -q pts); then screen -x; else screen -R; fi
Источник