- - PR -
操作ログ取得について
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2006-05-21 13:23
CUI操作ログを一般ユーザとrootでログインした際にバックグラウンドで取得する方法を考えています。
取得するものとしては、 ログインユーザ ログイン日時 コマンド コマンド結果 ログアウト日時 ですが、保存ログディレクトリを指定して日時ファイル名としたいと思っています。 何か良い方法は無いものか、どうぞよろしくお願いします。 | ||||
|
投稿日時: 2006-05-21 14:50
こんにちは。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=19908&forum=10&5 ここら辺が参考になりませんか? ログイン関係は lastlog で追いかけられると思います。 上記と組み合わせて…ということになるとは思いますが。 ご参考までに。 | ||||
|
投稿日時: 2006-05-22 00:05
あるかなさん、有難うございました。
実際、/home/user1/.bashrcに script ~/$(date +%Y%m%d).log を追加し、ログインし直してgnomeターミナルを起動してみたのですが、 Script started,file is /home/user1/20060521.log が10数行表示を繰り返しました。 CPUも重くなり作業ができないほどです。 しかも、Scriptが正しく起動できたとしてもexitで終わらせてしまうと操作ログは取得できないのですが。 | ||||
|
投稿日時: 2006-05-22 15:29
自分が以前に行ったときは相当前だったので、負荷の程は忘れましたが…
/etc/profile に以下を追加して exit の際に shell も一緒に落とすようにはしていました。 昔のを掘り起こしたのですが、これで動いてた…と思います。 これで駄目でしたら、今試せる環境にいないので、 他の識者の方のアドバイスをお待ちください。 ちなみにセキュリティ考慮されるなら shell に手を入れるしかないです。 これは、敷居が高いというか、私には無理でした… script を用いる方法では ps でプロセスが見れるので kill 出来ますし… 他の方法でも同様だと思います(bash_history も自身で消せるしねってレベルで)。 ※以下は、環境によって多少変更するところはあると思います。
#BBコードが間違ってました... [ メッセージ編集済み 編集者: あるかな 編集日時 2006-05-22 15:59 ] | ||||
|
投稿日時: 2006-05-23 21:07
教えてもらったとおりにユーザホーム配下の.bashrcに記述して実行して見ました。
そうしたら、2つ目のターミナルオープン時に mkdir: ディレクトリ `/var/logs/scriptlogs/root' を作成できません: ファイルが存在します と表示されてしまいました。 スクリプトファイルも全然できておりませんでした。 FedoraCoreだとどこか違うのでしょうか。 | ||||
|
投稿日時: 2006-05-23 22:51
現在の環境(CentOS4.2)で試しました。
掘り出したモノは、どうやら telnet+bash な環境用でした。 ssh+bashであれば、下記の修正分で問題なく情報の取得が出来ているのを確認してます。 FC の問題ではないと思うので、下記の挙動を追って、自サーバ用に修正してみてください。
※全角$は半角に変換してください。 なんでか、消されるので… mkdir のエラーはディレクトリが既に存在しているのに再度作ろうとしているからでは? if の -e で存在チェックして、存在しなければ mkdir 発行としているので、 どこかで構文をミスっている可能性があるかも、です。 一つ一つの挙動を追って、がんばってください。 | ||||
|
投稿日時: 2006-05-24 00:07
たびたび申し訳ありません。
こちらの現在の環境はFC5で、ローカルコンソールです。 どうやら、P_PROC=`ps aux | grep $PPID | grep sshd | awk '{print $11 }'` のところで、結果が消えておりました。 実行結果としては、 #ps aux | grep $PPID root 15857 0.5 4.3 67852 21536 ? Sl May23 0:02 gnome-terminal root 16034 0.0 0.1 4960 776 pts/1 S+ 00:01 0:00 grep 15857 #ps aux | grep $PPID | grep sshd →結果無し。 です。スクリプトファイルは取得できておりません。 | ||||
|
投稿日時: 2006-05-24 05:43
どうも見た感じ、へんなループに陥ってるみたいですね。 .bashrcでbashを起動して.bashrcを読み込みそれがまたbashを起動しているような。。。。。 ============================================================== 後「あるかな」さんのいいたいことをまったく理解されてないようですね。 どんなことをやっているスクリプトかよく読んで見られたほうがよろしいですよ。 |