Linux: як отримати всі журнали входу з моєї системи [закрито]


12

Я хочу знати, коли користувач реєструється в моїй системі з минулого року?
Я використав lastкоманду, але це не корисно.


1
Ласкаво просимо до обміну стеками! будь ласка, пам’ятайте, що ми всі волонтери тут. таким чином, ми очікуємо, що ви провели деякі базові дослідження. схоже , у вас є початок - так як ви згадуєте спробувавши lastкоманду - але ви повинні робити більше досліджень , ніж це, і в будь-якому випадку, ви на самому ділі не вказані , чомуlast команда не є корисною. також визначте "увійшов". Ви хочете відстежувати вхід консолі? SSH логіни? Emacs забороняють, telnetлогіни? або просто щось автентичне з PAM? бути конкретним .
strugee

Відповіді:


10

Журнали входу в Linux в стилі redhat називаються wtmp( man wtmp), зберігаються /var/log/за замовчуванням, і ви можете отримати їх за допомогою utmpdump(на RHEL6).

[root@server ~]# utmpdump /var/log/wtmp* | awk '$4~"root" {print}'
Utmp dump of /var/log/wtmp
[7] [01320] [ts/0] [root    ] [pts/0       ] [192.168.1.101       ] [192.168.1.101  ] [Tue Sep 24 00:31:47 2013 UTC]
[7] [01817] [ts/3] [root    ] [pts/3       ] [192.168.1.101       ] [192.168.1.101  ] [Tue Sep 24 00:38:22 2013 UTC]
[7] [01690] [ts/0] [root    ] [pts/0       ] [192.168.1.101       ] [192.168.1.101  ] [Tue Sep 24 00:59:04 2013 UTC]
[7] [23641] [ts/0] [root    ] [pts/0       ] [192.168.1.101       ] [192.168.1.101  ] [Wed Sep 25 19:12:44 2013 UTC]
[7] [03020] [ts/0] [root    ] [pts/0       ] [192.168.1.100       ] [192.168.1.100  ] [Fri Sep 27 21:33:40 2013 UTC]
...

1

Здається, lastможна використовувати для досягнення того, що ви намагаєтеся зробити. Вам потрібно додати дату до останньої команди, щоб отримати інформацію.

last | while read line; do date=`date -d "$(echo $line | awk '{ print $5" "$6" "$7 }')" +%s`; [[ $date -ge `date -d "Aug 25 00:00" +%s` && $date -le `date -d "Aug 28 00:00" +%s` ]] && echo $line; done

Однак якщо ви хочете знайти інформацію про певного користувача, ви можете змінити останню команду як last usernameі потім whileпередати цикл їй. Це дасть вам інформацію про інформацію про вхід конкретного користувача за останній рік.

Я перевірив вищевказану команду, і вона прекрасно працює в моїй системі. Я взяв звідси вищезгадану команду .

Ви можете змінити дату в команді відповідно до ваших вимог.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.