sudoを使用してコマンドを実行するためのパスワードはどのくらいの期間キャッシュされますか?

sudoを使用してコマンドを実行するためのパスワードはどのくらいの期間キャッシュされますか?

root権限を必要とするコマンドを実行すると、sudo現在のユーザーのパスワードの入力を求められます。しばらくしてを使用して同じタイプのコマンドを実行すると、sudoパスワードの再入力を求められません。だから私の推測では、パスワードが期限切れになるまでどこかにキャッシュされています。この有効期限はどのくらいですか?構成できますか?

答え1

man 5 sudoers私たちに知らせるオプションがありますtimestamp_timeout

timestamp_timeout

sudoがパスワードを再要求するまでに経過できる時間(分)。小さな粒度だけでは十分ではない場合、時間制限には2.5のような小数部が含まれる場合があります。デフォルトは 5 です。常にパスワードの入力を求める場合は、0に設定してください。 0より小さい値に設定すると、ユーザーのタイムスタンプは期限切れになりません。これは、ユーザーがそれぞれ「sudo -v」と「sudo -k」を介して独自のタイムスタンプを作成または削除できるようにするために使用できます。

はい。設定/etc/sudoersでき、デフォルトでは5分後に有効期限が切れます。

また、visudo修正するためにペアを使用することを忘れないでください/etc/sudoers。編集内容を保存すると、visudosudoersファイルが実際に上書きされる前に検証が実行されます。これにより、アクセスできないようにロックされている場合にsudo痛みを伴う回復プロセスからユーザーを保護できます。

答え2

これは構成によって異なります。ほとんどのディストリビューション(およびソースコード)のデフォルト値は5分timestamp_timeoutですが/etc/sudoers。からman sudoers

sudoがパスワードを再要求するまでに経過できる時間(分)。小さな粒度だけでは十分ではない場合、時間制限には2.5のような小数部が含まれる場合があります。デフォルトは 5 です。常にパスワードの入力を求める場合は、0に設定してください。 0より小さい値に設定すると、ユーザーのタイムスタンプは期限切れになりません。これは、ユーザーがそれぞれ「sudo -v」と「sudo -k」を介して独自のタイムスタンプを作成または削除できるようにするために使用できます。

たとえば、ユーザーのタイムアウトを20分に設定するには、またはのファイルchrisに次を追加します(注:このファイルの規則の順序/etc/sudoers/etc/sudoers.dそしてこれらのファイルの順序は重要です。後で実行される規則によって誤って上書きされないように注意してください。

Defaults:chris timestamp_timeout=20

関連情報