sudo をより便利に使うための sudoers の設定

Advertisement
sudo は他のユーザの権限でコマンドを実行することができるコマンドです。
su で root にログインせずに、root 権限が必要なコマンドを使う場合によく使います。
Linux では標準のパッケージとしてインストールされていることが多いですが、NetBSD では pkgsrc (security/sudo) からインストールする必要があります。
目次
visudo による sudoers の設定
sudo の設定は、sudoers というファイルに設定されます。
sudoers ファイルは直接編集しないで、visudo というコマンドを実行して編集します。
# visudo
sudoers に設定しておくと便利な例をいくつか紹介します。
sudo でパスワードを入れたら一定時間認証継続するようにする
timestamp_timeout に認証を継続する時間を設定することで、一定時間パスワードを再度入力せずに使えます。
例えば、10分間認証継続する設定は以下のようにします。
Defaults env_reset, timestamp_timeout=10
sudo でパスワードなしで全てのコマンドが実行できるようにする
グループ wheel のユーザであれば、パスワードなしで全てのコマンドが実行できるようにする場合の例は以下のようになります。
(ユーザ root は全てのホストで全てのコマンドが実行できるようにしてます。)
# User privilege specification root ALL=(ALL) ALL # Allow people in group wheel to run all commands without a password %wheel ALL=(ALL) NOPASSWD: ALL
sudo に関する syslog の設定
sudo のログに syslog を利用する場合、sudo のデフォルトの facility は local2 となっています。
local2 は bind の facility で使われている場合が多いので、sudo の facility を local3 に変更します。
Defaults syslog=local3
NetBSD の場合、/etc/syslog.conf に以下のように設定することにより、syslog で sudo のログを /var/log/sudo.log に記録することができます。
# for sudo local3.* /var/log/sudo.log