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

Авторский канал действующего админа 👨🏼‍💻
Download Telegram
📌 Оптимизация автозапуска сервисов в 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
👍8
📌 Как восстановить удаленные файлы в 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
👍5
📌 Топ команд 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
👍7🔥3🫡1
🔥 Как проверить, какие процессы занимают порт в Linux?

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

🛠 Команда netstat (если у вас установлен пакет net-tools)

netstat -tulnp | grep :80

💡 Опция -tulnp расшифровывается так:
- -t – TCP,
- -u – UDP,
- -l – слушающие порты,
- -n – показывать номера портов,
- -p – показывать процесс, который использует порт.

🛠 Команда ss (современная альтернатива netstat)

ss -tulnp | grep :80


🛠 Использование lsof
Если хотите узнать, какой процесс занимает порт 80:

lsof -i :80

Если lsof не установлен, установите его:

# Debian/Ubuntu
apt install lsof
# CentOS/RHEL
yum install lsof


🛠 Альтернатива через fuser

fuser -v 80/tcp

🔥 Эта команда сразу покажет PID процесса, а с флагом -k можно его принудительно завершить:

fuser -k 80/tcp


Теперь вы знаете, как быстро найти и убить процессы, блокирующие нужные порты. 🚀
А вы каким методом пользуетесь чаще всего? Делитесь в комментариях! 👇

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

👉 @linux_odmin
👍12
🛠️ Как быстро найти и удалить большие файлы в Linux?

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

🔍 Поиск самых больших файлов:
Используем команду find, чтобы найти файлы больше 1 ГБ:

find / -type f -size +1G -exec ls -lh {} +

🔹 / – корневая директория, можно заменить на нужный путь
🔹 -type f – ищем только файлы
🔹 -size +1G – файлы больше 1 ГБ
🔹 -exec ls -lh {} + – отображаем размер и путь

🔥 Удаление больших файлов:
Будьте осторожны, сначала убедитесь, что удаляете нужное!

find /var/log -type f -size +500M -delete

🔹 Здесь удаляем файлы больше 500 МБ в /var/log

📌 Дополнительно:
Чтобы найти самые крупные каталоги, используйте:

du -ah / | sort -rh | head -20

Эта команда покажет 20 самых тяжелых объектов.

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

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

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

📊 1️⃣ Используем top

top

В реальном времени покажет загрузку процессора, память и активные процессы. Сортировка по использованию CPU идёт автоматически.

Полезные клавиши в top:
- Shift + P — отсортировать по загрузке CPU.
- 1 — показать загрузку по каждому ядру.
- q — выйти.

📊 2️⃣ htop – удобная альтернатива

htop

Красивый интерфейс, удобное управление, фильтрация процессов. Устанавливаем:

apt install htop # для Debian/Ubuntu
yum install htop # для CentOS
dnf install htop # для Fedora

3️⃣ Быстрый анализ через mpstat

mpstat -P ALL 1 5

Покажет загрузку каждого ядра за последние 5 секунд. Устанавливаем через sysstat:

apt install sysstat # Debian/Ubuntu
yum install sysstat # RHEL/CentOS


🔍 4️⃣ Кто грузит CPU?

ps -eo pid,comm,%cpu --sort=-%cpu | head -n 10

Выведет топ-10 процессов, которые больше всего нагружают процессор.

🔥 А что используете вы для мониторинга CPU? Делитесь инструментами в комментариях! 🚀

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

👉 @linux_odmin
👍2
🛠️ Как быстро узнать, какие процессы нагружают систему?

Привет, коллеги! Сегодня расскажу, как быстро выявить "прожорливые" процессы, которые могут нагружать CPU, память или диск. Особенно полезно, когда сервер тормозит, а причина не очевидна.

🔥 ТОП-5 процессов по загрузке CPU:

ps -eo pid,ppid,user,%cpu,%mem,cmd --sort=-%cpu | head -n 6

📌 Разбор команды:
- -eo — выбираем, какие колонки отображать.
- pid,ppid,user,%cpu,%mem,cmd — показываем ID процесса, родительский процесс, владельца, % загрузки CPU и памяти, команду запуска.
- --sort=-%cpu — сортируем по убыванию нагрузки на процессор.
- head -n 6 — выводим первые 5 строк (плюс заголовок).

📊 ТОП-5 процессов по потреблению памяти:

ps -eo pid,ppid,user,%cpu,%mem,cmd --sort=-%mem | head -n 6

Здесь всё аналогично, но сортируем по памяти.

📂 Самые активные процессы на диске (I/O):

iotop -o -n 5

Эта команда (из пакета iotop) покажет процессы, активно читающие/записывающие данные на диск.

🚀 Завершаем "прожорливый" процесс:
Если нашли виновника, можно его аккуратно завершить:

kill -9 PID

Где PID — это ID процесса. Но будьте осторожны! Убедитесь, что не убиваете важный системный процесс.

💡 А как вы мониторите нагрузку на сервер? Используете htop, atop или что-то ещё? Делитесь в комментариях! 🚀

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

👉 @linux_odmin
👍5
🚀 Как запустить сервис автоматически при загрузке Linux?

Привет, админы! Часто сталкиваемся с задачей: нужно, чтобы сервис стартовал автоматически при перезагрузке сервера. Давайте разберем три варианта для разных случаев.

1️⃣ systemd – современный способ
Для систем с systemd (Ubuntu 16+, CentOS 7+, Debian 8+):
Добавить сервис в автозапуск:

systemctl enable nginx

Запустить вручную (если еще не запущен):

systemctl start nginx

Проверить статус:

systemctl status nginx

Если после перезагрузки не стартует – проверьте логи:

journalctl -u nginx --no-pager | tail -20




2️⃣ rc.local – олдскульный способ
Если systemd недоступен (старые системы, embedded):
Добавляем команду в /etc/rc.local перед exit 0:

/usr/bin/python3 /opt/my_script.py &

Затем делаем файл исполняемым:

chmod +x /etc/rc.local

Этот метод не идеален, но иногда помогает.



3️⃣ crontab – если сервис не daemonized
Иногда проще запустить процесс через cron, особенно если он не умеет работать в фоне:

crontab -e

Добавляем строку:

@reboot /usr/bin/python3 /opt/my_script.py

Теперь скрипт стартует при загрузке.


📌 Вывод: лучше всего использовать systemd, но в некоторых случаях пригодятся rc.local и cron.

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

👉 @linux_odmin
👍8
📌 Как проверить, кто держит файл открытым в Linux?

Бывало у вас такое? Нужно удалить или переместить файл, а система упорно не даёт это сделать, ссылаясь на то, что файл занят каким-то процессом. Разберёмся, как найти виновника!

🔎 Используем lsof

Команда lsof (list open files) покажет нам, какие процессы держат файл:


lsof /путь/к/файлу


Если у вас её нет, установите:
- Debian/Ubuntu: sudo apt install lsof
- RHEL/CentOS: sudo yum install lsof
- Arch: sudo pacman -S lsof

🔥 Освобождаем файл

Допустим, мы нашли процесс, который держит файл. Теперь его можно завершить:


kill -9 PID


Где PID — идентификатор процесса, который мы узнали через lsof.

💡 Альтернативный вариант — fuser

Ещё один способ:


fuser -v /путь/к/файлу


А чтобы принудительно закрыть процесс, можно выполнить:


fuser -k /путь/к/файлу


⚠️ Будьте осторожны с kill -9 и fuser -k, особенно если работа идёт на продакшн-сервере!

А вы часто сталкиваетесь с такими ситуациями? Как обычно решаете проблему? Пишите в комментариях! 💬

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

👉 @linux_odmin
👍3😱1
🚀 Как правильно чистить /var/log в Linux?

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

🛑 Ошибка новичков – просто удалить файлы из /var/log/. Да, так освободится место, но службы, использующие логи, могут сломаться.

Правильные способы очистки:

🔹 Используем logrotate
Это стандартный инструмент для управления логами в Linux. Настройки хранятся в /etc/logrotate.conf и /etc/logrotate.d/. Можно настроить автоудаление старых логов:

sudo nano /etc/logrotate.conf

Добавляем:

/var/log/*.log {
daily
rotate 7
compress
missingok
notifempty
}

Это означает: чистим ежедневно, храним 7 копий, сжимаем старые файлы.

🔹 Очистка логов вручную
Если нужно срочно освободить место, используем:

sudo truncate -s 0 /var/log/syslog
sudo truncate -s 0 /var/log/auth.log

Эта команда обнуляет файлы, не удаляя их.

🔹 Удаление старых логов
Можно удалить файлы старше 7 дней:

sudo find /var/log -type f -name "*.log" -mtime +7 -delete


📢 А как вы чистите логи? Используете logrotate или предпочитаете скрипты? Делитесь в комментариях! 👇

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

👉 @linux_odmin
👍5
🔥 Оптимизация скорости загрузки Linux: Ускоряем boot! 🚀

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

1️⃣ Анализируем время загрузки
Используем команду:

systemd-analyze

Она покажет общее время загрузки. А чтобы увидеть, какие службы тормозят запуск:

systemd-analyze blame

Отключите ненужные службы командой:

sudo systemctl disable <service>


2️⃣ Отключаем графический режим (если не нужен)
Если сервер работает без GUI, лучше отключить:

sudo systemctl set-default multi-user.target

А если он всё же включён, можно попробовать легковесные дисплейные менеджеры, например lightdm вместо gdm.

3️⃣ Оптимизируем загрузчик
Редактируем GRUB:

sudo nano /etc/default/grub

Убираем GRUB_TIMEOUT=5 (ставим 1-2 секунды) и добавляем параметр quiet для ускорения загрузки. Затем применяем:

sudo update-grub


4️⃣ Используем Parallel Boot
Добавляем в /etc/systemd/system.conf:

DefaultTimeoutStartSec=10s
DefaultTimeoutStopSec=10s

Это сократит таймауты при запуске и остановке сервисов.

5️⃣ Чистим ненужные модули
Проверяем загружаемые модули:

lsmod

Отключаем ненужные в /etc/modprobe.d/blacklist.conf:

blacklist модуль_название


📢 А у вас долго грузится Linux? Какие методы ускорения помогли вам? Пишите в комментариях!

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

👉 @linux_odmin
👍31
🔧 Автоматизация обновлений пакетов в Linux 🛠️

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

1️⃣ Автообновления в Debian/Ubuntu
Можно настроить unattended-upgrades, чтобы система сама обновляла пакеты:

Установка:

sudo apt update && sudo apt install unattended-upgrades

Включаем автоматическое обновление:

sudo dpkg-reconfigure unattended-upgrades

Далее следуем инструкциям, включаем обновления, и всё!

🔹 Файл конфигурации: /etc/apt/apt.conf.d/50unattended-upgrades
🔹 Логи: /var/log/unattended-upgrades/

2️⃣ Автообновления в CentOS/RHEL/AlmaLinux/Rocky
Здесь нам поможет пакет dnf-automatic:

Установка:

sudo dnf install dnf-automatic -y

Настройка:
Редактируем файл /etc/dnf/automatic.conf
- Ищем строку apply_updates = no
- Меняем на apply_updates = yes

Запускаем сервис:

sudo systemctl enable --now dnf-automatic.timer

🔹 Логи: /var/log/dnf.rpm.log

3️⃣ Обновления по расписанию (Crontab)
Если не хочется ставить дополнительные пакеты, можно сделать простенький cron-запуск:

Пример для Debian/Ubuntu:

echo "0 3 * * * root apt update -y && apt upgrade -y" | sudo tee /etc/cron.d/autoupdate

Этот скрипт будет обновлять систему каждую ночь в 3 часа.


⚠️ Важно:
- Если обновления критичны, тестируйте их сначала на тестовой машине.
- Следите за логами, чтобы не пропустить проблемы.
- Иногда автообновления могут сломать что-то важное (особенно на серверах с нестандартными конфигурациями).

А вы используете автообновления на своих серверах? Или предпочитаете всё делать руками? 💬 Пишите в комментах!

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

👉 @linux_odmin
👍4🤔1
🚀 Подборка полезных IT каналов в Max


Системное администрирование, DevOps 📌

https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.

1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌
https://max.ru/cpp_lib Библиотека C/C++ разработчика

Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика

Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика

GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных

Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков

Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов

Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻

Шутки программистов 📌
https://max.ru/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free

Книги, статьи для дизайнеров 📌
https://max.ru/odesigners Статьи, книги для дизайнеров

Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике

Вакансии 📌
https://max.ru/progjob Вакансии в IT

Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных


Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
💩4🤣1
🛠️ Как исправить "Read-only file system" в Linux?

Столкнулись с ошибкой Read-only file system? Это может случиться из-за внезапного отключения питания, сбоев файловой системы или аппаратных проблем. Как исправить?

🔹 Проверяем логи:

dmesg | tail -50
journalctl -xe

Ищем ошибки типа EXT4-fs error или Remounting filesystem read-only.

🔹 Проверяем монтирование:

mount | grep ro

Если / или нужный раздел примонтирован с ro, значит, система автоматически защитила его от записи.

🔹 Пробуем перемонтировать:

mount -o remount,rw /

Если сработало — отлично. Если нет, едем дальше.

🔹 Проверяем файловую систему:

fsck -y /dev/sdX

Замените sdX на проблемный раздел (df -h поможет определить его). Важно! Лучше выполнять из live-системы или в режиме восстановления.

🔹 Железные проблемы:
Если ошибки указывают на сбой диска (bad sectors), стоит проверить SMART:

smartctl -a /dev/sdX

Много секторов Reallocated, Pending, Offline Uncorrectable? Диск под замену!

Сталкивались с таким? Как решали? Делитесь в комментариях!


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

👉 @linux_odmin
👍2
🖥️ Как работает KVM: базовое введение в виртуализацию

Если вы еще не использовали KVM, самое время попробовать! Это встроенная в ядро Linux технология виртуализации, которая позволяет запускать виртуальные машины без установки дополнительных гипервизоров.

🔹 Что нужно для работы KVM?
- 64-битный процессор с поддержкой VT-x (Intel) или AMD-V (AMD).
- Установленные пакеты:

apt install qemu-kvm libvirt-daemon-system virt-manager

- Проверьте поддержку аппаратной виртуализации:

egrep -c '(vmx|svm)' /proc/cpuinfo

Если результат 0 — железо не поддерживает виртуализацию.

🔹 Создание первой виртуальной машины
Используем GUI-интерфейс virt-manager или команду:

virt-install --name testvm --ram 2048 --vcpus 2 --disk size=20 --os-variant ubuntu20.04 --cdrom /path/to/iso

После установки можно управлять машиной через virsh:

virsh list --all
virsh start testvm
virsh shutdown testvm

🔹 Почему KVM лучше?
- Интеграция в ядро Linux
- Поддержка live-миграции
- Высокая производительность
- Простота использования

Вы уже используете KVM? Или предпочитаете VirtualBox, VMware? Давайте обсудим! 🚀

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

👉 @linux_odmin
👍4
🔥 Обнаружение и устранение утечек памяти в Linux 🔥

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

🔍 Как понять, что память утекает?
Частые признаки:
Постепенный рост потребления RAM процессом
ОЗУ забивается, а swap активно используется
Система тормозит, перезапуск помогает, но ненадолго

🛠 Проверяем потребление памяти

🔹 Команда top или htop
Сортируем по памяти (Shift + M в top):

top

или

htop


🔹 Смотрим самые "прожорливые" процессы

ps aux --sort=-%mem | head -10


🔹 Слежка за конкретным процессом

pidstat -r -p <PID> 5

Замените <PID> на ID подозрительного процесса.

🔎 Поиск утечек памяти

🔹 Используем pmap
Показывает детали по памяти процесса:

pmap -x <PID>


🔹 Тестируем valgrind (для C/C++ программ)
Если пишете на C/C++, проверяйте утечки так:

valgrind --leak-check=full ./your_program


🔹 Проверяем с smem
Анализ потребления памяти всеми процессами:

smem -t -k | head -20


🔥 Как предотвратить утечки?
Регулярно перезапускайте сервисы (systemctl restart your_service)
Мониторьте память с prometheus + grafana
Используйте systemd с ограничениями на RAM:

[Service]
MemoryMax=500M


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

👉 @linux_odmin
👍4
🔥 Защита SSH: 5 простых шагов для безопасного сервера

Привет, админы! Сегодня разберёмся, как защитить SSH от взломов и брутфорса. Это критично для любого сервера, ведь атаки на 22-й порт идут постоянно. Держим систему в безопасности! 🛡️

1️⃣ Меняем стандартный порт
По умолчанию SSH слушает 22-й порт, который атакуют боты. Меняем его:

sudo nano /etc/ssh/sshd_config

Находим строку:

#Port 22

Заменяем, например, на:

Port 2222

Сохраняем и перезапускаем SSH:

sudo systemctl restart sshd

Теперь подключаться будем так:

ssh -p 2222 user@server


2️⃣ Запрещаем вход по паролю
Используем только ключи для входа:

PasswordAuthentication no

Чтобы изменения применились:

sudo systemctl restart sshd

Перед этим убедитесь, что у вас уже настроен SSH-ключ!

3️⃣ Ограничиваем доступ по IP
Если у вас статический IP, можно запретить подключение от всех, кроме своего IP:

sudo nano /etc/hosts.allow

Добавляем строку:

sshd: 192.168.1.100

А в /etc/hosts.deny запрещаем остальным:

sshd: ALL


4️⃣ Включаем Fail2Ban
Этот инструмент автоматически блокирует IP-адреса после нескольких неудачных попыток входа:

sudo apt install fail2ban -y

Настраиваем фильтр для SSH:

sudo nano /etc/fail2ban/jail.local

Добавляем:

[sshd]
enabled = true
maxretry = 5
bantime = 3600

Запускаем:

sudo systemctl restart fail2ban


5️⃣ Ограничиваем число подключений
Защитим сервер от DoS-атак с помощью iptables:

sudo iptables -A INPUT -p tcp --syn --dport 2222 -m connlimit --connlimit-above 3 -j REJECT

Это ограничит число одновременных подключений к SSH.

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

👉 @linux_odmin
👍7
🚀 Подборка полезных IT каналов в Max


Системное администрирование, DevOps 📌

https://max.ru/i_odmin Все для системного администратора
https://max.ru/bash_srv Bash Советы
https://max.ru/sysadminof Книги для админов, полезные материалы
https://max.ru/i_odmin_book Библиотека Системного Администратора
https://max.ru/i_devops DevOps: Пишем о Docker, Kubernetes и др.

1C разработка 📌
https://max.ru/odin1c_rus Cтатьи, курсы, советы, шаблоны кода 1С

Программирование C++📌

https://max.ru/cpp_lib Библиотека C/C++ разработчика

Программирование Python 📌
https://max.ru/python_of Python академия.
https://max.ru/BookPython Библиотека Python разработчика

Java разработка 📌
https://max.ru/bookjava Библиотека Java разработчика

GitHub Сообщество 📌
https://max.ru/githublib Интересное из GitHub

Базы данных (Data Base) 📌
https://max.ru/database_info Все про базы данных

Фронтенд разработка 📌
https://max.ru/frontend_1 Подборки для frontend разработчиков

Библиотеки 📌
https://max.ru/programmist_of Книги по программированию
https://max.ru/proglb Библиотека программиста
https://max.ru/bfbook Книги для программистов

Программирование 📌
https://max.ru/bookflow Лекции, видеоуроки, доклады с IT конференций
https://max.ru/itmozg Программисты, дизайнеры, новости из мира IT
https://max.ru/php_lib Библиотека PHP программиста 👨🏼‍💻👩‍💻

Шутки программистов 📌
https://max.ru/itumor Шутки программистов

Защита, взлом, безопасность 📌
https://max.ru/thehaking Канал о кибербезопасности
https://max.ru/xakkep_1 Хакер Free

Книги, статьи для дизайнеров 📌

https://max.ru/odesigners Статьи, книги для дизайнеров

Математика 📌
https://max.ru/Pomatematike Канал по математике
https://max.ru/phismat_1 Обучающие видео, книги по Физике и Математике

Вакансии 📌
https://max.ru/progjob Вакансии в IT

Мир технологий 📌
https://max.ru/mir_teh Канал для любознательных


Бонус 📌
https://max.ru/piterspb_78 Свежие новости Санкт-Петербурга
https://max.ru/mockva_life Свежие новости Москвы
💩4🤬2
🛠️ Как найти и исправить битые симлинки в Linux?

Привет, коллеги! Сегодня поговорим о том, как искать и исправлять битые символьные ссылки в Linux. Если в системе есть сломанные ссылки, это может привести к ошибкам в работе приложений и скриптов.

🔍 Как найти битые симлинки?
Используем команду find:

find / -xtype l 2>/dev/null

Она покажет все битые (неработающие) симлинки в системе. Если нужно искать только в определённой директории, указываем путь, например:

find /home -xtype l


🛠 Удаление всех битых ссылок:
Если нужно массово удалить сломанные ссылки, используем:

find / -xtype l -delete

⚠️ Осторожно! Перед удалением лучше проверить список, чтобы случайно не снести нужное.

🔄 Как исправить битый симлинк?
Если нашли сломанную ссылку, можно удалить её и создать заново. Допустим, у нас есть сломанный симлинк /usr/bin/python, который должен вести на /usr/bin/python3:

rm /usr/bin/python
ln -s /usr/bin/python3 /usr/bin/python


🔥 Полезный трюк: Проверка всех симлинков в системе
Хотите узнать, какие симлинки куда ведут? Запускаем:

find / -type l -exec ls -l {} +


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

👉 @linux_odmin
2🔥2
📌 5 полезных команд для диагностики сети в Linux 🌐

Привет, админы! Сегодня покажу вам 5 мощных команд, которые помогут быстро диагностировать проблемы с сетью в Linux. 🚀

1️⃣ ping – проверяем доступность хоста

ping -c 4 google.com

Отправляет 4 пакета на google.com и показывает, есть ли потери. Если пинг не проходит — проблемы с маршрутизацией или DNS.

2️⃣ traceroute – отслеживаем маршрут пакетов

traceroute google.com

Выводит список узлов, через которые проходит трафик. Полезно, если соединение нестабильное.

3️⃣ netstat / ss – смотрим открытые соединения

netstat -tulnp # для старых систем
ss -tulnp # альтернатива

Отображает открытые порты, какие процессы их используют и какие соединения установлены.

4️⃣ dig – проверяем работу DNS

dig google.com

Показывает IP-адреса и DNS-записи домена. Если резолвинг не работает — проблема в DNS.

5️⃣ tcpdump – анализируем сетевой трафик

tcpdump -i eth0 port 80

Фильтрует HTTP-трафик на интерфейсе eth0. Можно использовать для отладки запросов.

Эти команды - must-have для любого админа! Какие из них используете чаще всего? Делитесь в комментариях! 🔥

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

👉 @linux_odmin
👍5