🔥 Защита SSH: 5 простых шагов для безопасного сервера
Привет, админы! Сегодня разберёмся, как защитить SSH от взломов и брутфорса. Это критично для любого сервера, ведь атаки на 22-й порт идут постоянно. Держим систему в безопасности! 🛡️
1️⃣ Меняем стандартный порт
По умолчанию SSH слушает 22-й порт, который атакуют боты. Меняем его:
Находим строку:
Заменяем, например, на:
Сохраняем и перезапускаем SSH:
Теперь подключаться будем так:
2️⃣ Запрещаем вход по паролю
Используем только ключи для входа:
Чтобы изменения применились:
Перед этим убедитесь, что у вас уже настроен SSH-ключ!
3️⃣ Ограничиваем доступ по IP
Если у вас статический IP, можно запретить подключение от всех, кроме своего IP:
Добавляем строку:
А в
4️⃣ Включаем Fail2Ban
Этот инструмент автоматически блокирует IP-адреса после нескольких неудачных попыток входа:
Настраиваем фильтр для SSH:
Добавляем:
Запускаем:
5️⃣ Ограничиваем число подключений
Защитим сервер от DoS-атак с помощью iptables:
Это ограничит число одновременных подключений к SSH.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, админы! Сегодня разберёмся, как защитить 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
🛠️ Как найти и исправить битые симлинки в Linux?
Привет, коллеги! Сегодня поговорим о том, как искать и исправлять битые символьные ссылки в Linux. Если в системе есть сломанные ссылки, это может привести к ошибкам в работе приложений и скриптов.
🔍 Как найти битые симлинки?
Используем команду
Она покажет все битые (неработающие) симлинки в системе. Если нужно искать только в определённой директории, указываем путь, например:
🛠 Удаление всех битых ссылок:
Если нужно массово удалить сломанные ссылки, используем:
⚠️ Осторожно! Перед удалением лучше проверить список, чтобы случайно не снести нужное.
🔄 Как исправить битый симлинк?
Если нашли сломанную ссылку, можно удалить её и создать заново. Допустим, у нас есть сломанный симлинк
🔥 Полезный трюк: Проверка всех симлинков в системе
Хотите узнать, какие симлинки куда ведут? Запускаем:
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, коллеги! Сегодня поговорим о том, как искать и исправлять битые символьные ссылки в 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 – проверяем доступность хоста
Отправляет 4 пакета на
2️⃣ traceroute – отслеживаем маршрут пакетов
Выводит список узлов, через которые проходит трафик. Полезно, если соединение нестабильное.
3️⃣ netstat / ss – смотрим открытые соединения
Отображает открытые порты, какие процессы их используют и какие соединения установлены.
4️⃣ dig – проверяем работу DNS
Показывает IP-адреса и DNS-записи домена. Если резолвинг не работает — проблема в DNS.
5️⃣ tcpdump – анализируем сетевой трафик
Фильтрует HTTP-трафик на интерфейсе
⚡ Эти команды - must-have для любого админа! Какие из них используете чаще всего? Делитесь в комментариях! 🔥
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, админы! Сегодня покажу вам 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
🛠️ Оптимизация
Сегодня расскажу, как управлять журналами в Linux, чтобы они не разрастались до огромных размеров и не забивали диск. Логи — это хорошо, но когда они занимают десятки гигабайт, это уже проблема.
🔍 Проверяем размер логов
Сначала посмотрим, сколько места занимают журналы systemd:
Вы увидите что-то вроде:
Если слишком много, пора чистить!
🗑️ Очищаем журналы
Удаляем все старые логи, оставляя только 500M:
Можно также ограничить по времени, например, оставить только записи за последние 7 дней:
⚙️ Ограничиваем размер логов
Чтобы в будущем избежать разрастания, задаем лимит в
Применяем изменения:
🚀 Итог
Теперь логи не будут бесконтрольно расти, а система останется в порядке.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
journalctl: освобождаем место и ускоряем систему Сегодня расскажу, как управлять журналами в Linux, чтобы они не разрастались до огромных размеров и не забивали диск. Логи — это хорошо, но когда они занимают десятки гигабайт, это уже проблема.
🔍 Проверяем размер логов
Сначала посмотрим, сколько места занимают журналы systemd:
journalctl --disk-usage
Вы увидите что-то вроде:
Archived and active journals take up 2.3G in total.
Если слишком много, пора чистить!
🗑️ Очищаем журналы
Удаляем все старые логи, оставляя только 500M:
journalctl --vacuum-size=500M
Можно также ограничить по времени, например, оставить только записи за последние 7 дней:
journalctl --vacuum-time=7d
⚙️ Ограничиваем размер логов
Чтобы в будущем избежать разрастания, задаем лимит в
/etc/systemd/journald.conf:
[Journal]
SystemMaxUse=500M
SystemMaxFileSize=100M
Применяем изменения:
systemctl restart systemd-journald
🚀 Итог
Теперь логи не будут бесконтрольно расти, а система останется в порядке.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍8
🔥 Разбираем
Привет, коллеги! Сегодня разберем инструмент, который должен быть в арсенале каждого линукс-админа - htop. Это мощная альтернатива
📌 Почему
✅ Цветовая схема - информация подается визуально, что помогает быстрее анализировать нагрузку.
✅ Гибкость - можно настроить отображение колонок, фильтровать процессы, сортировать их по различным параметрам.
✅ Управление процессами -
✅ Горячие клавиши - удобный интерфейс для быстрого взаимодействия.
🛠 Установка
На большинстве дистрибутивов
🔹 Debian/Ubuntu:
🔹 CentOS/RHEL:
🔹 Arch Linux:
🚀 Основные фишки
🔸 Сортировка процессов - нажмите
🔸 Завершение процессов - выделяем процесс, жмем
🔸 Дерево процессов -
🔸 Поиск процесса -
🔸 Изменение приоритета (nice) -
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
htop: Альтернатива top для мониторинга системы Привет, коллеги! Сегодня разберем инструмент, который должен быть в арсенале каждого линукс-админа - htop. Это мощная альтернатива
top, которая делает мониторинг ресурсов системы удобным и наглядным. 📌 Почему
htop круче top?✅ Цветовая схема - информация подается визуально, что помогает быстрее анализировать нагрузку.
✅ Гибкость - можно настроить отображение колонок, фильтровать процессы, сортировать их по различным параметрам.
✅ Управление процессами -
htop позволяет не только наблюдать, но и управлять процессами (убивать, приостанавливать, менять приоритет и т.д.). ✅ Горячие клавиши - удобный интерфейс для быстрого взаимодействия.
🛠 Установка
На большинстве дистрибутивов
htop уже есть в репозиториях: 🔹 Debian/Ubuntu:
sudo apt install htop
🔹 CentOS/RHEL:
sudo yum install htop
🔹 Arch Linux:
sudo pacman -S htop
🚀 Основные фишки
🔸 Сортировка процессов - нажмите
F6, чтобы выбрать критерий сортировки. 🔸 Завершение процессов - выделяем процесс, жмем
F9, выбираем сигнал. 🔸 Дерево процессов -
F5 (отображает родственные связи между процессами). 🔸 Поиск процесса -
F3, вводим имя процесса. 🔸 Изменение приоритета (nice) -
F7 / F8 для повышения/понижения приоритета. htop - это удобный инструмент для мониторинга и управления процессами в Linux. #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍1🤣1
🔥 Как быстро поднять временный веб-сервер в Linux?
Бывают ситуации, когда нужно быстро расшарить файлы или запустить простой веб-сервер без установки тяжелых пакетов. Например, передать файл коллеге или проверить верстку локально. В таких случаях можно воспользоваться встроенными средствами.
📌 Python
Если у вас установлен Python, запустить HTTP-сервер можно одной командой:
Теперь ваш сервер доступен по адресу
Если хотите раздавать файлы из конкретной директории:
📌 PHP
Для тех, у кого есть PHP:
Он тоже запустит веб-сервер на 8080 порту.
📌 BusyBox
Если на сервере установлен
📌 Node.js
У кого есть
или установить глобально:
💡 Все эти методы хороши для временных решений. Но если вам нужен стабильный веб-сервер, лучше использовать NGINX или Apache.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Бывают ситуации, когда нужно быстро расшарить файлы или запустить простой веб-сервер без установки тяжелых пакетов. Например, передать файл коллеге или проверить верстку локально. В таких случаях можно воспользоваться встроенными средствами.
📌 Python
Если у вас установлен Python, запустить HTTP-сервер можно одной командой:
python3 -m http.server 8080
Теперь ваш сервер доступен по адресу
http://localhost:8080/. Если хотите раздавать файлы из конкретной директории:
python3 -m http.server 8080 --directory /путь/к/папке
📌 PHP
Для тех, у кого есть PHP:
php -S 0.0.0.0:8080
Он тоже запустит веб-сервер на 8080 порту.
📌 BusyBox
Если на сервере установлен
busybox, можно использовать его встроенный HTTP-сервер:
busybox httpd -f -p 8080 -h /путь/к/каталогу
📌 Node.js
У кого есть
node, можно использовать http-server:
npx http-server -p 8080
или установить глобально:
npm install -g http-server
http-server -p 8080
💡 Все эти методы хороши для временных решений. Но если вам нужен стабильный веб-сервер, лучше использовать NGINX или Apache.
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍2
🔐 Как заставить пользователя сменить пароль при следующем входе в Linux
Привет, коллеги! Сегодня разберем полезный трюк: как заставить пользователя сменить пароль при следующем входе в систему. Это особенно актуально при создании новых учетных записей или после сброса пароля.
🔸 1. Используем команду
Самый простой способ принудительно заставить пользователя сменить пароль — это выполнить команду:
🔹 Что делает эта команда?
Она устанавливает дату последней смены пароля в 0, что вынуждает пользователя изменить его при следующем входе.
🔸 2. Используем команду
Команда
🔹 Как это работает?
Флаг
🔸 3. Политика паролей для всех пользователей
Если тебе нужно настроить принудительную смену пароля через определенное время для всех пользователей, используй:
🔹 Что делает этот параметр?
Устанавливает срок действия пароля в 30 дней. После истечения этого срока система потребует его смены.
🔸 4. Проверка настроек пароля пользователя
Чтобы убедиться, что правило применилось, можно выполнить:
Это покажет дату последней смены пароля, срок его действия и дату истечения.
🔸 5. Блокировка входа без смены пароля
Если ты хочешь полностью заблокировать пользователя, пока он не изменит пароль, можешь сначала принудительно истечь срок пароля:
А затем снова разрешить вход после смены пароля:
🔥 Итог
🔹 Используй
🔹 Проверяй настройки командой
🔹 Настраивай срок действия пароля глобально через
🔹 При необходимости блокируй вход до смены пароля.
Применяй эти методы и будь уверен в безопасности системы! 🔒
💬 Делись своим опытом в комментариях! Какие еще трюки используешь для управления паролями?
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, коллеги! Сегодня разберем полезный трюк: как заставить пользователя сменить пароль при следующем входе в систему. Это особенно актуально при создании новых учетных записей или после сброса пароля.
🔸 1. Используем команду
passwd Самый простой способ принудительно заставить пользователя сменить пароль — это выполнить команду:
passwd --expire username
🔹 Что делает эта команда?
Она устанавливает дату последней смены пароля в 0, что вынуждает пользователя изменить его при следующем входе.
🔸 2. Используем команду
chage Команда
chage позволяет гибко управлять политикой паролей. Чтобы заставить пользователя сменить пароль при следующем входе:
chage -d 0 username
🔹 Как это работает?
Флаг
-d 0 сбрасывает дату последней смены пароля, и система требует его обновления при следующем входе. 🔸 3. Политика паролей для всех пользователей
Если тебе нужно настроить принудительную смену пароля через определенное время для всех пользователей, используй:
chage -M 30 username
🔹 Что делает этот параметр?
Устанавливает срок действия пароля в 30 дней. После истечения этого срока система потребует его смены.
🔸 4. Проверка настроек пароля пользователя
Чтобы убедиться, что правило применилось, можно выполнить:
chage -l username
Это покажет дату последней смены пароля, срок его действия и дату истечения.
🔸 5. Блокировка входа без смены пароля
Если ты хочешь полностью заблокировать пользователя, пока он не изменит пароль, можешь сначала принудительно истечь срок пароля:
passwd -l username
А затем снова разрешить вход после смены пароля:
passwd -u username
🔥 Итог
🔹 Используй
passwd --expire username или chage -d 0 username, чтобы заставить пользователя сменить пароль. 🔹 Проверяй настройки командой
chage -l username. 🔹 Настраивай срок действия пароля глобально через
chage -M 30 username. 🔹 При необходимости блокируй вход до смены пароля.
Применяй эти методы и будь уверен в безопасности системы! 🔒
💬 Делись своим опытом в комментариях! Какие еще трюки используешь для управления паролями?
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍6🔥2❤1
🖥️ Как проверить, что cron работает корректно?
Привет, админы! Сегодня разберём важную тему — как убедиться, что
🔎 Проверяем cron пошагово:
1️⃣ Проверяем, работает ли сам демон cron:
Если он не запущен, запускаем:
2️⃣ Смотрим логи cron:
На большинстве дистрибутивов логи находятся в
Если сообщений нет, проверьте, включён ли лог cron в
3️⃣ Запускаем задание вручную
Скопируйте команду из
4️⃣ Добавляем вывод в лог
Иногда cron просто не видит ошибки. Давайте принудительно записывать их в лог:
5️⃣ Проверяем переменные окружения
Cron использует ограниченный
или задаём
6️⃣ Проверяем права и владельца
Скрипт может не запускаться из-за прав доступа. Даем права на исполнение:
Если задание в
💡 Бонус: визуальный мониторинг работы cron
Если вам надо отслеживать выполнение задач в реальном времени, установите
Пользуетесь ли вы чем-то ещё для отладки cron? Делитесь в комментариях! 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, админы! Сегодня разберём важную тему — как убедиться, что
cron действительно выполняет ваши задания. Бывает, что скрипт в crontab прописан, но не работает, и причина может быть неочевидной. 🔎 Проверяем cron пошагово:
1️⃣ Проверяем, работает ли сам демон cron:
systemctl status cron # Для систем с systemd (Ubuntu, Debian)
service cron status # Для старых систем
Если он не запущен, запускаем:
systemctl start cron
2️⃣ Смотрим логи cron:
На большинстве дистрибутивов логи находятся в
/var/log/syslog или /var/log/cron.log:
grep CRON /var/log/syslog
Если сообщений нет, проверьте, включён ли лог cron в
rsyslog.conf.3️⃣ Запускаем задание вручную
Скопируйте команду из
crontab и выполните в терминале, чтобы убедиться, что скрипт сам по себе работает.4️⃣ Добавляем вывод в лог
Иногда cron просто не видит ошибки. Давайте принудительно записывать их в лог:
* * * * * /path/to/script.sh >> /var/log/mycron.log 2>&1
5️⃣ Проверяем переменные окружения
Cron использует ограниченный
PATH. Если скрипт использует внешние команды, указываем полный путь:
/usr/bin/python3 /home/user/myscript.py
или задаём
PATH в начале crontab:
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
6️⃣ Проверяем права и владельца
Скрипт может не запускаться из-за прав доступа. Даем права на исполнение:
chmod +x /path/to/script.sh
Если задание в
crontab -e, убедитесь, что оно прописано под нужным пользователем.💡 Бонус: визуальный мониторинг работы cron
Если вам надо отслеживать выполнение задач в реальном времени, установите
cronitor или healthchecks.io. Эти сервисы сообщат, если задание не отработало. Пользуетесь ли вы чем-то ещё для отладки cron? Делитесь в комментариях! 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍5❤1🔥1
📌 Как быстро посмотреть историю изменений файла в Linux?
Сегодня покажу вам несколько способов, как отследить изменения в файле в Linux. Это может быть полезно для поиска причин ошибок, аудита или простого контроля за конфигурацией.
🔍 1.
Хотите узнать, когда последний раз изменялся файл? Используйте команду:
Вы увидите три временных метки:
- Access (чтение)
- Modify (изменение содержимого)
- Change (изменение метаданных, например, прав)
📝 2.
Для списка файлов в каталоге по дате изменения:
🕵️ 3.
Если у вас есть резервная копия файла, можно сравнить:
📜 4.
Лучший способ отслеживать изменения в важных файлах — использовать
После изменений проверяем разницу:
👀 5.
Если нужно следить за изменением файла в реальном времени, добавляем его в аудит:
А потом смотрим логи:
📢 Какой способ используете вы? Делитесь в комментариях! 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Сегодня покажу вам несколько способов, как отследить изменения в файле в Linux. Это может быть полезно для поиска причин ошибок, аудита или простого контроля за конфигурацией.
🔍 1.
stat — метаданные файла Хотите узнать, когда последний раз изменялся файл? Используйте команду:
stat /etc/nginx/nginx.conf
Вы увидите три временных метки:
- Access (чтение)
- Modify (изменение содержимого)
- Change (изменение метаданных, например, прав)
📝 2.
ls -lt — сортировка по времени Для списка файлов в каталоге по дате изменения:
ls -lt /etc/nginx/
🕵️ 3.
diff — сравнение версий Если у вас есть резервная копия файла, можно сравнить:
diff /etc/nginx/nginx.conf /backup/nginx.conf
📜 4.
git — контроль версий Лучший способ отслеживать изменения в важных файлах — использовать
git:
cd /etc/nginx
git init
git add nginx.conf
git commit -m "Initial version"
После изменений проверяем разницу:
git diff nginx.conf
👀 5.
auditd — мониторинг изменений Если нужно следить за изменением файла в реальном времени, добавляем его в аудит:
auditctl -w /etc/nginx/nginx.conf -p wa -k nginx_conf_change
А потом смотрим логи:
ausearch -k nginx_conf_change --start today
📢 Какой способ используете вы? Делитесь в комментариях! 🚀
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
👍4
🔥 Автоматический перезапуск упавшего сервиса в Linux
Привет, коллеги! Сегодня разберём, как автоматически перезапускать сервис, если он вдруг упал. Это полезно для критичных приложений, которые должны работать 24/7.
📌 Метод 1: systemd (современный способ)
Если ваш сервис управляется
1️⃣ Открываем юнит-файл сервиса:
2️⃣ Добавляем или редактируем секцию
🔹
🔹
3️⃣ Применяем изменения:
📌 Метод 2: Monit (для расширенного контроля)
Если нужен мониторинг с уведомлениями, используем Monit:
1️⃣ Устанавливаем:
2️⃣ Добавляем правило для сервиса:
Пример конфига:
3️⃣ Перезапускаем Monit:
📌 Метод 3: crontab (самый простой способ)
Если сервис падает редко, можно просто проверять его раз в минуту:
⚡ Вывод:
#Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
Привет, коллеги! Сегодня разберём, как автоматически перезапускать сервис, если он вдруг упал. Это полезно для критичных приложений, которые должны работать 24/7.
📌 Метод 1: systemd (современный способ)
Если ваш сервис управляется
systemd, настройте автоматический рестарт: 1️⃣ Открываем юнит-файл сервиса:
sudo nano /etc/systemd/system/имя_сервиса.service
2️⃣ Добавляем или редактируем секцию
[Service]:
[Service]
Restart=always
RestartSec=5
🔹
Restart=always – сервис перезапускается при любой ошибке 🔹
RestartSec=5 – задержка 5 секунд перед рестартом 3️⃣ Применяем изменения:
sudo systemctl daemon-reexec
sudo systemctl restart имя_сервиса
📌 Метод 2: Monit (для расширенного контроля)
Если нужен мониторинг с уведомлениями, используем Monit:
1️⃣ Устанавливаем:
sudo apt install monit # Debian/Ubuntu
sudo yum install monit # CentOS
2️⃣ Добавляем правило для сервиса:
sudo nano /etc/monitrc
Пример конфига:
check process nginx with pidfile /run/nginx.pid
start program = "/bin/systemctl start nginx"
stop program = "/bin/systemctl stop nginx"
if 5 restarts within 5 cycles then unmonitor
3️⃣ Перезапускаем Monit:
sudo systemctl restart monit
📌 Метод 3: crontab (самый простой способ)
Если сервис падает редко, можно просто проверять его раз в минуту:
* * * * * pgrep -x nginx > /dev/null || systemctl restart nginx
⚡ Вывод:
systemd – лучший вариант, Monit подходит для расширенного мониторинга, а cron – для простых случаев. #Linux@linux_odmin #LinuxTips@linux_odmin #Команды@linux_odmin
👉 @linux_odmin
🔥5👍2