次のコードは、許可されているがユーザー名でフィルタリングされていないすべてのコンテンツを提供します。
sudo cat /var/log/auth.log | grep Accepted
答え1
grepパターンにユーザー名を追加しますか?
# grep -e "Accepted .* for root " /var/log/auth.log
May 3 23:09:01 lumi sshd[21046]: Accepted publickey for root from 1.2.3.4 port 44308 ssh2
May 6 21:25:20 lumi sshd[6642]: Accepted publickey for root from 1.2.3.4 port 44556 ssh2
または、開始されたセッションを含むログの読み取りlast
を使用してください。/var/log/wtmp
非対話型セッションはここに保存されません。
# last root
root pts/38 somehost.somewhere Sat May 6 21:25 still logged in
root pts/3 somehost.somewhere Wed May 3 23:09 - 23:09 (00:00)
少なくともこれらのログの場所は、システム/配布によって異なる場合があります。
ただし、rootログインについて話しているので、rootアクセス権を持つ人は誰でもログを編集してログインを隠すことができることに注意してください。したがって、監査目的でこれを行う場合〜しなければならない外部システムへのロギング。
答え2
たぶん、最後のコマンドがルートログインを一覧表示するのに役立ちますか?この例では、最後のコマンドは、1月11日水曜日にIPアドレスが10.1.57.140のコンピュータで擬似ターミナル3(pts / 3)を使用してルートログインすることを示しています。最後のコマンドはSSHを明示的に示していませんが、pts / 3はおそらくSSHを使用して接続が確立されたことを示す強力な表示です。
[root@server1 ~]# last
john.doe pts/0 server1.example.com Thu Jan 12 12:04 still logged in
root pts/3 10.1.57.140 Wed Jan 11 12:54 - 13:13 (00:19)
reboot system boot 3-10-0-327.e17.x Wed Jan 11 12:52 - 13:10 (00:01)
. . .