使い捨てのsudoアカウントを持つ方法はありますか?
私の使用例は次のとおりです。
コンピュータへのリモートSSHを許可しないUbuntuステーションがあります。この機器は通常、公共のコンピュータとして使用されます。しかし、時にはSMSやIM通信などに基づいて、特定の人(個人的に知っている人)にrootアクセス権を与えたい場合があります。もちろん、それらにフルルートアクセス権を与えるという意味ではなく、特定のコマンドを使用しないように制限するだけですapt-get
。私は彼らに書くことを許すつもりはありません/etc
。
しかし、明らかにルートパスワードを共有したくありません。そして、私はこれらの人々が永遠にrootアクセス権を持っていることを望んでおらず、手動でアカウントを削除したり、パスワードを変更したくありません。
だから(十分に大きい)rootアクセスアカウントを作成し、そのパスワードを私のラップトップまたは携帯電話に保存することを検討しました。誰かにrootアクセスを提供する必要がある場合は、sudoパスワードキャッシュのタイムアウトが終了したら、削除するアカウントのログイン情報をその人に送信します。
これが良いアプローチだと思いますか?それでは、削除スクリプトをどこでどのように設定しますか?
答え1
使い捨て sudo のようなことは見たことがないのにsudo
使い捨てパスワードを設定すればそれでも一度は受けられます。 Linux Journalには次のタイトルの記事があります。OTPWを使用したワンタイムパスワード認証の構成、これを行うさまざまな方法について説明します。彼らはこれを促進するために3つのパッケージについて議論しました。
私はそれらのどれも使用したことがないので、指示や実際の使用経験を提供することはできませんが、LJの記事と私のお気に入りのリソースには始めるために必要なものがすべて含まれているようです。
答え2
ユーザーに root で任意のコマンドを実行する権限を付与すると、そのユーザーはバックドアを植えることができます。インストールは簡単ではありませんが、ルートキット見つからず、他の人が難しい作業を行っており、事前に作成されたルートキットをダウンロードしてインストールできます。したがって、セキュリティの観点から、ワンタイムルートアクセスは、永続ルートアクセスよりも制限されなくなります。
ユーザーを信頼している場合は、そのユーザーにsudoアクセス権を付与してから、そのアクセス権を取り消してください。ユーザーを信頼できない場合は、sudoアクセス権を付与しないでください。
ユーザーに特定のコマンドを実行する権限を付与する場合は、タイムアウトの sudo アクセスが適切です。しかし、ワンタイムアクセスを許可することはお勧めできません。特定の時点にアクセス権を付与し、そのアクセス権を取り消します。たとえば、sudoers ファイルに行を追加し、その行を削除するように at アクションを設定して、24 時間のアクセス権を付与できます。