目次:
sudo
は、信頼されたユーザーが別のユーザー(デフォルトではrootユーザー)としてコマンドを実行できるように設計されたコマンドラインユーティリティです。
ユーザーにsudoアクセスを許可するには、2つのオプションがあります。 最初の方法は、ユーザーをsudoersファイルに追加することです。 このファイルには、sudo特権が付与されるユーザーとグループ、および特権のレベルを定義する情報が含まれています。
2番目のオプションは、
sudoers
ファイルで定義されたsudoグループにユーザーを追加することです。 デフォルトでは、CentOSやFedoraなどのRedHatベースのディストリビューションでは、「wheel」グループのメンバーにsudo特権が付与されます。
ユーザーをwheelグループに追加する
CentOSのユーザーにsudo特権を付与する最も簡単な方法は、ユーザーを「wheel」グループに追加することです。 このグループのメンバーは、
sudo
を介してすべてのコマンドを実行でき、
sudo
を使用するときにパスワードで自身を認証するように求められます。
ユーザーが既に存在していると仮定しています。 新しいユーザーを作成する場合は、このガイドを確認してください。
ユーザーをグループに追加するには、rootまたは別のsudoユーザーとして以下のコマンドを実行します。 「username」を、アクセス許可を付与するユーザーの名前に変更します。
usermod -aG wheel username
ほとんどのユースケースでは、この方法を使用してsudoアクセスを許可するだけで十分です。
sudoアクセスをテストするには、
whoami
コマンドを実行します。
sudo whoami
パスワードの入力を求められます。 ユーザーにsudoアクセスがある場合、コマンドは「root」を出力します。
sudoersファイルへのユーザーの追加
ユーザーおよびグループのsudo特権は、
/etc/sudoers
ファイルで構成されます。 このファイルにユーザーを追加すると、コマンドへのカスタマイズされたアクセスを許可し、ユーザーのカスタムセキュリティポリシーを構成できます。
ユーザーのsudoアクセスを構成するには、sudoersファイルを変更するか、/ etc /
/etc/sudoers.d
ディレクトリーに新しい構成ファイルを作成します。 このディレクトリ内のファイルは、sudoersファイルに含まれています。
/etc/sudoers
ファイルを編集するには、
visudo
コマンドを使用します。 このコマンドは、保存時にファイルの構文エラーをチェックします。 エラーがある場合、ファイルは保存されません。 テキストエディタでファイルを開くと、構文エラーによりsudoアクセスが失われる場合があります。
通常、
visudo
はvimを使用して
/etc/sudoers
を開き
/etc/sudoers
。 vimの経験がなく、nanoタイプでファイルを編集する場合:
EDITOR=nano visudo
ユーザーがパスワードを要求されることなくsudoコマンドを実行できるようにしたいとします。
/etc/sudoers
ファイルを開きます。
visudo
ファイルの最後までスクロールし、次の行を追加します。
/ etc / sudoers
username ALL=(ALL) NOPASSWD:ALL
ファイルを保存して、エディターを終了します。 「ユーザー名」を、アクセスを許可するユーザー名に変更することを忘れないでください。
別の一般的な例は、ユーザーが
sudo
を介して特定のコマンドのみを実行できるようにすることです。 たとえば、
du
コマンドと
ping
コマンドのみを許可するには、次を使用します。
username ALL=(ALL) NOPASSWD:/usr/bin/du, /usr/bin/ping
sudoersファイルを編集する代わりに、/ etc
/etc/sudoers.d
ディレクトリーに許可規則を使用して新しいファイルを作成することにより、同じことを実現できます。 sudoersファイルに追加するのと同じルールを追加します。
echo "username ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/username
このアプローチにより、sudo特権の管理がより維持しやすくなります。 ファイルの名前は重要ではありません。 ファイル名はユーザー名と同じにするのが一般的です。
結論
ユーザーにsudoアクセスを許可するのは簡単なタスクで、ユーザーを「ホイール」グループに追加するだけです。
ターミナルsudo centos