Linux環境にて、一般ユーザにsudo権限を付与する方法を解説したいと思います。
sudo権限とは?
一般ユーザに付与することが可能な権限。
付与されたユーザがコマンドの先頭に[sudo]を付けて実行することで、rootユーザと同じ権限でコマンドを実行することが出来るようになる。
visudoコマンドで、このsudo権限の付与を設定することが可能。
sudo権限を付与するユーザの指定、またコマンドの指定など細かな制御が可能。
visudoコマンドは、rootユーザのみ実行可能である。
visudoコマンドの使い方
下記のように、[visudo]コマンドを実行することで、sudoers(sudo権限の設定ファイル)を編集するモードに移行することが出来る。
編集モードの操作感は、[vi]コマンドと似たような感じだ。
[root@localhost ~]# visudo
今回は、一般ユーザの「awx」ユーザに[sudo]権限を付与したいと思う。
通常はsudoを使ってコマンドを実行する際は、パスワードを求められるため、「NOPASSWD」を指定することで、パスワード確認の抑止を行う。
[visudo]実行後は、sudoersファイルの編集画面に移行するので、マウスのスクロールなどで下の方にある下記のような記述がある位置まで移動する。
## Allow root to run any commands anywhere root ALL=(ALL) ALL
ここに、権限を付与する対象のユーザを記述することで、sudo権限を付与することが可能。
[I]キーで、INSERT(編集モード)に変更し、下記のように記述する。
記述後は、[Esc]キーで編集モードを解除して、[:wq]→[Enter]キーで上書き保存する。
## Allow root to run any commands anywhere root ALL=(ALL) ALL awx ALL=NOPASSWD: ALL
設定後は、[su – awx]で、awxユーザに切り替え、[sudo {コマンド}]で何かしらのコマンドを実行し、パスワードが求められずにコマンドの実行結果が取得出来れば、正常にsudo権限が付与されている。
[root@localhost ~]# su - awx [awx@localhost ~]$ sudo pwd /home/awx
記事は以上。作業時にrootユーザは使用せず、一般ユーザにsudo権限を適切に付与することでセキュリティを高めることが可能となる。visudoで一度設定すると永続的に設定が残り、何度も使用するコマンドではないため、使用方法を忘れがちだが、忘れた際は本記事を参考にして頂けると幸いだ。
コメント