Linux でパスワードを入力せずに Sudo コマンドを実行する方法
普段単独で使用しているマシン、たとえばラップトップで Linux を実行している場合、sudo を呼び出すたびにパスワードを入力するのは、長期的には非常に退屈になる可能性があります。したがって、このガイドでは、パスワードを入力せずに sudo コマンドを実行するように設定する方法について説明します。
この設定は /etc/sudoers ファイルで行われ、sudoers が sudo コマンドのデフォルトのセキュリティ ポリシー プラグインを使用するようになります。ユーザー権限の指定セクションの下にあります。
重要: sudeors ファイルでは、デフォルトでオンになっている認証パラメータが認証の目的で使用されます。これが設定されている場合、ユーザーはsudo でコマンドを実行する前に、パスワード (または他の認証手段) で自分自身を認証する必要があります。
ただし、このデフォルト値は、NOPASSWD (ユーザーが sudo コマンドを呼び出すときにパスワードを必要としません) タグを使用してオーバーライドできます。
ユーザー権限を構成する構文は次のとおりです。
user_list host_list=effective_user_list tag_list command_list
どこ :
user_list
– ユーザーまたは既に設定されているユーザー エイリアスのリスト。host_list
– ユーザーが sudo を実行できるホストまたはホスト エイリアスのリスト。Effective_user_list
– として実行する必要があるユーザー、またはエイリアスとして実行する必要があるユーザーのリスト。tag_list
– NOPASSWD などのタグのリスト。command_list
– ユーザーが sudo を使用して実行するコマンドまたはコマンド エイリアスのリスト。
ユーザー (以下の例では aaronkilik
) がパスワードなしで sudo を使用してすべてのコマンドを実行できるようにするには、sudoers ファイルを開きます。
sudo visudo
そして、次の行を追加します。
aaronkilik ALL=(ALL) NOPASSWD: ALL
グループの場合は、次のようにグループ名の前に %
文字を使用します。これは、sys
グループのすべてのメンバーがパスワードなしで sudo を使用してすべてのコマンドを実行することを意味します。
%sys ALL=(ALL) NOPASSWD: ALL
ユーザーがパスワードなしで sudo を使用して特定のコマンド (/bin/kill
) を実行できるようにするには、次の行を追加します。
aaronkilik ALL=(ALL) NOPASSWD: /bin/kill
以下の行により、sys
グループのメンバーが sudo を使用してコマンド /bin/kill、/bin/rm を実行できるようになります。パスワードなし:
%sys ALL=(ALL) NOPASSWD: /bin/kill, /bin/rm
詳細な sudo 構成と追加の使用オプションについては、他の例を説明した記事を参照してください。
- Linux で「sudo」を設定するための 10 の便利な Sudoers 構成
- 間違ったパスワードを入力すると Sudo があなたを侮辱します
- Linux で「sudo」パスワードのタイムアウト セッションを長く保つ方法
この記事では、パスワードを入力せずに sudo コマンドを実行するように設定する方法について説明しました。このガイドに関するご意見や、Linux システム管理者向けのその他の役立つ設定について、コメント欄にぜひお寄せください。