Linux: Системный администратор
1.66K subscribers
56 photos
7 videos
15 files
17 links
Здесь вы найдете полезные советы, практические материалы и интересные инсайты по администрированию Linux. Погружаемся в мир команд, скриптов и серверов вместе! 🚀

Авторский канал действующего админа 👨🏼‍💻
加入频道
Добро пожаловать на канал Linux: Системный администратор! Здесь вы найдете полезные советы, практические материалы и интересные инсайты по администрированию Linux. Погружаемся в мир команд, скриптов и серверов вместе! 🚀

Хэштеги для поиска в канале:

#Linux@linux_odmin #windows@linux_odmin #Сети@linux_odmin #DevOps@linux_odmin #Скрипты@linux_odmin #Server@linux_odmin #LinuxTips@linux_odmin #OpenSource@linux_odmin #Команды@linux_odmin #Bash@linux_odmin #Unix #News@linux_odmin #Book@linux_odmin #Шпаргалка@linux_odmin #Github@linux_odmin #Video@linux_odmin #Security@linux_odmin
👍1
Codasm — это утилита для маскировки высокоэнтропийных полезных нагрузок (например, shellcode) в бинарных файлах. Она генерирует легитимно выглядящий shellcode, который может скрывать произвольные данные в секции .text с использованием случайных инструкций и шифрования (например, XOR). Впоследствии данные могут быть извлечены и расшифрованы в процессе выполнения программы.

Программа поддерживает автоматическую генерацию shellcode, C-заголовков и ASM-кода для внедрения полезной нагрузки в бинарные файлы и последующего извлечения. Codasm может быть полезна в исследованиях кибербезопасности, например, для обхода анализа бинарных файлов.

https://github.com/NVISOsecurity/codasm


#Github@linux_odmin

👉 @linux_odmin
👍1
Kernel Hardening Checker

Это инструмент для проверки конфигурации ядра Linux на предмет включения параметров, повышающих его защищенность. Утилита анализирует такие аспекты, как параметры конфигурации Kconfig, строки командной строки ядра и значения Sysctl. Она помогает выявить, какие функции, обеспечивающие безопасность, включены или отключены в текущей конфигурации ядра. Это полезно для оценки уровня защиты от атак и применения лучших практик в области безопасности ядра Linux.

Инструмент нацелен на поддержку системных администраторов и разработчиков, чтобы упростить настройку защищенного ядра Linux.

pip install git+https://github.com/a13xp0p0v/kernel-hardening-checker

https://github.com/a13xp0p0v/kernel-hardening-checker


#Github@linux_odmin

👉 @linux_odmin
👍2
This media is not supported in your browser
VIEW IN TELEGRAM
NetAlertX — инструмент для мониторинга сетевой активности и обнаружения изменений в подключенных устройствах. Он помогает администратору отслеживать новые устройства в сети, анализировать подключение и уведомлять о любых подозрительных изменениях. Утилита может быть полезной для повышения безопасности сети и оптимизации управления подключениями.

https://github.com/jokob-sk/NetAlertX

#Github@linux_odmin

👉 @linux_odmin
👍4
YouPlot — это утилита командной строки для визуализации данных. Она поддерживает построение графиков без зависимости от Python или сложных библиотек. Инструмент прост в использовании, легковесен и подходит для быстрого создания графиков прямо из терминала. Поддерживает разные типы диаграмм, включая линейные, столбчатые и точечные.

https://github.com/red-data-tools/YouPlot

#Github@linux_odmin

👉 @linux_odmin
👍4
Шпаргалка по повышению привилегий в Linux

Эта шпаргалка предназначена для тех, кто готовится к OSCP, чтобы помочь им понять различные методы эскалации привилегий на машинах под управлением Linux и CTF с примерами.

https://github.com/Ignitetechnologies/Linux-Privilege-Escalation

#Github@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔗 goto: Навигация в консоли на новом уровне! 🚀

🔥 goto — это удобный инструмент для быстрого перемещения по директориям в командной строке. Если вы устали от постоянного набора длинных путей к папкам, этот инструмент станет вашим спасением!

🎯 Что делает goto?
- Позволяет сохранять короткие алиасы для директорий.
- Упрощает переход к важным папкам одной командой.
- Работает быстро, удобно и просто!

📌 Ключевые функции:
1. Добавление алиасов:

goto add <alias> <path>

Пример:

goto add projects ~/Documents/Projects


2. Навигация по алиасу:

goto <alias>

Пример:

goto projects


3. Список всех алиасов:

goto list


4. Удаление алиасов:

goto remove <alias>


💻 Установка
Просто клонируйте репозиторий и следуйте инструкциям:

git clone https://github.com/grafviktor/goto.git
cd goto
make install


🛠 Для кого?
- Разработчиков, которые работают с множеством проектов.
- Системных администраторов, часто переключающихся между директориями.
- Всех, кто хочет оптимизировать свою работу в терминале.


📥 Репозиторий: https://github.com/grafviktor/goto

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🔗 goto: Навигация в консоли на новом уровне! 🚀

🔥 goto — это удобный инструмент для быстрого перемещения по директориям в командной строке. Если вы устали от постоянного набора длинных путей к папкам, этот инструмент станет вашим спасением!

🎯 Что делает goto?
- Позволяет сохранять короткие алиасы для директорий.
- Упрощает переход к важным папкам одной командой.
- Работает быстро, удобно и просто!

📌 Ключевые функции:
1. Добавление алиасов:

goto add <alias> <path>

Пример:

goto add projects ~/Documents/Projects


2. Навигация по алиасу:

goto <alias>

Пример:

goto projects


3. Список всех алиасов:

goto list


4. Удаление алиасов:

goto remove <alias>


💻 Установка
Просто клонируйте репозиторий и следуйте инструкциям:

git clone https://github.com/grafviktor/goto.git
cd goto
make install


🛠 Для кого?
- Разработчиков, которые работают с множеством проектов.
- Системных администраторов, часто переключающихся между директориями.
- Всех, кто хочет оптимизировать свою работу в терминале.


📥 Репозиторий: https://github.com/grafviktor/goto

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
3👍1
🚨 tcpdump + iptables: ищем странный трафик с минимальными усилиями

Бывает сервер грузится входящими соединениями, но откуда — непонятно. Ловим сразу по факту, не копаясь в логах.

🎯 Цель: отловить соединения к нестандартному порту, которых быть не должно.

🔧 Шаги:

1. Выясни, куда идет трафик:


ss -tnlp


Смотри, какие порты слушаются. Допустим, нашли неожиданный порт 4444.

2. Добавь временное правило в iptables, чтобы логировать:


iptables -I INPUT -p tcp --dport 4444 -j LOG --log-prefix "INCOMING 4444: " --log-level 4


3. Лови трафик через tcpdump, если логов нет или нужно больше деталей:


tcpdump -i any port 4444 -n


Или в файл:


tcpdump -i any port 4444 -n -w suspicious.pcap


4. Проверка логов:


dmesg | grep 'INCOMING 4444'


Или в journald:


journalctl -k | grep 'INCOMING 4444'


5. Удаление правила после анализа:


iptables -D INPUT -p tcp --dport 4444 -j LOG --log-prefix "INCOMING 4444: " --log-level 4


⚠️ Зачем и когда применять:

– Быстрое выявление подозрительной активности
– Минимальное вмешательство в работу сервиса
– Отличный способ понять, «кто ломится» на редкие или ошибочно открытые порты

💡 tcpdump + iptables LOG — мощный дуэт для экспресс-анализа трафика без сложных тулов.

Сохрани, пригодится при разборе аномалий ⚙️

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍5
🔒 Быстрый способ ограничить доступ к SSH по стране с помощью ipset + iptables

Если нужно быстро отрезать SSH от всего мира, кроме, скажем, России (или наоборот — закрыть доступ для определённой страны), вот практический способ.


1. Установи нужные пакеты:


apt install ipset xtables-addons-common -y


2. Скачай GeoIP базы:


/usr/lib/xtables-addons/xt_geoip_dl
/usr/lib/xtables-addons/xt_geoip_build -D /usr/share/xt_geoip /usr/share/xt_geoip/*


3. Создай ipset с нужной страной:


ipset create geo-ru hash:net


4. Загрузи IP-диапазоны страны (например, Russia):


wget -O - https://ipdeny.com/ipblocks/data/countries/ru.zone | while read ip; do ipset add geo-ru $ip; done


5. Применение iptables-правила:


iptables -A INPUT -p tcp --dport 22 -m set ! --match-set geo-ru src -j DROP


📌 Быстрый и действенный способ снизить количество bruteforce-попыток к SSH, особенно если сервер рассчитан на работу только из одной страны.

⚠️ Geo-блокировка не панацея — используйте вместе с fail2ban, ключами и сменой порта.

💡Можно применить тот же принцип для любого сервиса — не только SSH. Просто поменяй порт и ipset.

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍6
🔥 Диагностика внезапных потерь связи через ip route get

Сеть вроде «живая», ping до шлюза идёт, но пакеты не доходят до нужного хоста? Быстрая проверка маршрута решит многое.

📌 Что делать:


ip route get 8.8.8.8


🔍 Что покажет:

- интерфейс, через который идёт маршрут
- IP-адрес источника (важно при policy routing)
- реальный шлюз
- отметку mtu, cache, unreachable и др.

🛠 Пример:


ip route get 8.8.8.8
8.8.8.8 via 192.168.1.1 dev eth0 src 192.168.1.100 uid 1000


Если вместо via ...unreachable, значит маршрут битый или его нет.

👀 Когда использовать:

- подозрение на policy routing
- неочевидные проблемы при SNAT/DNAT
- быстро понять, почему не ходит трафик

💡 Трюк:
Добавь -o к ip — получишь вывод в JSON, удобно парсить в скриптах:


ip -j route get 8.8.8.8 | jq .


Сохрани, пригодится в проде, когда всё внезапно «перестаёт работать».

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍51
🔥 Неожиданный source IP у входящих соединений? Проверяем Reverse Path Filtering (rp_filter)

📌 Столкнулись с асимметричной маршрутизацией, при которой ss или tcpdump показывают странный source IP? Или iptables дропает "легитимные" соединения? — проблема может быть в rp_filter.


1. Нужно проверить текущие настройки:


sysctl net.ipv4.conf.all.rp_filter
sysctl net.ipv4.conf.default.rp_filter


1 — strict mode (по умолчанию);
0 — отключено;
2 — loose mode (рекомендуется при асимметрии или сложной маршрутизации).

2. Временно изменить поведение:


sysctl -w net.ipv4.conf.all.rp_filter=2
sysctl -w net.ipv4.conf.default.rp_filter=2


3. Постоянно через /etc/sysctl.conf:


net.ipv4.conf.all.rp_filter=2
net.ipv4.conf.default.rp_filter=2



❗️ Когда применять:
Если используется policy-based routing, мульти-хоминг или VPN с отдельными маршрутами — strict режим (1) может ломать соединения.

💡Используйте 2 для loose проверки, если трафик приходит по одному интерфейсу, а уходит через другой.

#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍2
🔥 Bash-скрипт: Поиск больших файлов в системе

Когда место на сервере внезапно заканчивается, найти "пожирателей" места бывает непросто. Вот простой скрипт, который покажет топ-20 самых больших файлов:


#!/bin/bash

# Где искать (по умолчанию — весь /)
SEARCH_DIR="/"

# Сколько файлов показывать
TOP=20

echo "=== Топ-$TOP самых больших файлов в $SEARCH_DIR ==="
find "$SEARCH_DIR" -type f -printf '%s %p\n' 2>/dev/null | sort -nr | head -n $TOP | awk '{printf "%10d MB %s\n", $1/1024/1024, $2}'


Как использовать:

1. Сохраните в /usr/local/bin/bigfiles.sh.
2. Сделайте исполняемым:


chmod +x /usr/local/bin/bigfiles.sh

3. Запускайте, например:


/usr/local/bin/bigfiles.sh


#Linux@linux_odmin #Github@linux_odmin

👉 @linux_odmin
👍41