Sudo権限により、ユーザーはLinuxOSで管理タスクを実行できます。コマンドをsudoとして実行すると、最初にsudoパスワードを入力するように求められます。ただし、最初のコマンドの直後に実行する他のコマンドの場合、sudoパスワードの入力は求められません。この特権は15分間持続し、この時間内に、パスワードなしでsudoを使用できます。 15分間操作がないと、sudoとして実行する各コマンドがsudoパスワードを要求します。システムから離れている場合に誰かがアクセスして管理コマンドを実行することを心配する必要がないので、これは良いことです。
ただし、このタイムアウトをデフォルト値よりも短くしたり、少し長くしたりする必要があるシナリオがあります。たとえば、sudoコマンドが実行されるたびにシステムがsudoパスワードの入力を求めるようにしたい場合があります。同様に、システムに物理的にアクセスできるのが自分だけの場合は、sudoのタイムアウトを少し長くしたい場合があります。
この投稿は、LinuxOSでsudoパスワードのタイムアウトを変更する方法についてです。 Ubuntu 20.04 LTSを使用します デモンストレーション用。同じ方法を他のLinuxディストリビューションでも使用できます。
注 :ユーザーにsudo権限を割り当てる場合は、UbuntuでSudoersにユーザーを追加する方法に関するガイドをご覧ください。
Sudoパスワードタイムアウトの変更
すでに説明したように、sudoセッションのデフォルトの制限時間は15分です。デフォルト設定はsudoersファイルから変更できます。手順は次のとおりです。
1.ターミナルで以下のコマンドを使用してsudoersファイルを編集します:
$ sudo visudo
sudoパスワードを入力します。 Ubuntu OSを使用している場合、sudoersファイルはNanoエディターで開きますが、他のOSの場合は、Viで開く場合があります。
2.ファイルの最後までスクロールして、次の行を追加します。
Defaults timestamp_timeout=x
ここで、「x」は、sudoがパスワードを要求する前に待機する分数です。
この行は、システム上のすべてのユーザーのsudoパスワードタイムアウトを変更します。特定のユーザーのタイムアウト値を変更するには、代わりに次のコマンドを使用します。
Defaults:user timestamp_timeout=x
xに「-1」を使用すると、再起動するまでsudoパスワードの入力を求められません。 xに「0」を使用すると、実行するコマンドごとにsudoパスワードの入力を求められます。
Sudoパスワードタイムアウトのリセット
ユーザーのキャッシュされたクレデンシャルをクリアすることで、sudoパスワードのタイムアウトをリセットすることもできます。コマンドは次のとおりです。
$ sudo -k
そうすることで、制限時間に達する前でも、次のsudoコマンドのパスワードを入力するように求められます。
それでおしまい! sudoersファイルに1つのエントリを追加することで、sudoパスワードのタイムアウトを簡単に変更できるようになったことを願っています。 Nanoの代わりにViを使用している場合は、ここで説明されている手順に従ってください。