Linux
Відкрити в Telegram
Все для системного администратора, новости и информация из мира Linux По всем вопросам @evgenycarter
Показати більше2 446
Підписники
-124 години
-67 днів
-4030 днів
Архів дописів
2 446
Как определить и предотвратить DDoS-атаку TCP SYN Flood при помощи Wireshark / tcpdump
На мастер-классе вы узнаете:
- как происходит установление соединения и обмен данными в TCP;
- что такое трехстороннее рукопожатие (квитирование) TCP;
- об использовании инструментов для захвата и анализа пакетов Wireshark / tcpdump;
- как увидеть пакеты / сегменты трехстороннего квитирования (SYN, ACK), а также последовательные номера (sequence number);
- что из себя представляет DDoS-атака TCP SYN Flood, как ее увидеть и предотвратить;
- как повысить свою квалификацию в качестве ИТ-специалиста и зарабатывать в разы больше в условиях экономического кризиса.
источник
👉@linuxchmod
2 446
Утилита динамического мониторинга процессов Nmon
Это утилита измерения и настройки производительности. Она может отображать информацию о ЦП, оперативной памяти, сети, дисках (в виде мини графиков или числовых данных), файловых системах, NFS, самых нагружающих процессах, ресурсах.
Устанавливается командой:
sudo pamcan -S nmon
Для запуска утилиты необходимо выполнить команду:
nmon
https://telegra.ph/Utilita-dinamicheskogo-monitoringa-processov-Nmon-03-11
👉@linuxchmod2 446
Скрипты оболочки и конвейер (Pipe)
Конвейер (pipe) — один из самых мощных инструментов в shell-скриптинге. Он позволяет передавать данные от одной команды к другой. Однако его часто используют неэффективно.
Многие думают, что конвейер просто передаёт вывод одной команды в другую:
1. Первая команда создаёт вывод.
2. Конвейер передаёт его во вход второй команды.
3. Вторая команда получает вход.
Но на самом деле процесс сложнее:
1. Первая команда создаёт вывод.
2. Конвейер создаёт FIFO-сегмент в памяти.
3. Данные записываются в FIFO блоками.
4. Вторая команда запускается и получает данные блоками.
Каждый
| создаёт новый сегмент памяти и заново запускает команды. Например:
grep A | grep B | grep C
Лучше заменить на:
grep "A.*B.*C"
Так grep запускается один раз, что быстрее и эффективнее.
Как оптимизировать конвейеры?
- Изучите параметры команд (egrep, gawk и др.), чтобы не передавать данные лишний раз.
- Обрабатывайте данные перед циклами (sed, awk).
- Используйте встроенные функции Bash.
Что делать, если без конвейера не обойтись?
Используйте именованный конвейер (Named Pipe), чтобы избежать повторного создания памяти:
mkfifo my_pipe
cat my_pipe &
echo "данные" > my_pipe
Это особенно полезно в больших скриптах.
👉@linuxchmod2 446
📌 Мониторинг нагрузки на CPU в реальном времени 💻📊
Часто нужно быстро проверить загрузку процессора на сервере, не прибегая к сложным инструментам. Вот простой скрипт на Bash, который поможет отслеживать нагрузку на CPU в реальном времени с обновлением каждые 2 секунды!
#!/bin/bash
echo "Мониторинг загрузки CPU (нажмите Ctrl+C для выхода)"
while true; do
echo -n "CPU: "
mpstat 1 1 | awk '/Average:/ {printf "%.2f%%\n", 100 - $NF}'
sleep 2
done
🔹 Как работает?
- Использует команду mpstat для получения загрузки процессора.
- Вычисляет процент загруженности, вычитая idle-процент из 100.
- Выводит результат в удобочитаемом формате.
- Обновляется каждые 2 секунды.
🔥 Как запустить?
1️⃣ Установите пакет sysstat, если его нет:
sudo apt install sysstat # Для Debian/Ubuntu
sudo yum install sysstat # Для CentOS/RHEL
2️⃣ Сделайте скрипт исполняемым:
chmod +x cpu_monitor.sh
3️⃣ Запустите:
./cpu_monitor.sh
👉@linuxchmod2 446
Виртуализация/гипервизоры. ESXI.
Виртуализация и гипервизоры.Установка гипервизора ESXI на сервер.
ESXI. Создание виртуального сервера Windows 2019.
ESXI. Совместимость железа.
ESXI. Перемещение и копирование виртуальных серверов
Что будет если сломается флешка? Переустановка ESXI.
ESXI. Снимки виртуальных машин.
ESXI. Сеть. Разделение подсетей.
ESXI. Сеть. Shaping, режем трафик!
Автор: SERVAK
👉@linuxchmod
2 446
Как измерить скорость жестких дисков?
Часть 1. Обзор программы Crystal Disk Mark.
Часть 2. Кеш рейд контроллера.
Часть 3. Соотношение кеша чтение/запись.
Часть 4. Задержка и IOPS.
Часть 5. DiskSPD, Performance monitor.
Автор: SERVAK
👉@linuxchmod
2 446
pSnapper (Linux Process Snapper)
Скрипт, с помощью которого можно получить информацию о процессах, их состоянии и статусах в системе.
Скрипт не подключается к рабочему процессу, он просто получает информацию из /proc/PID/task/*. Для работы нужен только python, более ничего устанавливать не требуется.
🔹Установка
# git clone https://github.com/tanelpoder/psnapper
# cd psnapper
# chmod +x ./psn
И работаем с нашими процессами в системе.
Например, получаем активность за последние 5 секунд, просто введя:
# ./psn
Получаем список активных процессов, запущенную при этом команду, pid, вызовы и текущие состояния:
# ./psn -g pid,cmdline,state,syscall -a
Смотрим, как обстоят дела у нашего сервера БД, но собираем информацию не 5, а 30 секунд:
# ./psn -d 30 -p ^mysql -g cmdline,state,syscall,wchan -a
https://github.com/tanelpoder/psnapper
👉@linuxchmod2 446
📌 Оптимизация загрузки системы: ускоряем boot на Linux
1️⃣ Анализируем время загрузки
Для начала посмотрим, что тормозит boot:
systemd-analyze
Выведет общее время загрузки. Теперь разберёмся, какие службы тормозят:
systemd-analyze blame
Эта команда покажет список сервисов и время их запуска.
2️⃣ Отключаем ненужные сервисы
Если видите, что какой-то сервис грузится долго, но не нужен – отключаем:
sudo systemctl disable имя_сервиса
sudo systemctl stop имя_сервиса
Проверяйте осторожно, отключение критичных служб может повлиять на работу системы!
3️⃣ Оптимизируем GRUB
Можно уменьшить задержку перед загрузкой ОС:
Открываем конфиг:
sudo nano /etc/default/grub
Находим строку:
GRUB_TIMEOUT=5Ставим меньшее значение, например
1, затем обновляем:
sudo update-grub
4️⃣ Параллельная загрузка служб
Включаем параллельный запуск процессов:
sudo systemctl enable systemd-readahead-collect
sudo systemctl enable systemd-readahead-replay
Это поможет заранее загружать часто используемые данные.
5️⃣ Используем профилирование ядра
Если хотите максимальной скорости, включите опцию profile в загрузке ядра:
sudo grubby --update-kernel=ALL --args="profile"
После перезагрузки ядро само оптимизирует загрузку.
👉@linuxchmod2 446
Права в Linux (chown, chmod, SUID, GUID, sticky bit, ACL, umask)
Всем привет. Это перевод статьи из книги RedHat RHCSA RHCE 7 RedHat Enterprise Linux 7 EX200 and EX300.
От себя: Надеюсь статья будет полезна не только начинающим, но и поможет более опытным администраторам упорядочить свои знания.
https://habr.com/ru/post/469667/
👉@linuxchmod
2 446
🔥 Оптимизация SSH-доступа: ускоряем работу с серверами 🔥
🔹 Отключаем DNS-резолвинг на сервере
При подключении по SSH сервер по умолчанию пытается определить IP клиента через DNS, что может замедлять вход. Отключаем это:
echo "UseDNS no" | sudo tee -a /etc/ssh/sshd_config
sudo systemctl restart sshd
🔹 Используем MUX-сессии SSH
Чтобы не устанавливать новое соединение при каждом подключении, можно использовать multiplexing:
Добавьте в ~/.ssh/config:
Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 10m
Создайте папку:
mkdir -p ~/.ssh/sockets
Теперь первое соединение будет стандартным, а последующие — молниеносными! ⚡
🔹 Включаем сжатие трафика
Если соединение медленное, попробуйте сжатие:
ssh -C user@server
Или добавьте в ~/.ssh/config:
Compression yes
🔹 Используем mosh вместо ssh
mosh (Mobile Shell) держит соединение даже при смене сети и потере пакетов. Устанавливаем:
sudo apt install mosh # Debian/Ubuntu
sudo yum install mosh # CentOS/RHEL
Подключаемся:
mosh user@server
👉@linuxchmod2 446
RustScan – Инструмент для быстрого сканирования портов
Данный проект может похвастаться высокой скоростью работы(Сканирует все 65 тыс. портов за 3 секунды), гибкой расширяемостью и адаптивным методом работы.
https://github.com/RustScan/RustScan
👉@linuxchmod
2 446
Как разбить команду на несколько строк в linux
В Linux можно разбить длинную команду на несколько строк, используя обратный слэш (
\) в терминале. Это позволяет сделать команду более читаемой.
1. Запуск команды с аргументами:
cp -r \
/home/user/Documents \
/backup/Documents
Здесь команда cp -r переносится на новую строку после \.
2. Использование в скриптах (bash):
echo "Этот текст будет \
выведен в одной строке"
Результат:
Этот текст будет выведен в одной строке3. Конвейер (Pipeline) с
|:
cat /var/log/syslog | \
grep "error" | \
sort | \
uniq
4. Переменные и длинные строки:
MY_VAR="Это очень длинная строка, \
которая разбивается на несколько строк, \
но сохраняет свою целостность."
echo "$MY_VAR"
5. Использование фигурных скобок {}:
mv {file1.txt,file2.txt,file3.txt} \
/destination/
6. Перенос в командах sed, awk, grep:
awk '{ print $1, \
$2 }' file.txt
7. Использование EOF (многострочный ввод):
cat <<EOF
Это многострочный текст,
который будет выведен в терминал.
EOF
🔹 Важно: \ должен стоять в конце строки, без пробелов после него.
👉@linuxchmod2 446
RAID-массивы - восстановление данных
Технологии Raid массивов. Что делать, если из raid массива выпал диск?
Сетевое хранилище Synology - восстановление данных
RAID 5 - особенности и восстановление данных
Почему наличие Raid массивов любого уровня не освобождает вас от создания резервного копирования
Сбои Raid - контроллеров
Raid-массивы: ошибки пересборки
источник
👉@linuxchmod
2 446
Stacer – Опенсорсная утилита для оптимизации и мониторинга Linux-систем
https://github.com/oguzhaninan/Stacer
👉@linuxchmod
2 446
🔥 Linux Kernel Manager and Activity Monitor — Мониторинг ядра Linux в реальном времени 🐧💻
Kmon - удобный инструмент для мониторинга и управления модулями ядра Linux прямо из терминала. Если вам нужно быстро загрузить, выгрузить или повторно загрузить модули ядра,
kmon станет отличным помощником.
🔹 Основные возможности:
- Просмотр загруженных модулей ядра
- Фильтрация и поиск по модулям
- Управление модулями (load, unload, reload)
- Интуитивный TUI-интерфейс на ncurses
📌 Установка:
cargo install kmon
📌 Запуск:
kmon
После этого откроется удобный интерфейс для работы с модулями ядра!
https://github.com/orhun/kmon
👉@linuxchmod2 446
🔧 Оптимизация SSH: Ускоряем подключение к серверу
1️⃣ Отключаем проверку DNS
По умолчанию SSH проверяет IP-адрес клиента в DNS, что может замедлять соединение. Отключим это:
Открываем конфиг sshd_config:
sudo nano /etc/ssh/sshd_config
Добавляем/изменяем строку:
UseDNS no
Сохраняем и перезапускаем SSH:
sudo systemctl restart sshd
2️⃣ Убираем задержку при аутентификации GSSAPI
Если у вас в сети не используется Kerberos, отключите GSSAPI-аутентификацию:
В файле sshd_config добавляем:
GSSAPIAuthentication no
А также в файле ssh_config (для клиента):
GSSAPIAuthentication no
3️⃣ Подключаемся быстрее с ControlMaster
Чтобы не устанавливать новое соединение при каждом вызове SSH, используем сессионный сокет:
Добавляем в ~/.ssh/config:
Host *
ControlMaster auto
ControlPath ~/.ssh/sockets/%r@%h-%p
ControlPersist 10m
Создаем папку:
mkdir -p ~/.ssh/sockets
chmod 700 ~/.ssh/sockets
Теперь повторные соединения к серверу будут мгновенными! ⚡
👉@linuxchmod2 446
Shell Scripting
Bash (Born Again) - это оболочка Unix и язык командной строки, написанный Брайаном Фоксом. Оболочка Born Again используется большинством операционных систем Unix/Linux в качестве оболочки по умолчанию.
Этот туториал по Shell Script написан для тех, кто хочет изучить основы программирования сценариев оболочки (Shell scripting). В этой серии уроков вы узнаете о скриптах bash, которые будут очень полезны для автоматизации повседневных задач. Он помогает автоматизировать такие задачи, как резервное копирование, очистка диска и т.д.
https://tecadmin.net/tutorial/bash-scripting/
👉@linuxchmod
2 446
Firewall в Mikrotik: разбираем, как обеспечивать безопасность сети
Firewall дает огромные возможности по управлению сетевым трафиком, проходящим через Mikrotik.
Вы, как администратор сети, должны суметь разделить все потоки трафика. дать каждому из них свои права, а весь лишний трафик — заблокировать.
Firewall в Mikrotik по большей части позаимствован из IPTables из Linux.
02:27 Вопросы вебинара
03:23 Firewall filter
07:06 Работа по принципу «Если-То»
23:54 Filter Actions
57:15 Firewall NAT
1:03:33 NAT Actions
1:14:59 Connection State
1:30:49 Connection Tracking
1:31:22 Простая настройка firewall
1:33:16 Сложная настройка firewall
1:33:46 Address List
1:35:03 Блокирование сайтов через адрес листы с добавлением доменного имени
1:45:06 NAT Helpers
1:46:51 Полезные ссылки
источник
👉@linuxchmod
2 446
Mikrotik firewall
Цепочка Output в Mikrotik Firewall Filter
Основные цепочки IP Firewall Filter, используемые в MikroTik
Цепочка Input в Firewall Filter Mikrotik
Цепочка Forward в Firewall Mikrotik Filter
Action в Mikrotik ip firewall filter - accept, log, add to address list
Action Mikrotik ip firewall filter — drop, fasttrack connection, jump, passtrough, reject, tarpit
Address List в Mikrotik
Принцип «Если-То» в Firewall MikroTik, Вкладки «General», «Advanced», «Extra», «Action»
Ручная Настройка Default Firewall Filter Rules в MikroTik
Настройка Honeypot в Mikrotik
Port Knocking в Mikrotik Firewall Filter
Все видео на youtube
👉@linuxchmod
