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

Авторский канал действующего админа 👨🏼‍💻
Download Telegram
Nginx-Lua-Anti-DDoS

Этот репозиторий предоставляет Lua-скрипт для защиты серверов на базе Nginx от DDoS-атак. Он использует возможности OpenResty и модуля ngx_lua для фильтрации трафика, ограничения запросов и обнаружения подозрительных IP.

🔹 Основные функции:
- Проверка и блокировка подозрительных клиентов.
- Ограничение количества запросов (rate limiting).
- Обнаружение автоматизированных атак и ботов.
- Интеграция с Cloudflare, iptables и другими системами.

🔹 Требования:
- Nginx с поддержкой Lua (через OpenResty или сборку с модулем `ngx_http_lua_module`).
- Возможность редактирования конфигурации сервера.

https://github.com/C0nw0nk/Nginx-Lua-Anti-DDoS

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍3
Как работает HTTPS?

Безопасный протокол передачи гипертекста

(HTTPS) - это расширение протокола передачи гипертекста (HTTP). HTTPS передает зашифрованные данные с использованием транспортного уровня безопасности (TLS). Если данные будут перехвачены в Интернете, все, что получит угонщик, - это двоичный код.

Как шифруются и дешифруются данные?

Шаг 1 - Клиент (браузер) и сервер устанавливают TCP-соединение.

Шаг 2 - Клиент отправляет серверу " client hello". Сообщение содержит набор необходимых алгоритмов шифрования (наборов шифров) и последнюю версию TLS, которую он может поддерживать. Сервер отвечает " server hello", чтобы браузер знал, может ли он поддерживать алгоритмы и версию TLS.

Затем сервер отправляет SSL-сертификат клиенту. Сертификат содержит открытый ключ, имя хоста, дату истечения срока действия и т. д. Клиент проверяет сертификат.

Шаг 3. После проверки SSL-сертификата клиент генерирует ключ сессии и шифрует его с помощью открытого ключа. Сервер получает зашифрованный ключ сеанса и расшифровывает его с помощью закрытого ключа.

Шаг 4 - Теперь, когда клиент и сервер владеют одним и тем же сеансовым ключом (симметричное шифрование), зашифрованные данные передаются по защищенному двунаправленному каналу.

Почему HTTPS переключается на симметричное шифрование при передаче данных? Есть две основные причины:

1. Безопасность: Асимметричное шифрование работает только в одну сторону. Это означает, что если сервер попытается отправить зашифрованные данные обратно клиенту, любой сможет расшифровать их с помощью открытого ключа.

2. Ресурсы сервера: Асимметричное шифрование добавляет довольно много математических накладных расходов. Оно не подходит для передачи данных в длительных сессиях.

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍8
🎥 Вебинар по Linux: Процессы в Linux: как работает система изнутри

Разбираемся, что такое процессы в Linux, как их контролировать и что делать с зомби и сиротами.

На вебинаре вы узнаете:
- Что такое процесс в Linux и чем он отличается от программы.
- Как устроен жизненный цикл процесса — от создания до завершения.
- Что такое состояния процессов и как их отследить с помощью системных утилит.
- Как управлять процессами: приоритеты, фоновые задания, остановка и завершение.

В результате вебинара вы:
- Научитесь находить и анализировать процессы с помощью ps, top, htop и других инструментов.
- Разберётесь, кто такие “зомби” и “сироты” и как их «убить» корректно.
- Поймёте, как Linux управляет процессами и что происходит при системных вызовах к ядру.
- Сможете уверенно контролировать работу процессов и решать проблемы зависших приложений..

🎁 Все участники вебинара получат специальные условия на полное обучение курса "Administrator Linux. Basic"

👉 Для участия зарегистрируйтесь: https://vk.cc/cREaKs

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Как найти и удалить старые файлы в Linux? 🗑️

Привет, админы! Сегодня разберёмся, как быстро находить и удалять старые файлы в Linux. Это полезно для очистки логов, временных файлов и других ненужных данных.

🔍 Поиск файлов старше 30 дней:

find /path/to/directory -type f -mtime +30

- -type f — ищем только файлы;
- -mtime +30 — файлы старше 30 дней.

🗑️ Удаление этих файлов:

find /path/to/directory -type f -mtime +30 -delete

Осторожно! Удаление без подтверждения.

Безопасный вариант с подтверждением:

find /path/to/directory -type f -mtime +30 -exec rm -i {} \;

Будет запрашиваться подтверждение перед удалением.

🔥 Автоматизация через cron:
Добавляем в crontab -e:

0 3 * * * find /var/log -type f -mtime +30 -delete

Очистка логов каждую ночь в 03:00.

#Linux@linux_odmin #Команды@linux_odmin #Шпаргалка@linux_odmin

👉 @linux_odmin
👍5
Как проверить, что процесс слушает нужный порт?

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

📡 Способы проверки:

1️⃣ ss (современный вариант netstat):

ss -tulnp

- -t — TCP;
- -u — UDP;
- -l — только слушающие сокеты;
- -n — не резолвить имена;
- -p — показать процессы.

2️⃣ lsof (список открытых файлов, включая порты):

lsof -i :80

Покажет, какой процесс слушает 80-й порт.

3️⃣ netstat (старый, но работает):

netstat -tulnp


4️⃣ Сокетный тест с nc:

nc -zv 127.0.0.1 80

Если порт открыт, увидим сообщение succeeded.

💡 Пример реального кейса: Apache не запускается, потому что другой процесс уже занял порт 80. Как быстро его прибить?

fuser -k 80/tcp

или

kill $(lsof -t -i :80)


#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍6
Как быстро узнать, какие процессы грузят систему?

Если сервер вдруг начал тормозить, первым делом проверяем загрузку CPU и памяти. Вот мои любимые команды:

🔹 top — классика, показывает активные процессы в реальном времени.
🔹 htop — улучшенная версия top с удобным интерфейсом.
🔹 ps aux --sort=-%cpu | head — топ 10 процессов по загрузке CPU.
🔹 ps aux --sort=-%mem | head — топ 10 процессов по потреблению памяти.

А если хотите найти, какая конкретно команда грузит диск:

iotop -o

или

iostat -dx 1

Какие инструменты используете вы, когда сервер внезапно начинает «тупить»? 🚀

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍72
🛠 Как проверить нагрузку на сервер?

Если сервер начал тормозить, первым делом проверяем, что его грузит. Вот полезные команды для диагностики:

🔹 top / htop – показывает загрузку процессора, памяти, активные процессы.
🔹 free -m – проверяет, сколько оперативной памяти занято и сколько доступно.
🔹 df -h – смотрит свободное место на диске.
🔹 iostat -x 1 – помогает определить проблемы с дисковым вводом-выводом.
🔹 netstat -tulnp / ss -tulnp – проверяет открытые порты и сетевые подключения.

Если сервер под нагрузкой, но процессы неизвестны, попробуйте ps aux --sort=-%cpu или ps aux --sort=-%mem, чтобы найти самых "прожорливых".

А какими инструментами диагностики чаще всего пользуетесь вы?

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍41
1️⃣ Как проверить скорость интернета в Linux через терминал?

Если вам нужно быстро замерить скорость интернета на сервере или рабочей машине без браузера, используйте один из этих инструментов:

1️⃣ Speedtest CLI
Установите и запустите:

sudo apt install speedtest-cli # для Ubuntu/Debian
sudo yum install speedtest-cli # для CentOS/RHEL
speedtest


2️⃣ Fast CLI (от Netflix)
Удобный альтернативный инструмент:

curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python3

или

fast


3️⃣ nload – мониторинг в реальном времени

sudo apt install nload
nload


Теперь у вас есть несколько способов быстро проверить скорость соединения. Какой инструмент используете вы? 🌐

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍51👎1
2️⃣ Почему kill -9 не всегда хорошая идея?

Один из самых частых способов убить процесс в Linux – это команда:

kill -9 PID

Но почему её не стоит использовать бездумно?

🔸 -9 (SIGKILL) моментально завершает процесс без шанса на очистку ресурсов. Это может привести к:
- Потере несохранённых данных
- Оставлению зомби-процессов
- Проблемам с зависимыми процессами

Лучше использовать более "мягкие" сигналы:
1️⃣ kill PID (SIGTERM) – вежливо просит процесс завершиться.
2️⃣ kill -15 PID – то же самое, но явно.
3️⃣ kill -1 PID (SIGHUP) – для перезапуска демонов.
4️⃣ kill -2 PID (SIGINT) – аналог Ctrl+C.

Используйте kill -9 только в крайнем случае, когда процесс завис и не отвечает на другие сигналы.

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍51
🛠 Как проверить загрузку процессора в Linux?

Производительность сервера – это первое, что проверяют при проблемах. Если сервер тормозит, первым делом смотрим на CPU.

📌 Вот несколько полезных команд:
🔹 top – показывает загрузку CPU в реальном времени.
🔹 htop – более удобная версия top с цветным интерфейсом.
🔹 mpstat -P ALL 1 – детальный анализ нагрузки по ядрам.
🔹 sar -u 1 10 – сбор данных о загрузке процессора в динамике.
🔹 iostat -c 1 – еще один способ посмотреть загрузку CPU.

🔎 На что смотреть?
📌 Высокий %user – процессы активно используют CPU.
📌 Высокий %iowait – узкое место в дисковой системе.
📌 %steal – возможно, вам не хватает процессорных ресурсов на виртуальной машине.

А какая ваша любимая команда для мониторинга CPU? Делитесь в комментариях!

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍2
Как удалить огромную папку в Linux за секунды?

Удаление больших папок в Linux может занять очень много времени. Особенно, если делать это через rm -rf.

💡 Альтернативные способы удаления:
Удаляем быстрее с rsync:

rsync -a --delete empty_dir/ target_dir/

Заменяем target_dir на пустую папку и мгновенно очищаем ее.

Используем find и xargs:

find /bigdir -type f -delete
find /bigdir -depth -type d -delete

Сначала удаляем файлы, потом папки – так быстрее.

Удаляем через inode:
Если папка – это отдельный монтированный диск, можно просто отмонтировать и форматнуть:

umount /bigdir
mkfs.ext4 /dev/sdX


Какой способ используете вы?

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
3👍2
📌 Оптимизация автозапуска сервисов в Linux: избавляемся от лишнего

Привет, админы! Сегодня разберём важную тему — автозапуск сервисов в Linux. Бывает, что после установки системы или пакетов в автозапуске оказываются ненужные сервисы, которые грузят память и процессор. Давайте это исправим!

🔹 Проверяем список сервисов

systemctl list-unit-files --type=service | grep enabled

Эта команда покажет все сервисы, включённые в автозапуск.

🔹 Отключаем ненужные сервисы
Например, если вам не нужен Bluetooth, его можно отключить:

sudo systemctl disable bluetooth.service

А если сервис запущен, то сразу и останавливаем:

sudo systemctl stop bluetooth.service


🔹 Полностью маскируем сервис (если он не нужен совсем)

sudo systemctl mask bluetooth.service

Это запретит его запуск даже вручную.

🔹 Проверяем скорость загрузки системы
Чтобы понять, какие сервисы тормозят загрузку:

systemd-analyze blame

Самые долгие процессы будут вверху списка.

Зачастую можно отключить NetworkManager-wait-online.service, если сервер работает без GUI:

sudo systemctl disable NetworkManager-wait-online.service


👉 Оптимизация автозапуска не только ускоряет загрузку, но и снижает нагрузку на систему. Делаете ли вы ревизию сервисов на своих серверах? Пишите в комментах! 🚀

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍7
📌 Как восстановить удаленные файлы в Linux?

Привет, коллеги! Сегодня разберем одну из самых неприятных ситуаций – случайное удаление важных файлов. 😱

🔹 Первое правило – не паниковать! Главное – не записывать новые данные на диск, откуда был удален файл, иначе его будет сложнее восстановить.

🛠 Способы восстановления:

1️⃣ Корзина (Trash)
Если файл был удален через GUI (например, Nautilus или Dolphin), проверьте ~/.local/share/Trash/.

2️⃣ Команда lsof (если файл еще открыт процессом)
Иногда процесс продолжает использовать удаленный файл:

lsof | grep '(deleted)'

Можно скопировать содержимое из /proc/<PID>/fd/<FD> в новый файл.

3️⃣ Восстановление через extundelete (для ext4)
Если файл был удален с раздела ext4, используем extundelete:

sudo umount /dev/sdX1 # Размонтируем раздел
sudo extundelete /dev/sdX1 --restore-all

Файлы восстанавливаются в папку RECOVERED_FILES.

4️⃣ Photorec – восстановление данных с диска
Подходит для файловых систем ext4, NTFS, FAT и других:

sudo apt install testdisk # Устанавливаем пакет
sudo photorec

Выбираем диск и начинаем поиск удаленных файлов.

5️⃣ grep в raw-данных (если знаем содержимое)
Можно попробовать найти фрагменты файла прямо на диске:

grep -a -b "текст из файла" /dev/sdX

Где -a указывает, что это текст, а -b показывает смещение.

🔥 Лучший способ защиты – бэкапы! Используйте rsnapshot, borg, restic или хотя бы rsync для резервного копирования.

💬 А какие методы восстановления использовали вы? Делитесь опытом в комментариях! 👇

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍4
📌 Топ команд htop, о которых ты мог не знать!

Привет, админы! Сегодня я покажу вам, как выжать максимум из htop – мощного интерактивного монитора процессов. Многие пользуются им для просмотра нагрузки на систему, но знаете ли вы о его скрытых фишках? Давайте разбираться!

🔥 Полезные команды:
1️⃣ F2 (Setup) – Настройка интерфейса. Можно скрыть ненужные столбцы или поменять цветовую схему.
2️⃣ F3 (Search) – Быстрый поиск процесса по имени.
3️⃣ F4 (Filter) – Фильтрация процессов по имени или команде.
4️⃣ F5 (Tree View) – Отображение процессов в виде древовидной структуры. Очень удобно для отладки зависимостей!
5️⃣ F6 (Sort By) – Изменение сортировки (CPU, MEM, PID и т.д.).
6️⃣ F7/F8 – Изменение приоритета (nice) процессов на лету.
7️⃣ F9 (Kill) – Убийство процесса без выхода из htop.

💡 Дополнительные лайфхаки:
🔹 Shift + U – Снимает выделение всех процессов.
🔹 Shift + P / M / T – Быстро сортирует по CPU, памяти или времени выполнения.
🔹 H – Подсветка зависимых процессов (родитель-потомок).
🔹 I – Инвертирует сортировку, полезно при анализе.

А вы знали про эти фишки? Делитесь в комментариях, как используете htop в повседневной работе! 👇🚀

#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin

👉 @linux_odmin
👍4🫡1