Linux'ta başka bir kullanıcının komut geçmişini nasıl görebilirim?


30

Başka bir kullanıcının komut geçmişini nasıl görebilirim?

Ben makinemde yöneticiyim. Normal bir tarihi görüntüleyerek /home/user_name/.bash_historygörebiliyorum, fakat bunu user_nameyaparken onların komutlarını göremiyorum sudo.

Tek bir kullanıcı tarafından yürütülen tüm komutu görmenin bir yolu var mı?


1
Onun şifresini çalmak :) veya sosyal mühendislik .. Kök değilseniz ve hesabınız gidemeyecek / başka bir kullanıcının ev / dosyalarını okuyamayacak şekilde ayarlanmışsa, hemen hemen kısıtlanmış olursunuz.
yüzük taşıyıcısı,

8
"Ben makinemde yöneticiyim."

Yanıtlar:


23

Debian tabanlı işletim sistemlerinde, yapmak tail /var/log/auth.log | grep username size bir kullanıcının sudogeçmişini vermelidir . Bir kullanıcının normal + sudo komutlarının birleşik bir komut geçmişini almanın bir yolu olduğuna inanmıyorum.

RHEL tabanlı işletim sistemlerinde /var/log/securebunun yerine kontrol etmeniz gerekir /var/log/auth.log.


Bunun bir centos sisteminde ne olabileceğine dair bir ipucu var mı? Benim Centos 7 makineler yok/var/log/auth.log
Mitch

3
/var/log/secureBunun yerine deneyin .
Kerin

Mükemmel çalışıyor! Cevabınızla ilgili bir düzenleme isteği koymanız yeterli
Mitch

4

Sadece aşağıdaki test edildi ve bir cazibe gibi çalıştı.

sudo vim /home/USER_YOU_WANT_TO_VIEW/.bash_history

1
Bu emri çoktan biliyor. Asıl sorudan: "/home/user_name/.bash_history dosyasını görüntüleyerek normal tarih görebiliyorum, ancak sudo yaparken" user_name "komutlarını göremiyorum."
Michael Thompson

2

Kullanıcı olduğu gibi bir komut verirse, komut sudo somecommandsistem günlüğünde görünecektir.

Kullanıcı ile bir kabuk oluşmasına neden olursa, örneğin sudo -s, sudo su, sudo sh, vs, sonra da komut verebilir , içinde olan root kullanıcısının, tarihinin görünür /root/.bash_historyveya benzer.


1
Sistem günlüğü nerede?
Garrett

1

# zless /var/log/auth*Burada senin arkadaşın. Hatta gzip dosyalarını da açar. :nİleri ya da :pgeri olanlar arasında atlayabilirsiniz .

Alternatif olarak, # journalctl -f -l SYSLOG_FACILITY=10örneğin kullanabilirsiniz . Bu konuda Arch Linux wiki'de daha fazlasını okuyun.



0

Belki bu bağlantının senin için bir değeri vardır: http://www.sudo.ws/pipermail/sudo-users/2000-March/000052.html

Ancak bash_history'de hiçbir iz bırakmamak, sadece etcpp alanını içeren bir emir başlatmakla ilgilidir. Tarihçe bir yardımcı, bir kayıt aracı değil.

Almanya'dan selamlar, Daniel Leschkowski


-1

Mantık, diğer birçok amaç için geçerlidir.
Ve / home / filesystem'dan her kullanıcının .sh_history dosyasını nasıl okuyabilirim? Ya onlardan binlerce varsa?

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

İşte senaryo.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.