rootユーザーが自分のサーバーにSSHを正常に接続したことをどのように確認できますか?

rootユーザーが自分のサーバーにSSHを正常に接続したことをどのように確認できますか?

次のコードは、許可されているがユーザー名でフィルタリングされていないすべてのコンテンツを提供します。

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.1​​40のコンピュータで擬似ターミナル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)
. . .

関連情報