This media is not supported in your browser
VIEW IN TELEGRAM
Это мощный блог с чёткими и понятными гайдами по Ubuntu, shell-скриптам, настройке серверов, сетей и утилит.
Каждая статья — как мини-мануал: команды, объяснения, примеры.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤9🔥9👎1
Например,
/etc хранит системные конфигурации, /var используется для логов и изменяемых данных, а /home содержит домашние директории пользователей.На картинке — основные каталоги, которые важно знать при работе с системой, серверами и разработкой.
Сохрани, чтобы держать под рукой!
Please open Telegram to view this post
VIEW IN TELEGRAM
❤16👍10🔥9
Быстрый повтор и поиск команд из истории Bash!
Часто приходится выполнять длинные команды: docker, git, kubectl, сборки, скрипты или сложные пайплайны. Печатать их заново может быть долго и неудобно.
В Bash можно обращаться к истории команд напрямую.
Чтобы найти нужную команду, можно отфильтровать историю:
Каждая команда имеет номер. Любую из них можно выполнить снова:
Также можно повторить последнюю команду, которая начиналась с определённого слова.
Bash найдёт последнюю команду, начинающуюся с
🔥 Использование !номер и !команда позволяет запускать сложные команды без копирования и ручного набора.
🚪 Linux Ready | #совет
Часто приходится выполнять длинные команды: docker, git, kubectl, сборки, скрипты или сложные пайплайны. Печатать их заново может быть долго и неудобно.
В Bash можно обращаться к истории команд напрямую.
Чтобы найти нужную команду, можно отфильтровать историю:
history | grep docker
Каждая команда имеет номер. Любую из них можно выполнить снова:
!482
Также можно повторить последнюю команду, которая начиналась с определённого слова.
Bash найдёт последнюю команду, начинающуюся с
docker, и выполнит её снова. Это особенно удобно при работе с длинными CLI-командами:!docker
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19❤11🔥9
This media is not supported in your browser
VIEW IN TELEGRAM
Это удобная шпаргалка по основным командам Linux, которая помогает быстро ориентироваться в системе и вспоминать нужные команды без долгих поисков в документации. Внутри собраны команды для работы с файловой системой, процессами, сетью, пользователями и системной информацией — всё с короткими пояснениями и примерами использования.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14🤝9🔥7❤3
Быстро привести JSON в читаемый вид через jq!
Иногда API возвращает JSON одной длинной строкой. В терминале читать такое совершенно неудобно. Самый простой способ привести всё в нормальный вид — прогнать через
Например, если JSON лежит в файле:
Часто это используют прямо при работе с API:
Так сразу видно структуру ответа.
Если нужно вытащить конкретное поле:
То же самое можно сделать прямо из ответа API:
Иногда удобно забрать сразу несколько полей:
Если в JSON есть массив, можно пройтись по всем элементам:
Например, вытащить из каждого объекта поле name:
Когда нужен вывод без кавычек, пригодится флаг
Это полезно, если результат дальше используется в скрипте.
Иногда ещё удобно быстро посмотреть, какие вообще пути есть в JSON:
Команда покажет все доступные ключи и вложенные пути.
Так можно сразу вытащить нужные данные из ответа API.
🔥 В целом
🚪 Linux Ready | #практика
Иногда API возвращает JSON одной длинной строкой. В терминале читать такое совершенно неудобно. Самый простой способ привести всё в нормальный вид — прогнать через
jq.Например, если JSON лежит в файле:
jq . file.json
jq просто отформатирует его: разобьёт на строки и добавит отступы.Часто это используют прямо при работе с API:
curl -s https://api.github.com/repos/torvalds/linux | jq .
Так сразу видно структуру ответа.
Если нужно вытащить конкретное поле:
jq '.name' file.json
То же самое можно сделать прямо из ответа API:
curl -s https://api.github.com/repos/torvalds/linux | jq '.description'
Иногда удобно забрать сразу несколько полей:
jq '{name, description, language}' file.jsonЕсли в JSON есть массив, можно пройтись по всем элементам:
jq '.items[]' file.json
Например, вытащить из каждого объекта поле name:
jq '.items[].name' file.json
Когда нужен вывод без кавычек, пригодится флаг
-r:jq -r '.name' file.json
Это полезно, если результат дальше используется в скрипте.
Иногда ещё удобно быстро посмотреть, какие вообще пути есть в JSON:
jq 'paths' file.json
Команда покажет все доступные ключи и вложенные пути.
jq отлично вписывается в обычные shell-пайплайны. Например:curl -s https://api.example.com/users | jq -r '.users[].email'
Так можно сразу вытащить нужные данные из ответа API.
jq — один из самых удобных инструментов для работы с JSON в терминале. Если часто возишься с API или логами, он экономит кучу времени.Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥9❤7🤝3
В этой статье:
• Пошагово разобрано, как системы DPI анализируют сетевой трафик — от первого TCP-SYN пакета до поведенческого анализа соединения;
• Показано, какие признаки используются для детекции протоколов;
• Разбирается, как после установления TLS-соединения анализ продолжается по метаданным потока — размерам пакетов, интервалам передачи, соотношению входящего и исходящего трафика и др.🔊 Продолжайте читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16🤝12👍10👎1
В этом посте собраны утилиты для пакетной работы с файлами в командной строке. Рассмотрены безопасная передача аргументов через xargs, связка с find, массовое переименование, итерация по файлам и параллельное выполнение задач. Полезно для автоматизации и обработки больших наборов файлов.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍10🤝9
👍10❤7🔥7🤝2
Ловушка для злоумышленника: настраиваем мониторинг медовой папки.
Создаём специальную директорию-приманку (
Сначала необходимо установить пакет для мониторинга файловых событий и создать папку с «секретными» данными.
Директория создана, теперь она выглядит как типичная цель для поиска паролей.
Создаем простой скрипт-монитор, который будет работать в фоне и выводить уведомление при каждом доступе.
Скрипт готов к запуску и будет следить за каждым открытием файла в реальном времени.
Запускаем мониторинг и пробуем прочитать файл в другом окне терминала для проверки.
Ожидаемый вывод:
Для прекращения мониторинга и удаления следов ловушки выполните следующую команду.
Такая «медовая папка» — простой, но эффективный способ обнаружить активность шифровальщиков или любопытных пользователей. В реальных условиях вместо echo можно настроить отправку уведомления в
➡️ Hacking Ready | #практика
Создаём специальную директорию-приманку (
Honeyfolder) с привлекательными названиями файлов для обнаружения шпионажа в системе. Используем утилиту inotify-tools для мгновенного оповещения о любых попытках чтения или изменения файлов внутри ловушки. Сначала необходимо установить пакет для мониторинга файловых событий и создать папку с «секретными» данными.
sudo apt update && sudo apt install inotify-tools -y
mkdir -p ~/Downloads/Passwords_Backup
touch ~/Downloads/Passwords_Backup/db_creds.txt
Директория создана, теперь она выглядит как типичная цель для поиска паролей.
Создаем простой скрипт-монитор, который будет работать в фоне и выводить уведомление при каждом доступе.
cat << 'EOF' > monitor.sh
#!/bin/bash
TARGET="~/Downloads/Passwords_Backup"
inotifywait -m -r -e access,open,move "$TARGET" | while read path action file
do
echo "[!] ТРЕВОГА: Обнаружен доступ к $file через $action"
done
EOF
chmod +x monitor.sh
Скрипт готов к запуску и будет следить за каждым открытием файла в реальном времени.
Запускаем мониторинг и пробуем прочитать файл в другом окне терминала для проверки.
# Запуск монитора (в отдельном окне) и проверка чтения
./monitor.sh & cat ~/Downloads/Passwords_Backup/db_creds.txt
Ожидаемый вывод:
[!] ТРЕВОГА: Обнаружен доступ к db_creds.txt через ACCESS.Для прекращения мониторинга и удаления следов ловушки выполните следующую команду.
# Остановка процесса и удаление папки
killall inotifywait && rm -rf ~/Downloads/Passwords_Backup monitor.sh
Такая «медовая папка» — простой, но эффективный способ обнаружить активность шифровальщиков или любопытных пользователей. В реальных условиях вместо echo можно настроить отправку уведомления в
Telegram через API. Please open Telegram to view this post
VIEW IN TELEGRAM
❤12👍5🤝4
This media is not supported in your browser
VIEW IN TELEGRAM
Этот репозиторий собирает шпаргалки по ключевым направлениям информационной безопасности: пентестинг, сетевые атаки, эксплуатация уязвимостей, анализ трафика, веб-безопасность и многое другое. Всё разложено по темам и оформлено так, чтобы можно было быстро найти нужные команды, техники и инструменты.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥9❤7🤝2
Как не выполнять одну и ту же команду несколько раз?
В работе часто возникает ситуация: команда тяжёлая, медленная или ходит в сеть. Например, kubectl, docker, curl, запросы к API или работа с логами.
Чтобы не гонять её снова и снова для разных проверок:
Каждый раз это новый запрос, новая нагрузка и потеря времени.
Гораздо быстрее выполнить её один раз и сохранить результат:
Теперь можно сколько угодно анализировать данные без повторных вызовов:
Это особенно чувствуется при работе с удалёнными сервисами, базами и логами, где каждая команда может занимать секунды.
🔥 Если команда дорогая — не запускай её повторно. Сохрани результат и работай с ним локально.
🚪 Linux Ready | #совет
В работе часто возникает ситуация: команда тяжёлая, медленная или ходит в сеть. Например, kubectl, docker, curl, запросы к API или работа с логами.
Чтобы не гонять её снова и снова для разных проверок:
kubectl get pods
kubectl get pods | grep api
kubectl get pods | wc -l
Каждый раз это новый запрос, новая нагрузка и потеря времени.
Гораздо быстрее выполнить её один раз и сохранить результат:
out=$(kubectl get pods)
Теперь можно сколько угодно анализировать данные без повторных вызовов:
echo "$out" | grep api
echo "$out" | wc -l
Это особенно чувствуется при работе с удалёнными сервисами, базами и логами, где каждая команда может занимать секунды.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍9❤8🤝2
Например,
${var%.*} убирает расширение файла, а ${var##*/} позволяет быстро получить имя файла из полного пути.На картинке — основные приёмы работы с переменными в bash: удаление префиксов и суффиксов, замена строк, работа с подстроками и значения по умолчанию.
Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17❤7🔥7🤝3
sponge: утилита, которая спасает, когда нужно перезаписать файл через pipe!
Есть старый неприятный момент в shell: если читаешь файл и тут же пишешь результат обратно в него же через
Например:
На первый взгляд выглядит нормально. На практике — нет.
Shell откроет app.log на запись сразу, ещё до того, как
В таких случаях выручает
Он работает просто: сначала полностью читает входной поток, и только потом записывает результат в файл.
То же самое, но безопасно:
Несколько примеров, где это реально удобно.
Заменить текст в конфиге:
Убрать пустые строки:
Отсортировать файл:
Отформатировать JSON:
Из нюансов:
🔥 Если коротко: когда нужно безопасно перезаписать файл результатом команды,
🚪 Linux Ready | #практика
Есть старый неприятный момент в shell: если читаешь файл и тут же пишешь результат обратно в него же через
>, можно случайно получить пустой файл.Например:
grep -v DEBUG app.log > app.log
На первый взгляд выглядит нормально. На практике — нет.
Shell откроет app.log на запись сразу, ещё до того, как
grep дочитает его до конца. В итоге файл можно просто обнулить.В таких случаях выручает
sponge из moreutils.Он работает просто: сначала полностью читает входной поток, и только потом записывает результат в файл.
То же самое, но безопасно:
grep -v DEBUG app.log | sponge app.log
Несколько примеров, где это реально удобно.
Заменить текст в конфиге:
sed 's/localhost/db.internal/' config.yml | sponge config.yml
Убрать пустые строки:
grep -v '^$' file.txt | sponge file.txt
Отсортировать файл:
sort file.txt | sponge file.txt
Отформатировать JSON:
jq '.' data.json | sponge data.json
Из нюансов:
sponge сначала забирает весь поток целиком, а уже потом пишет в файл. Для обычных задач это вообще не проблема, но на очень больших файлах про это лучше помнить.sponge делает именно то, что ожидаешь.Please open Telegram to view this post
VIEW IN TELEGRAM
🤝14👍11🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
Здесь системно раскрываются ключевые принципы работы операционной системы Linux. Рассматриваются базовые компоненты системы, включая ядро, оболочку, процессы, файловую систему и архитектуру ОС в целом. Отдельное внимание уделяется практическому применению.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍8🔥8
В Linux можно сделать файл или директорию неудаляемыми, установив флаг неизменяемости (immutable) с помощью команды
chattr:$ sudo chattr +i -V /home/traw/keys.txt
Опция
-V — подробный вывод (verbose).Чтобы сделать директорию неудаляемой, добавьте рекурсивную опцию
-R:$ sudo chattr +i -VR /home/traw/backups
Чтобы снова разрешить удаление файла, используйте флаг
-i. Для директорий — -i с опцией -R.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍10❤7
This media is not supported in your browser
VIEW IN TELEGRAM
В репозитории собран справочник по Linux-командам — более 400 утилит с описаниями и примерами использования. Каждая команда сопровождается кратким объяснением и примерами, поэтому можно быстро понять, как она работает и где применяется. Удобно использовать как справочник в работе и подготовке к собеседованиям.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥8🤝8