Реализуем в freebsd ssh мониторинг авторизаций сессий.
В целях безопасности, на некоторые сервера во внешнем мире, добавляю мониторинг ssh авторизация на сервере.
# more /root/monitoring_ssh.sh #!/bin/sh COM=`echo $SSH_CONNECTION | awk '{print $1}'` DOV="192.168.1.1" DOV1="192.168.2.1" DOV2="192.168.1.15" if [ "$COM" != "$DOV" ] && [ "$COM" != "$DOV1" ] && [ "$COM" != "$DOV2" ]; then echo -e "SSH авторизация на сервере $(hostname -f)\n\nДата:\t\t$(date +%d.%m.%Y\ %H:%M:%S)\nУдаленная машина :\t$SSH_CONNECTION\nПользователь:\t\t$USER\nShell:\t\t$SSH_TTY" | mail -s "авторизация ssh на сервере $(hostname -f) user@mail.ru fi
Добавим к окружению ssh наш скрипт.
# echo "/root/monitoring_ssh.sh" > /etc/ssh/sshrc
Перезагрузим ssh
# /etc/rc.d/sshd restart
После, мы пытаемся авторизоваться на сервере через ssh.
Если авторизация происходит с не доверительных ип адреса (DOV), то получим такое сообщение на электронную почту.
SSH авторизация на сервере fryaha_ru Дата: 11.08.2015 16:51:05 Удаленная машина: 192.168.2.2 41974 ип адрес сервер 22 Пользователь: root Shell: /dev/pts/1
Вот и все, теперь если враги все-таки подобрали пароль к ssh серверу, то вы обязательно об этом узнаете.
Но лучше конечно, ssh разрешать только для статических ип а всем остальным запрет.
Либо повесить на сторонний порт ssh.
Вот и вся настройка в системе freebsd ssh мониторинг авторизаций сессий.
/monitoring_ssh.sh: 7: Syntax error: Unterminated quoted string