sudo コマンドの実行時にパスワードの入力を求められない

sudo コマンドの実行時にパスワードの入力を求められない

何らかの理由で出版時に突然パスワードを入力する必要がなくなりましたsudo some_cmd

私が入力したコマンドは、rootとしてログインしていなくてもパスワードを要求せずに実行されます。ただし、まだroot権限を必要とするコマンドを呼び出す必要がありますsudo。 Ubuntu 10.04を使用しています。

原因は何か知っていますか?

答え1

sudo -Kテストを言ってもう一度やり直してください。もう一度尋ね始めたら、sudoしばらくパスワードを覚えておくように設定しました。

とりわけ、Ubuntuはデフォルトでsudo資格情報を覚えているように設定されていますttyssh発見したように、各新しいssh接続は下位レベルのオペレーティングシステムコードのための新しい端末のように見えるので、これはセッションに影響を与えます。

これは、グラフィックターミナルアプリケーションのようなものにも影響します。 Ctrl-Shift-Tを使用して認証した後に新しいタブを作成すると、そのタブにパスワードを再入力する必要はsudoなく、新しいタブを閉じることもできます。通常のパスワード制限時間内に再開すると、パスワードを再入力せずに端末が完全に実行されます。この動作は、この機能を有効にしておくことを決定するのに十分です。sudottysudo

今日、Mac OS Xもこのように動作します。

すべての*ixがそうするわけではありません。 Red Hat Enterprise Linux(およびCentOSなどの派生製品)はすべて新しいtty

次のようにDefaults行を変更して、両方の動作を無効にできます。/etc/sudoers

Defaults=env_reset,timestamp_timeout=0,tty_tickets
  • このenv_resetビットはすでにそこにある必要があり、ここでは関係ありません。

  • このtimestamp_timeoutディレクティブは、各セッションがただちにタイムアウトするように指示しますsudo。これはsudo -K、すべての一般的なコマンドsudoの後にこれを言うのと同じです。

  • このディレクティブは、ユーザー名だけでなく、資格情報が使用されるオブジェクトに関連付けられるようtty_ticketsにします。ttyこれはデフォルトでなければならず、Ubuntuではこのように文書化されていますが、上記のsudo便宜上の理由でこのオプションを無効にするにはディストリビューションを構築する必要があります。

関連情報