Перенаправляем трафик процесса через прокси — без изменения кода приложения!
Иногда нужно прогнать готовое приложение через прокси: отладка API, анализ трафика, тестирование доступа через альтернативный сетевой маршрут.
В Linux это делается через
Установка:
В большинстве дистрибутивов используется
Настройка: конфиг обычно лежит в
Добавляем прокси:
Можно указать SOCKS4/5 или HTTP CONNECT-прокси. Частый кейс — Tor или локальный прокси анализатора (Burp/ZAP).
Использование:
Подходит для многих CLI-утилит, использующих стандартные сетевые вызовы через libc (но не для всех).
Практический пример:
Можно прогнать трафик через Tor или анализатор. С браузерами возможны нюансы из-за их архитектуры и многопроцессности — иногда надёжнее использовать встроенные настройки прокси.
Ограничения и нюансы: работает только с dynamically linked бинарями (из-за
🔥 Минимальный способ управлять сетевым поведением приложений без правки кода.
🚪 Linux Ready | #практика
Иногда нужно прогнать готовое приложение через прокси: отладка API, анализ трафика, тестирование доступа через альтернативный сетевой маршрут.
В Linux это делается через
proxychains, который с помощью LD_PRELOAD перехватывает вызовы connect() и связанные DNS-функции, проксируя соединения без изменения самого приложения.Установка:
# Debian/Ubuntu
sudo apt install proxychains4 -y
# Arch
sudo pacman -S proxychains-ng
# RHEL/CentOS (обычно через EPEL или совместимые репозитории)
sudo yum install proxychains-ng
В большинстве дистрибутивов используется
proxychains-ng — поддерживаемая реализация proxychains.Настройка: конфиг обычно лежит в
/etc/proxychains4.conf или /etc/proxychains.conf.sudo nano /etc/proxychains4.conf
Добавляем прокси:
socks5 127.0.0.1 9050
Можно указать SOCKS4/5 или HTTP CONNECT-прокси. Частый кейс — Tor или локальный прокси анализатора (Burp/ZAP).
Использование:
proxychains curl https://example.com
proxychains перехватывает вызовы connect() и DNS-функции, поэтому приложение продолжает работать как обычно, но его исходящие соединения идут через прокси:proxychains git clone https://github.com/repo.git
Подходит для многих CLI-утилит, использующих стандартные сетевые вызовы через libc (но не для всех).
Практический пример:
proxychains firefox
Можно прогнать трафик через Tor или анализатор. С браузерами возможны нюансы из-за их архитектуры и многопроцессности — иногда надёжнее использовать встроенные настройки прокси.
Ограничения и нюансы: работает только с dynamically linked бинарями (из-за
LD_PRELOAD), статически скомпонованные — не поддерживаются; некоторые приложения обходят libc, поэтому трафик может не проксироваться. Возможны проблемы с DNS (иногда требуется proxy_dns).Please open Telegram to view this post
VIEW IN TELEGRAM
❤19🔥10👍9
На схеме структурированы направления: обучающие YouTube-каналы, профильные блоги, специализированная литература, популярные дистрибутивы, сертификации.
Это удобная схема — можно быстро понять, куда двигаться дальше и какие ресурсы использовать.
Сохраните, чтобы не потерять!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤11🤝8👎1
Как понять, что делает процесс в Linux?
Бывает ситуация, когда процесс есть, но непонятно, что он делает. В Linux можно смотреть системные вызовы.
Подключаемся к живому процессу:
Видно, какие файлы он открывает, читает или не может найти.
Если подозрение на сеть:
Покажет сетевые
Если нужно понять поведение целиком:
Флаг
🔥 Это часто даёт ответ быстрее, чем чтение кода или логов, особенно при работе с чужими бинарями, контейнерами или нестабильными сервисами.
🚪 Linux Ready | #совет
Бывает ситуация, когда процесс есть, но непонятно, что он делает. В Linux можно смотреть системные вызовы.
Подключаемся к живому процессу:
strace -e trace=%file -p <PID>
Видно, какие файлы он открывает, читает или не может найти.
Если подозрение на сеть:
strace -e trace=%network -p <PID>
Покажет сетевые
syscalls (connect, send*, recv*).Если нужно понять поведение целиком:
strace -f -o trace.log your_command
Флаг
-f отслеживает дочерние процессы, а лог можно спокойно разобрать позже.Please open Telegram to view this post
VIEW IN TELEGRAM
👍18❤9🔥9
Например, Phishing обманывает пользователя и заставляет ввести свои данные на поддельной странице, а SQL Injection позволяет атакующему получить доступ к базе данных через уязвимость в запросах.
На картинке — самые распространённые типы атак, которые важно понимать каждому разработчику и специалисту по безопасности.
Сохрани, чтобы не забыть!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍10🤝9
Знали, что можно просканировать поведение процесса без его исходников и перезапуска?
Когда процесс ведёт себя странно, но трогать его нельзя,
Подключаешься к уже запущенному процессу и смотришь, что он делает на уровне ядра:
Видно, куда он ходит по сети, какие файлы читает или пытается открыть. Это быстрый способ понять, где он залип.
Если нужен общий профиль без тонны вывода, можно использовать агрегированную статистику:
🔥 Это один из самых быстрых способов первичной диагностики на Linux, когда нет логов, нет доступа к коду и нельзя перезапускать сервис.
🚪 Linux Ready | #совет
Когда процесс ведёт себя странно, но трогать его нельзя,
strace даёт доступ к системным вызовам в реальном времени.Подключаешься к уже запущенному процессу и смотришь, что он делает на уровне ядра:
$ strace -p 1234 -e trace=%network
$ strace -p 1234 -e trace=%file
Видно, куда он ходит по сети, какие файлы читает или пытается открыть. Это быстрый способ понять, где он залип.
Если нужен общий профиль без тонны вывода, можно использовать агрегированную статистику:
$ strace -p 1234 -c
$ strace -p 1234 -c -f
strace -p использует ptrace, требует прав и при подключении может прервать текущий syscall (редко, но бывает).Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17❤11👍8🤝2
В этой статье:
• Пошаговая сборка загрузочного диска на базе Debian;
• Минимизация размера системы — всего ~25 МБ;
• Удаление ненужного и настройка initramfs под себя.🔊 Продолжай читать на Habr!
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥19👍10🤝8❤1😁1
Права доступа — одна из основ безопасности в Linux. Через chmod, chown и umask можно управлять доступом к файлам, а команды вроде ls -l и stat помогут быстро проанализировать текущие разрешения и владельцев.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17🤝14🔥11❤6
This media is not supported in your browser
VIEW IN TELEGRAM
Это структурированная коллекция заметок по Linux и смежным темам: процессы, файловые системы, shell и работа с ядром. Материал ориентирован на практическое понимание того, как устроена система на низком уровне. Информация подаётся в компактном формате без избыточной теории, с акцентом на реальные сценарии использования.
Оставляю ссылочку: GitHub📱
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍12🤝8
Как переиспользовать команды из history?
Набрал длинную команду, но забыл sudo и получил отказ. Вместо перепечатывания просто можно повторить её с повышенными правами:
Bash подставит предыдущую команду целиком и выполнит её с
Нужно вернуться к команде, которую выполнял пару шагов назад, не листая историю:
Bash возьмёт команду по относительному номеру из history и выполнит её сразу.
Если помнишь только начало команды, можно вызвать последнюю подходящую:
Bash найдёт последнюю команду, начинающуюся с этого слова, и выполнит её.
Команда выполняется сразу. Для проверки можно добавить
🔥 Это ускоряет работу в терминале кратно, особенно когда команды длинные и сложные.
🚪 Linux Ready | #совет
Набрал длинную команду, но забыл sudo и получил отказ. Вместо перепечатывания просто можно повторить её с повышенными правами:
$ apt install nginx
$ sudo !!
Bash подставит предыдущую команду целиком и выполнит её с
sudo.Нужно вернуться к команде, которую выполнял пару шагов назад, не листая историю:
$ !-2
Bash возьмёт команду по относительному номеру из history и выполнит её сразу.
Если помнишь только начало команды, можно вызвать последнюю подходящую:
$ !docker
$ !grep
Bash найдёт последнюю команду, начинающуюся с этого слова, и выполнит её.
Команда выполняется сразу. Для проверки можно добавить
:p (например, !grep:p).Please open Telegram to view this post
VIEW IN TELEGRAM
👍24❤10🔥6🤝6
Например, при подключении по SSH сначала устанавливается TCP-соединение, затем происходит согласование версий и алгоритмов, после чего выполняется key exchange и аутентификация по ключам.
На картинке — полный процесс: от установления соединения до выполнения команд внутри зашифрованного канала.
Сохрани, чтобы не потерять!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18❤11👍9🤝3
Убиваем залипшие процессы с fuser и kill. Когда Ctrl+C не помогает, а процесс держит порт или файл!
Иногда процесс залипает и не хочет умирать даже после Ctrl+C. Или наоборот — ты не знаешь, что за процесс мешает работать. В таких случаях помогает связка fuser + kill.
Проверим, кто использует порт (например, 8080):
Или файл, занятый каким-то процессом:
Если надо сразу завершить все процессы, держащие ресурс:
Или убить по PID (который вернул fuser):
🔥
🚪 Linux Ready | #практика
Иногда процесс залипает и не хочет умирать даже после Ctrl+C. Или наоборот — ты не знаешь, что за процесс мешает работать. В таких случаях помогает связка fuser + kill.
Проверим, кто использует порт (например, 8080):
fuser -n tcp 8080
Или файл, занятый каким-то процессом:
fuser /var/log/syslog
Если надо сразу завершить все процессы, держащие ресурс:
fuser -k 8080/tcp
Или убить по PID (который вернул fuser):
kill -9 <PID>
🔥
fuser показывает, какие процессы используют файл или порт, а -k завершает их. Аккуратно — можно прибить что-то важное.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17👍14🤝9❤1
This media is not supported in your browser
VIEW IN TELEGRAM
Пошаговое введение в мир bash-скриптов. От простых команд до циклов, условий и автоматизации задач. Писать скрипты проще, когда есть такой ресурс под рукой.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝10👍9🔥7👎3❤1
В этом посте набор утилит, которые помогают глубоко разбирать сетевые проблемы: смотреть пакеты, искать данные в трафике, анализировать маршруты, проверять сокеты и отслеживать состояния соединений. Подходят для диагностики сетевых сбоев, поиска узких мест и дебага.Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍9🤝6🔥2