Linux посмотреть попытки авторизации

Обновлено: 03.07.2024

Короче, продолжаем. Теперь я для вас подготовил некую уже не маленькую статью, на тему мониторинга Linux систем. В некотором роде эта статья мне будет служить в качестве мини-справочника по необходимым командам, для того, чтобы можно было понимать, все ли нормально с системой. Поговорим об основных командах типа top/htop/uptime/ps, о том где какие логи лежат и что они означают и так далее. Короче, начнем..

Рассмотрим пример стандартных файлов в директории /var/log/, на примере ОС Debian Linux 7:

Теперь приведем пример, что когда нам понадобится..

На этом про логи, я думаю, достаточно..

Иногда бывает полезно выявлять факты изменения файлов в такой директории, как /etc, особенно, если администрированием сервера занимайтесь не только вы. Сделать это все можно при помощи команды find с параметром -mtime. Например, следующая команда покажет файлы, которые были изменение в течении последних двух суток:

Более подробно поиск по различным временам описан тут.

Вы наверное часто обращали внимание на такую строчку, как LoadAverage, которая показывает числа. Собственно эти числа отображают число блокирующих процессов на исполнение в определенный интервал времени, а именно 1 минута, 5 минут и 15 минут. Под блокирующим процессом подразумевается процесс, который ждет ресурсы для того, чтобы продолжить свою работу, а под ресурсами подразумевается ЦП, дисковая подсистема ввода вывода и сетевая подсистема ввода/вывода.

Не обязательно быть специалистом, чтобы понимать, что высокие показатели LA говорят о том, что система не справляется, например эти цифры могут говорить об аппаратных проблемах.

Чтобы посмотреть эти показания, достаточно воспользоваться командой top или uptime (о top мы поговорим несколько позднее)

Большинство (как и я ) будут думать, что чем меньше эти числа, тем лучше, но нужно понимать, когда бить тревогу, если значения этих цифр начнет расти.

imageload average = 1.70

load average = 0.50 load average = 1.00 load average = 1.70

И имейте в виду, пример выше это пример для одноядерного процессора. Если у вас четырехядерный процессор или два двухядерных процессора, то идеальным LA для вас будет 2,00 или 2,80.

Теперь подытожим эту тему,

  1. Какое значение лучше смотреть? За минуту, 5 минут или 15 минут?
    Если на одноядерном процессоре LA за 5 или 15 минут, то следует на это обратить внимание
  2. Как понять сколько процессоров в системе?
    ну тут все просто, нужно отфильтровать grep-ом вывод cpuinfo:

Собственно. чтобы увидеть эти показатели, понять, где у нас есть проблемы, и вообще получить информацию о процессах воспользуемся утилитой top:

Рассмотрим по порядку, что есть что:

Что нам тут интересно? Да интересно почти все :). Например, статистика CPU: высокие значения (более 80%) параметра wa говорят о простое из-за ввода вывода, что может говорить о проблемах с HDD. Кстати, если сложить все эти значения, то у вас получится 100%.

Что мы там можем делать в утилите top?

  1. Нажав на клавишу k мы можем убить процесс, достаточно будет ввести его PID
  2. нажав на клавишу u и введя имя пользователя мы можем увидеть все процессы определенного пользователя
  3. нажав на клавишу b или z и работающие процессы будут выделены цветом

Linux htop

Существует еще генератор снимков процессов ps. Подробнее о нем можно почитать его man, а ниже я приведу примеры использования этой команды:

  • при помощи следующей команды мы можем выяснить, выполняется ли в данный момент программа apache:
  • набрав в терминале следующую команду мы можем получить всю информацию о всех процессах всех пользователей в системе:

Этого я думаю достаточно. Есть еще масса интересных примеров на просторах интернета, например тут.

начиная писать эту статью, я не думал что все получится на столько громоздко, поэтому еще будет как минимум вторая или третья часть средств мониторинга linux систем.

В случае если сервер на Linux был взломан, возникает необходимость собрать информацию, например, получить время и IP адреса последних SSH сессий. Это может помочь не только установить источник опасности, но и, например, ответить на вопрос: был ли подобран пароль (или скомпрометирован сертификат) SSH либо злоумышленник воспользовался уязвимостью программного обеспечения.

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

IP адрес предыдущего подключения по SSH

При каждом подключении по SSH выводится строка с IP, с которого было сделано предыдущее подключение, также показывается дата и время этого подключения:


История IP адресов SSH подключений

Кроме последней сессии, в системе хранится информация обо всех успешных входах за последние месяцы. Эта информация содержится в файле utmp / wtmp. На самом деле, файл utmp могут использовать различные программы (не только SSH), которые хотят сохранить информацию о входе пользователя.

Во многих дистрибутивах имеется файл /var/log/wtmp, куда программы записывают входы в систему. Проверить последние записи можно командой:


Все записи, в которых встречаются IP адреса — были сделаны по SSH подключению.

Записи без IP адресов — это входы пользователей, находящихся непосредственно перед компьютером.


Дополнительно вы можете проверить другие файлы журналов: /var/log/secure (на дистрибутивах на основе RH) или /var/log/auth.log (на дистрибутивах на основе Debian). В этих файлах служба sshd обычно хранит следы сделанных подключений, даже если они не стали результатом успешных входов (как это делают utmp/wtmp, которые сохраняют только информацию об успешных входах).

Служба sshd на IIRC Solaris (которая необязательно является sshd службой OpenSSH) хранит эту информацию в /var/adm/messages.

При этом необходимо помнить, что если атакующий получил доступ с правами суперпользователя, то есть скомпрометирован аккаунт root или другого пользователя с повышенными привилегиями, то все записи в файлах /var/log/wtmp или /var/adm/messages могут быть изменены атакующим. Для защиты от этого необходимо регулярно выгружать журналы в безопасное хранилище.

Как узнать, кто в настоящий момент подключён по SSH

Чтобы увидеть пользователей, вошедших в систему, используйте любую из следующих команд:

Следующие команды также покажут активные SSH сессии — у каждой из них различается набор выводимой информации, поэтому вы можете выбрать ту из них, которая вам больше всего подходит:





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

Основные лог файлы

Все файлы журналов, можно отнести к одной из следующих категорий:

Большинство же лог файлов содержится в директории /var/log .

Для каждого дистрибутива будет отдельный журнал менеджера пакетов.

  • /var/log/yum.log — Для программ установленных с помощью Yum в RedHat Linux.
  • /var/log/emerge.log — Для ebuild -ов установленных из Portage с помощью emerge в Gentoo Linux.
  • /var/log/dpkg.log — Для программ установленных с помощью dpkg в Debian Linux и всем семействе родственных дистрибутивах.

И немного бинарных журналов учета пользовательских сессий.

  • /var/log/lastlog — Последняя сессия пользователей. Прочитать можно командой last .
  • /var/log/tallylog — Аудит неудачных попыток входа в систему. Вывод на экран с помощью утилиты pam_tally2 .
  • /var/log/btmp — Еже один журнал записи неудачных попыток входа в систему. Просто так, на всякий случай, если вы еще не догадались где следует искать следы активности взломщиков.
  • /var/log/utmp — Список входов пользователей в систему на данный момент.
  • /var/log/wtmp — Еще один журнал записи входа пользователей в систему. Вывод на экран командой utmpdump .

И другие журналы

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

В домашнем каталоге пользователя могут находится журналы графических приложений, DE.

Чем просматривать — lnav

Недавно я обнаружил еще одну годную и многообещающую, но слегка еще сыроватую, утилиту — lnav, в расшифровке Log File Navigator.





Установка пакета как обычно одной командой.

Навигатор журналов lnav понимает ряд форматов файлов.

  • Access_log веб сервера.
  • CUPS page_log
  • Syslog
  • glog
  • dpkg.log
  • strace
  • Произвольные записи с временными отметками
  • gzip, bzip
  • Журнал VMWare ESXi/vCenter

Что в данном случае означает понимание форматов файлов? Фокус в том, что lnav больше чем утилита для просмотра текстовых файлов. Программа умеет кое что еще. Можно открывать несколько файлов сразу и переключаться между ними.

Программа умеет напрямую открывать архивный файл.

Кроме этого поддерживается подсветка синтаксиса, дополнение по табу и разные полезности в статусной строке. К недостаткам можно отнести нестабильность поведения и зависания. Надеюсь lnav будет активно развиваться, очень полезная программа на мой взгляд.

Favorite

Добавить в избранное (1 оценок, среднее: 5,00 из 5)

Как проверить историю входа в Linux

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

Даже если у вас нет нескольких пользователей, кто-то, вероятно, пытался получить доступ к вашему серверу Linux. Поверьте нам, это может звучать странно, но в наши дни боты пытаются получить доступ к вашим серверам Linux. Не верите нам? Просто проверьте неудачные попытки входа на ваш сервер, чтобы увидеть, пытался ли кто-нибудь войти в вашу систему.

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

Просмотр истории входа в Linux

Linux очень хорошо ведет журналы всего, что происходит в вашей системе. Вполне естественно, что он также хранит журналы о входе и попытках входа. Информация для входа хранится в трех местах:

Давайте посмотрим на эти вещи немного подробнее.

Чтобы просмотреть историю всех успешных входов в систему, просто используйте команду last.

Вывод должен выглядеть следующим образом. Как видите, в нем перечислены пользователи, IP-адрес, с которого пользователь получил доступ к системе, дата и время входа в систему. pts/0 означает доступ к серверу через SSH.

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

У вас может быть огромная история сеансов входа в систему, поэтому лучше передать вывод с помощью команды less.

2. Просмотр истории входа определенного пользователя

Если вы просто хотите просмотреть историю входа определенного пользователя, вы можете указать имя пользователя с помощью последней команды.

Вы увидите информацию для входа только выбранного пользователя:

3. Отображать IP-адреса в истории входа вместо имени хоста

Вы не могли видеть это в предыдущем выводе, но по умолчанию последняя команда показывает имя хоста вместо IP-адреса пользователя. Если вы находитесь в подсети, вы, вероятно, увидите только имена хостов.

4. Отображать только последние N логинов

Если у вашей системы хорошее время работы, возможно, ваша история входа будет огромной. Как мы упоминали ранее, вы можете использовать команду less или другие команды просмотра файлов, такие как head или tail.

Последняя команда дает вам возможность отображать только определенное количество истории входа.

Просто замените N на номер, который вы хотите. Вы также можете комбинировать его с именем пользователя.

5. Просмотр всех неудачных попыток входа на ваш сервер Linux

Теперь важная часть: проверка неудачных попыток входа на ваш сервер.

Вы можете сделать это двумя способами. Вы можете использовать последнюю команду с файлом журнала btmp:

или вы можете использовать команду lastb:

Обе эти команды дадут одинаковый результат. Lastb на самом деле является ссылкой на последнюю команду с указанным файлом.

Плохие логины могут быть неверным паролем, введенным законным пользователем. Это также может быть бот, пытающийся взломать ваш пароль.

Вы должны проанализировать здесь и посмотреть, узнаете ли вы IP-адреса в журнале. Если было слишком много попыток входа в систему с определенного IP-адреса с пользователем root, возможно, кто-то пытается атаковать вашу систему с помощью брутфорса.

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

Заключение

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: