Поиск по сайту:

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


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

Почему, потому что если кто-то вошел на сервер как пользователь root, используя тактику перебора через SSH, то подумайте о том, как он уничтожит ваш сервер. Любой пользователь, получивший root-доступ, может делать все, что захочет. Чтобы заблокировать такие SSH-атаки, прочитайте наши следующие статьи, в которых описывается, как защитить серверы от таких атак.

  1. Блокируйте атаки грубой силы SSH-сервера с помощью DenyHosts
  2. Используйте Pam_Tally2 для блокировки и разблокировки неудачных входов в систему SSH
  3. 5 лучших практик по обеспечению безопасности и защиты SSH-сервера

Таким образом, не рекомендуется разрешать прямой вход в систему с правами root через сеанс SSH и рекомендовать создавать учетные записи без полномочий root с помощью sudo . доступ. Всякий раз, когда требуется доступ root, сначала войдите в систему как обычный пользователь, а затем используйте su, чтобы переключиться на пользователя root. Чтобы отключить прямой вход в систему с правами root по SSH, следуйте нашей статье ниже, в которой показано, как отключить и ограничить вход в систему с правами root в SSH.

  1. Отключить root-вход по SSH и ограничить доступ по SSH

Однако в этом руководстве показан простой способ узнать, что когда кто-то вошел в систему как пользователь root или обычный пользователь, ему следует отправить уведомление по электронной почте на указанный адрес электронной почты вместе с IP-адресом. последнего входа в систему. Итак, как только вы узнаете IP-адрес последнего входа в систему, выполненного неизвестным пользователем, вы можете заблокировать SSH-вход с определенного IP-адреса на iptables брандмауэре.

  1. Как заблокировать порт в брандмауэре Iptables

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

Для выполнения этого руководства у вас должен быть доступ к серверу на уровне root и немного знаний редактора nano или vi, а также mailx (Почтовый клиент), установленный на сервере для отправки электронной почты. В зависимости от вашего дистрибутива вы можете установить клиент mailx, используя одну из следующих команд.

В Debian/Ubuntu/Linux Mint
apt-get install mailx
На RHEL/CentOS/Fedora
yum install mailx

Настройка оповещений по электронной почте для входа в систему SSH Root

Теперь войдите в систему как пользователь root и перейдите в домашний каталог пользователя root, введя команду cd /root.

cd /root

Затем добавьте запись в файл .bashrc. Этот файл устанавливает для пользователей локальные переменные среды и выполняет некоторые задачи входа в систему. Например, здесь мы устанавливаем оповещение о входе в систему по электронной почте.

Откройте файл .bashrc с помощью редактора vi или nano. Помните, что .bashrc — это скрытый файл, вы не увидите его, выполнив команду ls -l. Вам нужно использовать флаг -a, чтобы увидеть скрытые файлы в Linux.

vi .bashrc

Добавьте следующую целую строку внизу файла. Обязательно замените «ServerName» на имя хоста вашего Сервера и замените «[email » на свой адрес электронной почты.

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

Сохраните и закройте файл, выйдите из системы и снова войдите в систему. После входа в систему через SSH по умолчанию запускается файл .bashrc, который отправляет вам адрес электронной почты с предупреждением о входе в систему root.

Пример оповещения по электронной почте
ALERT - Root Shell Access (Database Replica) on: Thu Nov 28 16:59:40 IST 2013 tecmint pts/0 2013-11-28 16:59 (172.16.25.125)

Установите оповещения по электронной почте для обычного входа пользователя SSH

Войдите в систему как обычный пользователь (tecmint) и перейдите в домашний каталог пользователя, введя команду cd /home/tecmint/.

cd /home/tecmint

Затем откройте файл .bashrc и добавьте следующую строку в конец файла. Обязательно замените значения, как показано выше.

echo 'ALERT - Root Shell Access (ServerName) on:' `date` `who` | mail -s "Alert: Root Access from `who | cut -d'(' -f2 | cut -d')' -f1`" [email 

Сохраните и закройте файл, выйдите из системы и войдите снова. Как только вы снова войдете в систему, запустится файл .bashrc, который отправит вам адрес электронной почты с предупреждением о входе пользователя.

Таким образом, вы можете настроить оповещение по электронной почте для любого пользователя, чтобы получать оповещения о входе в систему. Просто откройте файл .bashrc пользователя, который должен находиться в домашнем каталоге пользователя (т. е. /home/username/.bashrc) и настройте оповещения о входе в систему, как описано выше.