さまよう大アリクイ

横浜市に住む。ホームページを作っていたりするが、最近滞り気味。

/etc/sudoersの設定のしかた

sudoコマンドの設定ファイルである/etc/sudoersは、ユーザが、指定されたホストで (どのユーザに変身して) 、どのコマンドを実行できるかを指定します。多くの場合 root に変身してコマンドを実行する事になりますが、他のユーザに変更もできます。 sudoers の man が意味不明な記述なためか、sudoers の設定って適当な気がします。 ALL ALL = (ALL) ALL なんて設定されていたりします。これでは誰でも任意のコマンドを任意のユーザ権限で実行できるという、きわめて危険な設定です。manも判り難いですが、この記述方法もかなり判りづらいですが、それぞれのALLの意味は、簡単に書くと以下のとおりです。 ユーザ ホスト = (実行ユーザ:実行グループ) タグ コマンド (実行ユーザ:実行グループ)とタグは省略可能です。実行ユーザを残して:実行グループの省略も可能です。 ユーザホスト実行ユーザ実行グループコマンドALLを指定可能ですが、ホスト以外はALLを使わないべきと思います。 ユーザ実行ユーザには、ユーザ名か、"#uid"か、"%group"を設定します。 ホストには、hostname ip_addr network(/netmask) が可能ですが、ALL以外を設定する意味はよくわかりません。 タグ'NOPASSWD:' 'PASSWD:' 'NOEXEC:' 'EXEC:' 'SETENV:' 'NOSETENV:' が可能です。他のコマンドから呼ばれるケースではパスワード投入できないので、その場合に NOPASSWD: を使うこともありますが、NOPASSWDを使う場合はなるたけ条件を限定末すべきかと思います。 コマンドはコマンド名だけ書くと任意の引数が設定できますが、引数まで指定すると引数が限定できる様です。 エイリアス機能は、使ったことありません。