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