[samba-jp:22486] Re: ADサーバ側でのユーザの認証履歴の取得について

Kaz Nishimura kazssym @ vx68k.org
2015年 3月 23日 (月) 14:35:06 JST


last には -w オプションがあるみたいですね。

       -w     Display full user and domain names in the output.


2015-03-23 9:48 GMT+09:00 ODAGIRI Koji <odagiri @ osstech.co.jp>:

> OSSTech 小田切です。
>
>
> >> 現状、SAMBA ADサーバ側のsmb.confに指定したところ、パラメータが不正な
> ようです。
> >> Unknown parameter encountered: "wtmp"
> >
> > utmp = yes ですね。手元の環境で設定したところ、機能しました。
> > 以下のような感じで記録されます。
>
> そうでした。utmp の記載ミスです。
>
> > -----
> > ADDOM1\SAMBADC3$ smb/40657929 192.168.135.51   Sun Mar 22 21:22   still
> logged in
> > ADDOM1\WIN2K3R2ENT-1$ smb/29117697 192.168.135.20   Sun Mar 22 21:21 -
> 21:22  (00:00)
> > ADDOM1\Administrator smb/33676487 192.168.135.20   Sun Mar 22 21:21
>  still
> > logged in
> > -----
>
> 私も試して問題なかったのですが、
> acコマンドは ドメイン名\ユーザ名がちゃんと表示されましたが、
> lastやwだと表示文字数が足りなくて、ドメイン名\ユーザ名がすべて表示され
> なくて、ドメイン名が長いとユーザー名がすべて表示されないです。
>
> lastにオプションがあるのかしら?
>
> (自分でutmp集計プログラムをつくるしかない?、lastを自己改造か?)
>
> > ただ、このパラメータはあくまでファイルサーバとしての Samba に対する
> > ログオンの履歴の記録ですので、厳密には認証履歴その物ではありません。
>
> 逆ではないですか?
>
> この記録は、Sambaに対すする認証およびアクセス記録で
> ログオンしていた記録ではない
>
> だと思います。
>
> つまりログオンして認証されれば記録されるけど
> アイドルで自動切断するとログオンしていても使ってないように見えるし、
> 再度Sambaにアクセスして自動再接続されると認証が行われ、再ログオンしてい
> るように見える。
>
> またログオフしてもすぐにクライアントがSambaに切断を送らないことがあるの
> で、ログオフしてすぐログオンすると何も記録が残らないこともある。
>
>
> > ログオン時に SYSVOL 共有へのアクセスが発生するので、どこかの
> > ドメインコントローラに対して、何らかの記録は行われると思いますが、
> > それ以外のタイミングでのアクセス履歴も記録されるので、抽出するのは
> > 大変そうです。
> >
> > ログオンスクリプトで、ログオン履歴を取得する機構を作り込んだ方が
> > 確実だと思います。
>
> これはよく相談されて実現を検討しますが、
> ログオンスクリプトはユーザー権限で動くので
> ユーザーがログイン履歴を改ざんすることが可能なことを理解しておく必要があ
> ります。
>
> 改ざんされないようにテクニックを駆使すれば良いのですが...
>
>
> >>> (2) [IPC$]共有に preexec や postexec を指定して
> >>
> >> こちらはAD認証の時にも有効なパラメータでしょうか?
> >
> > こちらも同等で、ログオン時の認証以外でも記録されるときは記録
> > されます。
> >
> > とはいえ、
> >
> >> または、ユーザが過去何日間ログインしていないか(最終の認証日付等)を
> >> 取得することは可能でしょうか。
> >
> > という情報であれば、実質的には同等の情報が取得できると思います。
> > なお、DCが複数台ある場合、特殊な設定を行わない限りはどのDCでも認証が
> > 行われる可能性があるので、その点は留意してください。
>
> 上記の認証記録とログオン履歴が一致しない話になります。
>
> これもユーザーに改ざんされないように、root preexec や root postexec を
> 使うのが良いと思います。
>
>
>
> >> パスワードの有効期限を設定して、パスワードを変更していないユーザーをアカ
> >> ウントロックする方が簡単でセキュアだと思います。
> >
> > パスワード期限は設定しておりますが、
> > ユーザ側にパスワード変更を許可する環境の為、Linuxログインの際に
> > パスワード切れをおこしていた場合に、パスワード変更が可能であり、
> > 再ログインが可能になってしまうため、無効化する方法を検討しております。
>
>
> それならがんばってスクリプトの中でユーザーを無効化する方法でやるしかない
> ですね。
>
> utmp/wtmpのログを解析するプログラムを作るのも良いかと思います。
>
>
>
> --
> 小田切 耕司 : odagiri @ osstech.co.jp  http://www.osstech.co.jp/
>   オープンソース・ソリューション・テクノロジ株式会社
>
>   PGP : http://pgp.nic.ad.jp/pks/lookup?op=index&search=0xC7701E58
>   Key fingerprint = 1FAB E978 4F99 3AAE EC5A  C1B3 E6F5 3B80 C770 1E58
>
>  エンジニア募集中! http://www.osstech.co.jp/company/recruit
>


samba-jp メーリングリストの案内