У меня было несколько проблем безопасности с моим сервером, потому что несколько пользователей SSH вызывали проблемы.
Таким образом, я хотел бы:
ssh демон, sshd
, имеет большую часть этого, встроил и включил. Вот, некоторые демонстрационные строки от /var/log/secure
на моей машине (имена и измененные IP-адреса):
Sep 7 08:34:25 myhost sshd[6127]: Failed password for illegal user root from 62.75.999.999 port 52663 ssh2
Sep 7 08:34:26 myhost sshd[7253]: User root not allowed because listed in DenyUsers
Sep 7 08:34:28 myhost sshd[7253]: Failed password for illegal user root from 62.75.999.999 port 53393 ssh2
Sep 7 11:55:18 myhost sshd[11672]: Accepted password for gooduser from 98.999.26.41 port 43104 ssh2
Sep 7 23:01:28 myhost sshd[22438]: Did not receive identification string from 999.56.32.999
Sep 8 06:31:30 myhost sshd[21814]: Accepted password for gooduser from 98.999.26.41 port 5978 ssh2
Этот пример показывает пару попыток кого-то к ssh в эту машину как корень - обоим отказали, потому что корень запрещается. Это также показывает, что успешный вход в систему пользователем назвал "gooduser".
Для точной настройки, что Вы видите и в который файла читайте больше в sshd_config странице справочника - конкретно опции для LogLevel и SyslogFacility.
Один очень полный способ отследить пользователей состоит в том, чтобы использовать auditd. Это - уровень ядра способ отследить независимо от того, что необходимо контролировать. Это должно быть связано Сервером Ubuntu и не уже работая, должно быть startable с sudo service auditd start
.
Существует много примеров конфигурации для него под/usr/share/doc/auditd/или чем-то подобным этому, и конечно если Вы Google для auditd учебного руководства, Вы будете вознаграждены многими, многими учебными руководствами.
Отчеты, сгенерированные auditd, хранятся в/var/log/audit/каталоге. Они также могут быть проанализированы к более человекочитаемой форме с инструментами как aureport и ausearch, также должен уже быть связан Сервером Ubuntu.
Я не выделил бы ssh-учетные-записи, особенно людям типа групп дистрибутива.
Вот несколько вещей:
Из истории файлы могут быть объединены в ударе?
Insert the command shopt -s histappend in your .bashrc.
This will append to the history file instead of overwriting it.
Also in your .bashrc, insert
PROMPT_COMMAND="$PROMPT_COMMAND;history -a; history -n"
and the history file will be re-written and re-read each time
bash shows the prompt.
Развитие того, на что ответил Doug Harris (и только обращение к части Вашего вопроса - это, кажется, как я работаю), пакет Logwatch пошлет Вам по электронной почте ежедневную сводку многих журналов сервера, включая журнал SSHd. Я получаю сводку того, кто успешно зарегистрировал на пути SSH, сколько раз, и от где, а также какой дюйм/с пытался войти в систему неудачно и какие учетные данные они использовали. Это становится длинным, если кто-то пробует нападение SSH "в лоб" на хост, где я позволяю аутентификацию по паролю (я стараюсь избегать этого, одобряя ключи RSA вместо этого, но клиент всегда прав и не всегда понимает аутентификацию с открытым ключом. Так или иначе.)
Для установки Logwatch (который является в основном просто набором фильтров Perl для переваривания различных форматов журнала) на Ubuntu использовать apt-get install logwatch
и затем редактирование /etc/cron.daily/00logwatch
, замена --output mail
с --mailto you@yourdomain.com
. Вы получите один день. Можно добавить больше флагов для настройки, какие журналы Logwatch на самом деле читает.