Debianでsudoを使う
Debian GNU/Linux 4.0(etch)にsudoをインストールします。
sudoを使用する利点には、次のようなものがあげられます。(参考:管理者権限の制限のためのsuとsudoの基本)
- rootのパスワードを入力する必要がない。(パスワードの漏えい対策)
- 実行コマンドのログが残る。
- 個別にコマンドに対する権限が設定できる。
sudoをインストール
sudoをインストールします。
# aptitude update
# aptitude install sudo
sudoの設定を行うには、visudoコマンドを使用します。このコマンドを実行するとエディタが起動し 編集可能になります。
# visudo
例えば、「」で設定したadmグループのみroot権限を与える場合、次のように設定します。
# User privilege specification
root ALL=(ALL) ALL
%adm ALL=(ALL) ALL
上記設定の場合、左から順に次のような意味になります。
- | - |
---|---|
%adm | 対象となるグループまたはユーザー。グループの場合、「%」を付けユーザーの場合は、何もつけない。 |
ALL = | ホストに対する許可。ローカルネットワークのみの場合など、ここで設定します。 |
(ALL) | 指定されたユーザー等の権限 (ALLの場合ルート権限となる) |
ALL | 利用できるコマンド。(ALLの場合、カッコで括ったユーザの使える全てのコマンド) |
sudoの設定例
hogeユーザーにshutdownコマンドの実行を許可する場合、次のように指定します。
hoge ALL = (root) /sbin/shutdown
パスワードの入力を無しで実行できるようにする場合、次のように指定します。
hoge ALL = (ALL)NOPASSWD: ALL
指定した範囲のホストからのみ実行を許可する場合、次のように指定します。
Host_Alias LOCAL = 192.168.1.0/24
hoge LOCAL = (ALL) ALL
上記例では、ホストの指定にエイリアスを使用しています。sudoersでは、 4種類のエイリアスを定義できます。
- | - |
---|---|
User_Alias | ユーザー名の別名 |
Runas_Alias | ユーザー等の権限の別名 |
Host_Alias | 接続元ホストの別名 |
Cmnd_Alias | 実行コマンドの別名 |