sodo のログを分離して保存する方法

  sudoers(4) を見ると,以下のような記述が見つかる.

    syslog      Syslog facility if syslog is being used for
                logging (negate to disable syslog logging).
                Defaults to local2.

  すなわち sodo のログはデフォルトで syslog のファシリティ local2 に送られるということ.

  また,プライオリティはというと,これも sudoers(4) には以下のように書いてある.

    syslog_goodpri
                Syslog priority to use when user authenticates
                successfully.  Defaults to notice.

    syslog_badpri
                Syslog priority to use when user authenticates
                unsuccessfully.  Defaults to alert.

  つまり,ユーザの認証が成功した場合は notice,失敗した場合は alert である.

  これを syslog.conf に設定してあげればいい.以下 Solaris 10 での例.

local2.notice        ifdef(`LOGHOST', /var/adm/sudolog, @loghost)


  ここでは,/var/adm/sudolog にログを出力するようにした.
  あとは,

# touch /var/adm/sudolog
# pkill -HUP syslogd

  で無事ログが出力される.