GNU/Linux >> Linux の 問題 >  >> Linux

GNUacctを使用したLinuxでのユーザーステータスとアクティビティの監視

サーバー用の監視アプリはたくさんあり、ターミナルに慣れていない、またはデータのグラフィック表現を本当に必要としているシステム管理者とLinuxの採用を支援するために多くのことを行ってきました。ただし、Linuxは当初からマルチユーザーシステムであり、UNIXはそれよりずっと前から存在しているため、サーバーにログインしているユーザー、リソースを使用しているユーザー、およびその目的を監視するのに役立つ組み込みツールが40年前にあります。

自分の責任であるサーバーを注意深く監視することを正当化するために、偏執的である必要はありません。 psacctパッケージには、ユーザーのステータスとアクティビティに関する詳細なレポートを収集するためのいくつかのコマンドが含まれています。

アクトン

acctのすべてのコマンドではありません ユーティリティでは、アカウンティングをアクティブ化する必要がありますが、多くの場合、アクティブ化されます。 acctを使用する場合 コマンドの場合、acctonを使用してアカウンティングを有効にする必要があります コマンド。

有効にするには:

$ sudo accton on

デフォルトでは、アカウンティングレコードは/var/account/pacctに保存されます 。このファイルはかなり大きくなる可能性があるため、logrotateを使用してください または適切なログ管理を確実にするための同様のツール。

アカウンティングを無効にするには:

$ sudo accton off

ac

ac コマンドは、接続時間に関する統計を出力します。システムでアクティブなユーザーがどのように活動しているかの概要を把握する必要がある場合は、--individual-totals オプションはそれを提供します。 /var/log/wtmpに記録されたログインとログアウトに基づいてレポートを数時間で生成します ファイル。

アカウンティングファイルwtmp init(8)によって維持されます およびlogin(1) しかし、どちらもac またはlogin 実際にファイルを作成します。 wtmpの場合 存在しない場合、レポートは生成されませんが、acを指定できます --fileを使用して別の場所に移動します オプション。 wtmpの場合 ファイルがシステムに存在しない場合は、空のwtmpを作成できます システムでのレポートを有効にするファイル。

個々のユーザーのログイン時間に関するレポートを取得するには:

$ ac --individual-totals
seth     20.16
larry    43.60
curly    10.32
moe      35.11

1日の合計も取得できます:

$ ac --daily-totals
Jan 20  total       22.61
Jan 21  total       73.60
Jan 22  total       84.00
Jan 23  total       100.69
Jan 24  total       18.24
Jan 25  total        2.43
Jan 27  total       35.36
Today   total       62.13

lastcomm

lastcomm コマンドは最後のコマンドを表示します 特定のユーザーに対してシステムで発行されます。ユーザーが指定されていない場合は、現在のユーザーに関するレポートが生成されます。

$ sudo lastcomm --strict-match --user curly --tty pts/2
basename               curly   pts/2      0.00 secs Tue Jan 28 15:41
ps                     curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
manpath                curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
tclsh                  curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
bash              F    curly   pts/2      0.00 secs Tue Jan 28 15:41
sed                    curly   pts/2      0.00 secs Tue Jan 28 15:41

lastcommによってリストされたコマンド 必ずしもユーザーがインタラクティブに起動するコマンドであるとは限りません。たとえば、ログインするだけで、ユーザーはlastcommの出力に40近くのアイテムを生成します。 、それでそれは圧倒される可能性があります。 grepと組み合わせる ただし、これはユーザーのセッション履歴を把握するための簡単な方法です。

sa

sa コマンドは、/var/account/pacctから派生したアカウンティング情報を要約します ファイル。ユーザーのアクティビティを監査している場合は、--print-users オプションは、各コマンドの前にユーザー名を出力します:

$ sudo sa --print-users
root    0.00 cpu      579k mem      0 io accton
root    0.03 cpu    64064k mem      0 io sudo 
seth    0.00 cpu    56752k mem      0 io bash         *
seth    0.00 cpu    54080k mem      0 io sed 
seth    0.00 cpu    56752k mem      0 io bash         *
larry   0.00 cpu    56752k mem      0 io bash         *
curly   0.00 cpu    56752k mem      0 io bash         *
moe     0.00 cpu    56752k mem      0 io bash         *
seth    0.00 cpu    54080k mem      0 io ls 

または、各ユーザーの概要のみを取得することもできます:

$ sudo sa --user-summary
                                     1065    2169.59re       0.97cp         0avio     49373k
seth                                  812    1117.11re       0.83cp         0avio     58163k
root                                  199    1052.42re       0.14cp         0avio     21314k
larry                                  41       0.00re       0.00cp         0avio     19403k
curly                                   1       0.06re       0.00cp         0avio      6706k
moe                                    12       0.00re       0.00cp         0avio     25888k
[...]

表示される列には、ユーザー名に加えて、CPU(リアルタイムおよびCPU時間)、コマンドごとのI / O操作(平均および合計)などが報告されます。 --sort-tioなどのオプションを使用して構成できます t otal I / O --sort-cpu-avmem 平均メモリ使用量などでCPU時間を並べ替えます。すべての並べ替えフィルターは、--reverse-sortで逆にすることができます オプション。

ユーザープロファイリング

who、w、psなどのツールと組み合わせると、ユーザーがシステムリソースをどのように使用しているか、どのコマンドが問題になる可能性があるか、どのサーバーのアップグレードが将来役立つ可能性があるかを把握できます。 acct スイートは端末ベースであり、スクリプトを作成して他のツールで利用できるため、カスタマイズされたレポートメカニズムを作成できます。

[Red Hat Enterprise Linuxを試してみませんか?今すぐ無料でダウンロードしてください。 ]


Linux
  1. Linuxでユーザーアクティビティを監視する方法

  2. Linux sysadminの基本:UIDとGIDを使用したユーザーアカウント管理

  3. Linuxユーザーアカウント監視の概要

  1. Tripwireを使用したLinuxでのセキュリティ監視

  2. Linuxでユーザーとグループを操作する方法

  3. LinuxにApacheを使用してWordPressをインストールする

  1. LinuxでGNUPartedを使用してドライブをパーティション分割する

  2. GNUbcを使用してLinuxシェルで数学を実行します

  3. Linux での「su」および「sudo」によるユーザー環境変数