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

148809
Sean Nguyen

Как я могу просмотреть историю команд другого пользователя?

Я администратор на моей машине. Я могу видеть нормальную историю, просматривая, /home/user_name/.bash_historyно я не могу видеть команды этого, user_nameкогда они делали sudo.

Есть ли способ просмотреть все команды, выполняемые одним пользователем?

25
Украдите его пароль :) или с помощью социальной инженерии. Если вы не root, а ваша учетная запись настроена таким образом, что вы не можете перейти / прочитать домашние / файлы других пользователей, вы в значительной степени ограничены. ring bearer 12 лет назад 0
«Я администратор на моей машине». 12 лет назад 7

6 ответов на вопрос

22
Kerin

В операционных системах, основанных на Debian, работа tail /var/log/auth.log | grep username должна дать вам sudoисторию пользователя . Я не верю, что есть способ получить единую историю команд обычных команд + sudo пользователя.

В операционных системах на основе RHEL вам нужно будет проверить /var/log/secureвместо /var/log/auth.log.

Любая подсказка, что это будет на системе Centos? Мои машины Centos 7 не имеют `/ var / log / auth.log` Mitch 8 лет назад 0
Попробуйте `/ var / log / secure`. Kerin 8 лет назад 2
Работает отлично! Просто вставьте запрос на редактирование вашего ответа Mitch 8 лет назад 0
2
Tyson

Just tested the following, and it worked like a charm.

sudo vim /home/USER_YOU_WANT_TO_VIEW/.bash_history 
Он / она уже знает об этой команде. Из исходного вопроса: «Я могу видеть нормальную историю, просматривая /home/user_name/.bash_history, но не вижу команд с этим« user_name », когда они делали sudo». Michael Thompson 8 лет назад 1
1
bdonlan

Если пользователь ввел команду как в sudo somecommand, она появится в системном журнале.

Если пользователь породил оболочку с, например, sudo -s, sudo su, sudo shи т.д., то команда может появиться в истории привилегированного пользователя, то есть, в /root/.bash_historyили аналогичных.

Где находится системный журнал? Garrett 9 лет назад 1
0

Может быть, эта ссылка имеет значение для вас: http://www.sudo.ws/pipermail/sudo-users/2000-March/000052.html

Но вы должны иметь в виду, что отсутствие следов в bash_history - это просто вопрос запуска команды с пробелом etcpp. История - это помощник, а не инструмент ведения журнала.

Привет из Германии, Даниэль Лешковски

0
AdamKalisz

# zless /var/log/auth*твой друг здесь Он открывает даже сжатые файлы. Вы можете прыгать между теми, кто :nвперед или :pназад.

В качестве альтернативы вы можете использовать, # journalctl -f -l SYSLOG_FACILITY=10например. Подробнее об этом читайте в вики Arch Arch

-1
Igor MV

Логика относится ко многим другим целям.
А как читать .sh_history каждого пользователя из / home / filesystem? Что делать, если их тысячи?

#!/bin/ksh last |head -10|awk ''| while IFS= read -r line do su - "$line" -c 'tail .sh_history' done 

Вот сценарий.

Похожие вопросы