Linux Ready | DevOps
11.2K subscribers
1.03K photos
73 videos
543 links
Авторский канал по разработке на Linux.
Ресурсы, обучения, задачи, шпаргалки.
Ежедневно информация пополняется!

Cотрудничество: @energy_c
Download Telegram
Проверяем состояние соединений через conntrack!

Linux firewall работает не только с отдельными пакетами. Подсистема Netfilter connection tracking ведёт таблицу отслеживаемых соединений, в которой хранится состояние TCP, UDP и других потоков. Это полезно при диагностике NAT, firewall и асимметричной маршрутизации.

Установим утилиту для работы с таблицей conntrack:
sudo apt update && sudo apt install conntrack -y


Текущие соединения можно вывести через -L и сразу отфильтровать по протоколу и адресу назначения:
sudo conntrack -L -p tcp --dst 203.0.113.10


(адреса в примерах документационные — при повторении замените их на свои)

Для TCP-запись содержит состояние соединения, а также параметры исходного и обратного направлений. На узле, выполняющем NAT, по различиям между ними можно определить преобразование адресов и портов:
tcp  6 431999 ESTABLISHED
src=10.0.0.20 dst=203.0.113.10 sport=52144 dport=443
src=203.0.113.10 dst=198.51.100.5 sport=443 dport=52144


При диагностике удобнее наблюдать события в реальном времени. conntrack может выводить создание, обновление и удаление записей по мере прохождения трафика:
sudo conntrack -E -p tcp


Фильтр можно ограничить адресом и портом назначения:
sudo conntrack -E -p tcp \
--dst 203.0.113.10 \
--dport 443


Состояние таблицы важно контролировать на загруженных шлюзах:
sysctl net.netfilter.nf_conntrack_count
sysctl net.netfilter.nf_conntrack_max


Если nf_conntrack_count приближается к nf_conntrack_max, таблица близка к заполнению. При переполнении новые соединения могут перестать нормально отслеживаться, а в журнале ядра обычно появляются сообщения conntrack:
journalctl -k -g 'nf_conntrack'


Время хранения записи для установленного TCP-соединения можно проверить отдельно:
sysctl net.netfilter.nf_conntrack_tcp_timeout_established


Удалять записи вручную следует только при понимании последствий. Для удаления конкретного TCP-потока укажем параметры его исходного направления:
sudo conntrack -D -p tcp \
--src 10.0.0.20 \
--dst 203.0.113.10 \
--sport 52144 \
--dport 443


🔥 conntrack позволяет увидеть состояние соединения с точки зрения Netfilter, включая оба направления потока и результат NAT. Это полезный уровень диагностики между tcpdump и анализом правил nftables.

🚪 Linux Ready | #практика
Please open Telegram to view this post
VIEW IN TELEGRAM
❤15🔥7👍5
👩‍💻 SSH: подключение, ключи, туннели и Jump Host!

В этом посте собраны основные команды SSH для безопасной работы с удалёнными серверами. Рассмотрены подключение к серверу, генерация и установка SSH-ключей, выбор приватного ключа, подключение через нестандартный порт, создание локальных SSH-туннелей и работа через Jump Host. Полезно для администрирования серверов, безопасного доступа и работы с закрытой инфраструктурой.

🚪 Linux Ready | #шпора
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥23👍8🤝5❤1
🎓 Как гарантированно войти в сферу кибербезопасности с официальным дипломом?

Самостоятельное обучение в ИБ - это месяцы хаоса и разрозненных роликов с YouTube. Покупка курсов по отдельности на популярных платформах легко переваливает за 300 000 ₽.

🔥CyberYozh Academy собрали цельный карьерный трек в один пак: 5 фундаментальных программ + официальный Диплом системного администратора за 50 000 ₽ (вместо ~250 000 ₽)

Что входит в программу:
▪️ Linux CyberPunk - системное администрирование с выдачей диплома, открывающего двери в корпоративный сектор.
▪️ SQL для хакера - глубокое понимание архитектуры баз данных и векторов атак.
▪️ HackerPoint - продвинутый уровень пентеста и анализа уязвимостей.
▪️ HackerPoint (Blue vs Red Team) - база сетевой безопасности, защиты и атак.
▪️ AI-помощники на Python - автоматизация рутины безопасника при помощи нейросетей.

Вы получаете законченную квалификацию: от администрирования защищенных облачных решений до проведения тестов на проникновение.

⚠️ Обратите внимание: Из-за персональной проверки заданий и официального оформления дипломов на каждый поток действует жесткий лимит - не более 15 мест.

🦔Отправь промокод LinuxReady в чат с менеджером, чтобы закрепить за собой скидку и узнать подробности:
👉@cyacademy_support
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
В Linux можно копировать собранные файлы так, чтобы не менять файл назначения, если новая версия фактически такая же!

Для этого у GNU install есть опция -C (--compare):
install -C -m 0755 ./build/myapp ./bin/myapp


Перед установкой install сравнит исходный и существующий файлы. Если содержимое и заданные атрибуты совпадают, файл назначения вообще не будет изменён.

Это принципиально отличается от обычного копирования поверх файла:
cp ./build/myapp ./bin/myapp


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

С install -C это удобно убрать прямо из Makefile или скрипта локального развёртывания:
install -C -m 0755 build/myapp /usr/local/bin/myapp


Причём install одновременно умеет выставлять права, поэтому отдельный chmod после копирования не требуется:
install -C -m 0644 config.ini /etc/myapp/config.ini


🔥 install -C полезен там, где одна и та же сборка устанавливается много раз: неизменившийся файл остаётся нетронутым, а копирование и выставление прав сводятся к одной команде.

🚪 Linux Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤7🤝4🔥2
📂 Напоминалка для работы с SED!

Например, sed 's/old/new/g' file.txt заменяет все вхождения old на new, а sed -n '2p' file.txt выводит только вторую строку.

На картинке — основные команды, опции и флаги sed, а также готовые примеры для замены текста, удаления строк и редактирования файлов.

Сохрани, чтобы не потерять!

🚪 Linux Ready | #ресурс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥6🤝3❤1
Как оплачивать зарубежные сервисы в 2026 году?

Можно бегать между посредниками и бояться блокировок после оплаты, а можно выпустить международную карту Lumio Pay и пользоваться любимыми сервисами без рисков.

— выпуск карты за 2 минуты
— лучший курс пополнения на рынке (у конкурентов на 20% выше)
— пополнение рублями или криптой
— чистые BIN карт, оплата без риска блокировок

Пока все ищут идеальное решение, оно у тебя перед глазами: @LumioPay
Для отладки изолированного процесса необязательно заходить внутрь контейнера или менять его образ!

Linux хранит namespaces процесса в /proc/<PID>/ns/, а nsenter позволяет выполнить команду внутри выбранного namespace уже работающего процесса.

Например, если сервис видит другую сеть, чем хост:
sudo nsenter -t 1842 -n ss -lntp


-t 1842 выбирает процесс, а -n подключает команду к его network namespace. В результате ss работает с тем же сетевым стеком, таблицами маршрутизации и интерфейсами, которые доступны целевому процессу.

То же самое можно сделать с файловыми монтированиями:
sudo nsenter -t 1842 -m findmnt


А если для диагностики нужны сразу несколько namespaces:
sudo nsenter -t 1842 -m -n -p sh


Так можно получить shell с mount, network и PID namespace нужного процесса и запускать внутри обычные ip, ss, findmnt, ps и другие диагностические инструменты.

При этом nsenter не создаёт новый namespace — он присоединяет запускаемую команду к уже существующему.

🔥 nsenter особенно полезен, когда процесс изолирован namespaces, а внутри его окружения нет диагностических утилит: вместо установки инструментов туда можно зайти в нужный namespace с хоста и исследовать проблему на месте.

🚪 Linux Ready | #совет
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥6❤3🤝1