Samba 3.5.4を使用してActive Directoryサーバーに対してSquid(NTLM)で認証しているユーザーがいます。ユーザーのログイン試行をログに記録したいと思います。
次のような行を表示したいのですが。TIMESTAMP username@DOMAIN SUCCESS/FAILURE
log level
の/etc/samba/smb.conf
行を変更して読み取る場合:
log level = 1 winbind:5
私が求めている情報(デフォルトでは/var/log/samba/log.DOMAIN
に記録されます)を取得しますが、非常にノイズが多く、ログメッセージが2行に分割されます。正確には私が探しているものではありませんが、それが必要な場合があります。
Sambaのログファイルでは、認証関連の情報にcheck_ntlm_password
モジュールのタグが付けられています(使用している場合)。日付と時刻が必要な場合は、実際の情報を含む行の前の行をキャプチャする必要があります。
下記は用例です。ユーザーの名前は、すべての場合でxxx.yyy
に置き換えられました。 authentication
の大文字と小文字の違いが成功と失敗のケースで異なることに注意してください。
[2011/11/08 10:22:40.604819, 2] auth/auth.c:304(check_ntlm_password)
check_ntlm_password: authentication for user [xxx.yyy] -> [xxx.yyy] -> [xxx.yyy] succeeded
[2012/01/11 09:09:00.430424, 2] auth/auth.c:314(check_ntlm_password)
check_ntlm_password: Authentication for user [xxx.yyy] -> [xxx.yyy] FAILED with error NT_STATUS_WRONG_PASSWORD
これらの2つを超える他のメッセージがあります。これらの行は、lennyのバックポートリポジトリからSambaによって作成されました。 Sambaのバージョンは3.5.6で、実際のパッケージのバージョンは2:3.5.6〜dfsg-3〜bpo50 + 1です。 smb.conf
にログオンするための正確な構成は次のとおりです。
syslog = 0
debug level = 2
log file = /var/log/samba/%m.log
max log size = 1024
panic action = /usr/share/samba/panic-action %d