Как настроить оповещения по электронной почте о входе по SSH на Linux

Источник: «How To Get Email Alerts for SSH Login on Linux Server»
Мониторинг входов в SSH на Linux-сервере очень важен для обеспечения безопасности системы. Одним из способов информирования об активности входа в систему является настройка оповещений по электронной почте при каждом входе в систему через SSH. В этом руководстве мы покажем Вам, как настроить сервер Linux на отправку уведомлений по электронной почте при входе в систему по протоколу SSH.

Шаг 1: Установка почтовой утилиты

Во-первых, необходимо установить почтовую утилиту, которая позволит вашему серверу отправлять электронные письма. Мы будем использовать для этой цели утилиту mailutils. Чтобы установить mailutils на систему на базе Ubuntu или Debian, выполните следующую команду:

sudo apt-get update
sudo apt-get install -y mailutils

В системах на базе CentOS, RHEL или Fedora используйте следующую команду:

sudo yum install -y mailx

Шаг 2: Настройка почтового скрипта

Далее создайте сценарий, который будет отправлять по электронной почте уведомление с данными для входа в систему SSH. Создайте новый файл с именем ssh_login_notify.sh в каталоге /usr/local/bin:

sudo nano /usr/local/bin/ssh_login_notify.sh

Добавьте в скрипт следующие строки:

#!/bin/bash

# Измените это на адрес вашей электронной почты
recipient="your-email@example.com"
subject="SSH Login Alert"
message="SSH login detected on $(hostname) at $(date) by user $(whoami) from $(echo $SSH_CONNECTION | awk '{print $1}')"

echo "$message" | mail -s "$subject" "$recipient"

Замените your-email@example.com на свой адрес электронной почты. Сохраните и выйдите из редактора.

Сделайте скрипт исполняемым:

sudo chmod +x /usr/local/bin/ssh_login_notify.sh

Шаг 3: Настройте SSH на запуск скрипта при входе в систему

Отредактируйте файл конфигурации SSH "/etc/ssh/sshd_config", настройки запуска почтового сценария при каждом входе в систему:

sudo nano /etc/ssh/sshd_config

Добавьте в конец файла следующую строку:

ForceCommand /usr/local/bin/ssh_login_notify.sh; $SSH_ORIGINAL_COMMAND

Сохраните и выйдите из редактора.

Перезапустите службу SSH, чтобы применить изменения:

sudo systemctl restart sshd

Теперь вы будете получать уведомление по электронной почте всякий раз, когда кто-то входит на ваш сервер по протоколу SSH.

Используемые команды

Заключение

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

Следует иметь в виду, что, хотя этот метод полезен для мониторинга активности входа в систему, очень важно поддерживать общую безопасность сервера, поддерживая систему в актуальном состоянии, используя надёжные пароли, включив аутентификацию на основе ключей и настроив межсетевые экраны. Кроме того, можно применять и другие меры безопасности, например, использовать системы обнаружения вторжений (IDS) и системы предотвращения вторжений (IPS), настроить двухфакторную аутентификацию (2FA) для входа по SSH, а также регулярно проводить аудит настроек безопасности сервера.

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

Мы надеемся, что это руководство помогло вам настроить оповещения по электронной почте о входе в систему по протоколу SSH на вашем Linux-сервере. Если у Вас возникли вопросы, замечания или предложения по улучшению, пожалуйста, поделитесь своими мыслями с нами. Ваши отзывы бесценны для нас, они помогают нам создавать более качественный и информативный контент для наших пользователей.

Дополнительные материалы

Предыдущая Статья

Поиск в PDF-файлах с помощью MySQL и Laravel

Следующая Статья

Понимание flatMap() и других массивов TypeScript