Tips記事
» 2001年02月28日 00時00分 UPDATE

特定のユーザーにroot権限のコマンドを使わせたい

[木田佳克,ITmedia]

 何人かの管理者がいるシステムでは,root権限のコマンドを一般ユーザーでも使用できるように設定したいだろう。

 このためには,「sudo」を利用するのがおすすめだ。rootのパスワードを教えることなく適切なコマンドだけが利用できるため,便利に使えるはずだ。ただし,設定によってはセキュリティホールになる可能性もあるため,使用するには十分な注意が必要だ。

 まず最初にインストールされているかを確認しよう(Red Hat系を前提にRPMパッケージでの解説となっている)。

# rpm -qa|grep sudo

と,入力をしてパッケージ名が表示されればOKだ。もし表示されない場合には,「http://rpmfind.net/」などで対応ディストリビューションのRPMパッケージを探すのがよい。

# rpm -Uvh ftp://ftp.rpmfind.net/linux/powertools/6.2/i386/i386/sudo-1.6.1-1.i386.rpm
Retrieving ftp://ftp.rpmfind.net/linux/powertools/6.2/i386/i386/sudo-1.6.1-1.i386.rpm
sudo   ######################################

# which sudo
/usr/bin/sudo  ← /usr/bin/にインストールされた

 sudoの動作条件を決める設定ファイルは,「/etc/sudoers」である。次のように編集をしよう。直接ファイルを編集するのではなく,「visudo」コマンドを利用するのが一般的だ。

# visudo

# sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.
#

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL) ALL
ykida ALL=ALL,NOPASSWD:ALL

 たとえば次のように太字(ボールド)の個所を追加した場合,ykida権限でパスワード入力の手間無くsudoの実行権限が得られるようになる。

 設定後であれば,たとえばすぐにシャットダウンをする場合には次のように入力すればよい。

$ sudo shutdown -h now

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ