sudoコマンドのパスワードはどれくらいの頻度で要求されますか?どこで設定できますか?


24

私は非常に多くのsudoコマンドを実行します。

数分以内に1回実行してから2回実行すると、2回目にメッセージが表示されないことに気付きました。

[sudo] my_usernameのパスワード:

しかし、2つのコマンドの実行の間にもっと時間があればそれを取得します。

メッセージが表示されない期間はどのくらいですか?どうやって確認/更新できますか?


1
sudoのvisudoを、その後、%sudoのラインがあるべき%sudoのALL =(ALL:ALL)NOPASSWD:ALLあなたはsudoの任意の-ものを入力すると、それはあなたの任意のパスワードを要求しません
カシム

3
これ(NOPASSWD:ALL)は非常に危険な提案です。これにより、インストールが保護されなくなります。
スリ

回答:


31

デフォルトのタイムアウトsudoは15分です。つまり、sudoデフォルトで15分間パスワードを記憶します。

ファイルに文字列を追加することにより、このデフォルトのタイムアウトを変更できます/etc/sudoers。ただし、ファイルを直接変更するのではなく、代わりにコマンドを使用しますsudo visudo

そのためsudo visudo、ターミナルを入力します。これにより、(実際には、一時的な)ファイルが開かれ、好みのエディターを使用して編集できるようになります。

注:visudo初めて使用する場合は、使用するエディターを尋ねられるため、エディターを選択します。「より良い」エディタはありませんが、私は好みnanoます。visudo以前に使用したことがあるエディターを選択したが、とりあえず別のエディターを使用したい場合は、sudo EDITOR=vi visudoを使用するか、使用するようviに変更できnanoますnano。好みのエディターを永続的に変更する場合は、行いますsudo update-alternatives --config editor

この行を探してください:

Defaults    env_reset

そして、最後に(カンマで)追加します。Xは分単位で設定したい時間です。timestamp_timeout=X

したがって、例として、行は次のようになります。

Defaults    env_reset,timestamp_timeout=5

0を指定すると、常にパスワードが要求されます。負の値を指定すると、タイムアウトは期限切れになりません。

完了したら、保存して終了します。

ソース:RootSudoTimeout


@Alaa、ありがとう、それは良い、役に立つ答えです。副次的な注意点Ctrl + xとして、例えばエディターがそうであるように、パーツは常に一致するわけではありませんvi(私の場合)。
フェドルキ

ところで、新しい行を追加するのではDefault timestamp-0なく、新しい行を追加するだけで大​​きな間違いを犯しましたenv_reset。それは私のsudoersファイルを壊しました。それを解決するためにaskubuntu.com/a/73872/143251を使用しなければなりませんでした!
フェドルキ

@fedorqui:ファイルを直接編集する代わりに、visudo(Alaaの推奨)を使用する必要があるのはまさにそのためです。前者はファイルを構文チェックして、sudoからロックアウトされるのを防ぎます。
プルーター

はい、はい、それが私が@Plutorでしたことです。しかしvi、私が定義したエディターですvisudo。問題は、ファイルを閉じるときに警告メッセージが表示されたにもかかわらず、ファイルを保存したことです。明らかに、私のせいです。
fedorqui

1
@fedorqui、ええ、私は誰かが別のエディターを使用している可能性があるため、その部分を削除したかったのです。エディター固有ではないように回答を編集しました。
アラアアリ

3

こちらの投稿をご覧ください:http : //ubuntuforums.org/showthread.php?p=116697#post116697

/etc/sudoersファイルを編集しsudo visudo、安全のためにコマンドを使用します。毎回質問をtimestamp_timeout=0開始Defaultsする行に追加するか、X分の遅延に正のXを追加します。


1
私はそれを見るためにフォーラムに登録しなければなりません。その間、どのファイルを編集する必要timestamp_timeout=0があるかを行で親切に示すことができますか?
fedorqui

OK、固定答え。
ツミノイド

それはトリックをしました!より包括的な説明がありenv_reset、重要な参照が含まれているため、他の回答を受け入れます。とにかくこれはあなたの答えもとても役に立ちましたので、ありがとう!
fedorqui

0

これが期限切れかどうかはわかりませんが、試すことができます

sudo su

パスワードを尋ねられ、その後すべてのコマンドがsudoとして実行されます。


1
はい、@ Rat2000ですが、ユーザーではなくを使い続けたいですroot。もっと安全だと思います。とにかく、アドバイスをありがとう。
fedorqui

3
sudo suを使用すると、rootになります。プロンプトはroot @ yourpcになります。ルートには独自の.bashrcがあるため、エイリアスは機能しません。また、rootはシステムに深刻なダメージを与える可能性があるため、注意してください!
スペクター
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.