Как использовать последнюю команду в Linux

Ноутбук с Linux показывает приглашение bash

Фатмавати Ахмад Дзэнури / Shutterstock.com

Кто, когда и откуда? Хорошие практики безопасности говорят, что вы должны знать, кто имеет доступ к вашему компьютеру с Linux. Мы покажем вам, как это сделать.

Файл wtmp

Linux и другие Unix-подобные операционные системы такие как MacOS очень хороши в ведении журнала. Где-то в недрах системы есть журнал практически всего, о чем вы можете подумать. Интересующий нас файл журнала называется wtmp. Буква w может означать, когда или кто - похоже, никто не согласен. Часть tmp, вероятно, означает временную, но она также может означать временную метку.





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

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



Этот инструмент - last команда.

Последняя команда

last команда читает данные из wtmp log и отображает его в окне терминала.

Реклама

Если вы наберете last и нажмите Enter, это будет отображать все записи из файла журнала.



wtmp

Каждая запись из :0 отображается в окне терминала.

Слева направо каждая строка содержит:

  • В имя пользователя человека, вошедшего в систему.
  • В Терминал они вошли в систему. Конечная запись last означает, что они вошли в систему на самом компьютере Linux.
  • В айпи адрес машины, в которую они вошли.
  • В авторизоваться отметка времени и даты.
  • В продолжительность сеанса.

Последняя строка сообщает нам дату и время самого раннего сеанса, записанного в журнале.

Запись для фиктивного пользователя «перезагрузка» вносится в журнал каждый раз при загрузке компьютера. Поле терминала заменяется версией ядра. Продолжительность сеанса входа в систему для этих записей представляет время безотказной работы компьютера.

Отображение определенного количества строк

Используя last Сама по себе команда создает дамп всего журнала, большая часть которого проходит мимо окна терминала. Часть, которая остается видимой, - это самые ранние данные в журнале. Вероятно, это не то, что вы хотели видеть.

Вы можете сказать -5 чтобы дать вам определенное количество строк вывода. Для этого укажите желаемое количество строк в командной строке. Обратите внимание на дефис. Чтобы увидеть пять строк, нужно набрать 5 а не -d:

last

Реклама

Это дает первые пять строк из журнала, которые являются самыми последними данными.

Отображение сетевых имен для удаленных пользователей

last Параметр (Система доменных имен) сообщает -R чтобы попытаться разрешить IP-адреса удаленных пользователей в имени машины или сети.

last

Не всегда удается -s чтобы преобразовать IP-адрес в сетевое имя, но команда сделает это, когда сможет.

Скрытие IP-адресов и сетевых имен

Если вас не интересует IP-адрес или имя сети, используйте -t (без имени хоста) опция, чтобы подавить это поле.

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

Выбор записей по дате

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

Реклама

Если вы хотите увидеть только события входа в систему, которые произошли с 26 мая 2019 года, вы должны использовать следующую команду:

-t

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

Поиск до конечной даты

Вы можете использовать last (до), чтобы указать дату окончания. Это позволяет вам выбрать набор записей входа в систему, которые имели место между двумя интересующими датами.

Эта команда запрашивает yesterday для получения и отображения записей входа в систему с 00:00 (рассвет) 26-го числа до времени 00:00 (рассвета) 27-го числа. Это сужает список до сеансов входа в систему, которые имели место только 26-го числа.

Форматы времени и даты

Вы можете использовать время и дату с помощью tomorrow и now опции.

Различные форматы времени, которые можно использовать с -p варианты, которые используют дату и время (предположительно):

  • ГГГГММДДччммсс
  • ГГГГ-ММ-ДД чч: мм: сс
  • ГГГГ-ММ-ДД чч: мм - секунды установлены на 00
  • ГГГГ-ММ-ДД - время установлено на 00:00:00
  • чч: мм: сс - дата установлена ​​сегодня
  • чч: мм - дата будет установлена ​​на сегодняшний день, секунды на 00
  • в настоящее время
  • вчера - время установлено на 00:00:00
  • сегодня - время установлено на 00:00:00
  • завтра - время установлено на 00:00:00
  • + 5мин
  • -5 дней

Почему «якобы»?

Реклама

Второй и третий форматы в списке не работали во время исследования для этой статьи. Эти команды были протестированы в дистрибутивах Ubuntu, Fedora и Manjaro. Это производные от дистрибутивов Debian, RedHat и Arch соответственно. Это охватывает все основные семейства дистрибутивов Linux.

last

Как видите, команда вообще не вернула записей.

Использование первого формата даты и времени из списка с той же датой и временем, что и предыдущая команда, возвращает записи:

still logged in

Поиск по относительным единицам

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

still running

Вчера, сегодня и сейчас

Вы можете использовать now и -p как сокращение для вчерашней и сегодняшней даты.

who

Не то чтобы здесь не было записей на сегодня. Это ожидаемое поведение. Команда запрашивает записи с даты начала до того как дата окончания. Это не включают записи в пределах конечной даты.

Реклама

lastb вариант - это сокращение на сегодня в текущее время. Чтобы увидеть события входа в систему, которые произошли с 00:00 (рассвет) до момента, когда вы введете команду, используйте эту команду:

btmp

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

вывод из последнего -R -s сегодня -t сейчас

Настоящий вариант

lastb Опция (присутствует) позволяет узнать, кто был авторизован в определенный момент времени.

Не имеет значения, когда они вошли в систему или вышли, но если они вошли в систему в указанное вами время, они будут включены в список.

Если указать время без даты last предполагает, что вы имеете в виду сегодня.

sudo

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

last
.

Вывод из last -R -p 09:30

Реклама

Если вы используете

last -5
сокращение с
last -d
(присутствует), вы можете узнать, кто вошел в систему в момент, когда вы вводите команду.

last -R -s 2019-05-26

Это несколько утомительный способ добиться того, чего можно достичь. используя

last -R -s 2019-05-26 11:00 -t 2019-05-27 13:00
команда .

СВЯЗАННЫЙ: Как определить текущую учетную запись пользователя в Linux

Команда lastb

last -R -s 20190526110000 -t 20190527130000
команда заслуживает упоминания. Он считывает данные из журнала с именем
last -R -s -2days -t -1days
. По этому названию журнала есть немного больше консенсуса. Буква «b» означает «плохо», но часть «tmp» все еще вызывает споры.

last -R -s yesterday -t today
перечисляет плохие ( не удалось ) попытки входа в систему. Он принимает те же параметры, что и
last -R -s today -t now
. Поскольку это были неудачные попытки входа в систему, все записи будут иметь продолжительность 00:00.

Вы должны использовать

last -R -p 09:30
с
last -R -p now
.

sudo lastb -R

Последнее слово по делу

Зная, кто вошел в ваш компьютер с Linux, когда и откуда можно получить полезную информацию. Сочетание этого с подробностями неудачных попыток входа в систему дает вам первые шаги в расследовании подозрительного поведения.

ПРОЧИТАЙТЕ СЛЕДУЮЩИЙ
  • & rsaquo; Функции и формулы в Microsoft Excel: в чем разница?
  • & rsaquo; 5 сайтов, которые должен добавить в закладки каждый пользователь Linux
  • & rsaquo; Папке на компьютере 40 лет: как звезда Xerox создала рабочий стол
  • & rsaquo; Что такое защита от падений MIL-SPEC?
  • & rsaquo; Киберпонедельник 2021: лучшие технические предложения
  • & rsaquo; Как найти упакованный Spotify 2021
Фотография профиля Дэйва Маккея Дэйв Маккей
Дэйв Маккей впервые использовал компьютеры, когда в моде была перфолента, и с тех пор он занимается программированием. Проработав более 30 лет в ИТ-индустрии, он теперь работает журналистом в области информационных технологий. За свою карьеру он работал программистом-фрилансером, менеджером международной группы разработчиков программного обеспечения, менеджером проекта ИТ-услуг, а в последнее время - специалистом по защите данных. Его статьи были опубликованы на сайтах howtogeek.com, cloudsavvyit.com, itenterpriser.com и opensource.com. Дэйв - евангелист Linux и сторонник открытого исходного кода.
Прочитать полную биографию

Интересные статьи