特定のユーザーでsudoを利用できるようにする

2021-06-18

特定のユーザーの「sudo」コマンドを利用できるようにする

特定のユーザーで「sudo」コマンドを利用できるようにします。
sudoを許可していないユーザーで「sudo su -」のコマンドを利用すると以下のように「xxx is not in the sudoers file. This incident will be reported.」とsudo コマンドが利用できません。

※ sudoコマンドを利用したいユーザーは「testuser」として説明します

$ sudo su -
[sudo] password for normaluser:
testuser is not in the sudoers file.  This incident will be reported.

このエラーになる原因ですが、sudoを利用できるユーザーグループに、sudoを利用したいユーザー(testuser)が追加されていないのが原因です。

$ cat /etc/group | grep wheel
wheel:x:10:admin

「/etc/sudoers」の設定を確認します

初期設定では、「wheel」グループに属しているユーザーが「sudo」コマンドを利用できます。
「sudo」関連の設定は、「/etc/sudoers」に設定されているので、「sudo」コマンドが利用できるグループを確認します

$ sudo vi /etc/sudoers

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL

wheelグループにユーザーを追加する

「sudo」を利用したいユーザーを「wheel」グループに追加します。

# testuserを「wheel」に追加します
$ sudo usermod -aG wheel testuser

# 追加されているか確認します
$ cat /etc/group | grep wheel
wheel:x:10:admin,testuser

# sudoコマンドが利用できるか確認します
[testuser@localhost ~]$ sudo su -

 

パスワード無しで「sudo」コマンドを利用する

パスワード無しでsudoを利用したい場合は、以下のように「[ユーザー名] ALL=(ALL) NOPASSWD: ALL」の1行を追加します。
以下では「admin」ユーザーがパスワード無しで「sudo」コマンドが利用できる設定になっています

書式:[ユーザー名] ALL=(ALL) NOPASSWD: ALL

$ sudo vi /etc/sudoers

## Same thing without a password
# %wheel        ALL=(ALL)       NOPASSWD: ALL
admin       ALL=(ALL)       NOPASSWD: ALL

 

 

 

 

LinuxCentOS 6,CentOS 7,CentOS 8

Posted by admin