sudoedit
提供: セキュリティ
スポンサーリンク
sudoedit とは、sudo -e file と同じ意味ですが、別のユーザとしてファイルを編集するコマンドです。sudo vi / sudo less を禁止できます。
読み方
- sudoedit
- すーどぅ えでぃっと
概要
sudoで編集用のコマンドを許す代わりに、sudoedit(sudo -e)を使用するほうが安全です。また、利便性的にも便利です。
- ユーザーの権限を管理できる
- ユーザーの設定ファイルを利用できる
vi などのコマンドを不要にユーザーに許してしまうと(NOEXECを指定していないとか)、エディタからシェルの許してしまうといった現象が発生します。
rootユーザーとして編集コマンドを起動する場合、エディタは、rootユーザーの設定ファイルを読み込みます。rootユーザーの設定ファイルは、普段使用しているユーザーのように設定を育てていないこともあり、不自由を強いられます。
sudoeditを使用すれば、sudo vi, sudo less などのコマンドを許可する必要はありません。
インストール
sudoeditは、sudoのパッケージに含まれます。
設定
sudo visudo
以下の例は、ユーザ foo に /etc/rc.conf の編集のみ許可します。
foo ALL=(root) sudoedit /etc/rc.conf
環境変
EDITOR, VISUAL
sudoeditの動作
- テンポラリコピーを「呼び出したユーザ」のオーナの権限のファイルを作成します。
- テンポラリファイルを編集するために、sudoeditを実行したユーザの権限でVISUAL, EDITOR 環境変数に指定されたエディタを起動します。
- 編集が終了したら(エディタが終了したら)、テンポラリファイルをオリジナルのファイルに上書きし、テンポラリファイルは削除されます。
また、指定されたファイルが存在しなければ、作成します。
使い方
コマンドラインオプション
sudoedit - 別のユーザーとしてファイルを編集します usage: sudoedit [-AknS] [-C num] [-c class] [-g group] [-h host] [-p prompt] [-u user] file ... オプション: -A, --askpass use a helper program for password prompting -b, --background run command in the background -C, --close-from=num close all file descriptors >= num -c, --login-class=class run command with the specified BSD login class -E, --preserve-env preserve user environment when running command -e, --edit edit files instead of running a command -g, --group=group run command as the specified group name or ID -H, --set-home set HOME variable to target user's home dir -h, --help display help message and exit -h, --host=host run command on host (if supported by plugin) -i, --login run login shell as the target user; a command may also be specified -K, --remove-timestamp remove timestamp file completely -k, --reset-timestamp invalidate timestamp file -l, --list list user's privileges or check a specific command; use twice for longer format -n, --non-interactive non-interactive mode, no prompts are used -P, --preserve-groups preserve group vector instead of setting to target's -p, --prompt=prompt use the specified password prompt -S, --stdin read password from standard input -s, --shell run shell as the target user; a command may also be specified -U, --other-user=user in list mode, display privileges for user -u, --user=user run command (or edit file) as specified user name or ID -V, --version display version information and exit -v, --validate update user's timestamp without running a command -- stop processing command line arguments
コマンドラインオプション
sudoedit /etc/rc.conf
上記のコマンドは、下記のコマンドと等価です。
sudo -e /etc/rc.conf
関連項目
- sudoコマンド
- sudoのインストール
- sudoの設定
- sudoの使い方
- sudoによる入出力のロギング
- visudo
- sudoedit
- sudoers
- sudoreplay
ツイート
スポンサーリンク