理由を記録するために再起動するなど、コマンド機能の拡張

理由を記録するために再起動するなど、コマンド機能の拡張

たとえば、システムコマンドの機能を拡張して、これらのコマンドを実行したときにユーザーが監査証跡の一部として理由やその他の情報を入力する必要がありますかreboot? Windowsサーバーと同じです。shutdown -r nowinit 6

したがって、再起動の目的を入力したら、ログのどこかに保存する必要があります。たとえば、目的には、ユーザーがコマンドを実行した変更番号、日付を含める必要があります。

答え1

Windows Serverに慣れていない人のために、しばらくの間比較の説明をします。 Windows Server のシャットダウンまたは再起動を求めるプロンプトが表示された場合、GUI はユーザーに要求の理由を提供するよう求めるメッセージを表示し、その内容は監査ログに記録されます。 (これはPowerShell(コマンドライン)再起動要求の場合はオプションです。)また、再起動の理由なくWindows Serverが起動すると、次に適切な権限を持つユーザーがシステムにログインしたときに再起動するように求められます。 。


あなたの提案はある程度効果があります。rebootスケジュールされたタスクやログインした管理ユーザーがいない場所でコマンドを実行する場合は、何が起こるのかを考慮する必要があります。また、単純な監査証跡を提供したいのか、またはバイパスがほとんど不可能なほど、システムに深すぎる監査証跡を提供したいのかなど、シナリオでどの程度進行したいのかを考慮する必要があります。明らかに後者の費用は増加するだろう。

この問題を解決する1つの方法は、コマンドをたとえばに移動することですreboot。次に、GUIまたはコマンドラインから必要な理由やその他の情報を表示するreboot.binスクリプトを作成します。これは適切なログファイル(おそらく)rebootに書き込むことによって行われます。このプロセスは他の「保護された」コマンドに対して繰り返すことができます。エチケットに加えて、権限を持つユーザーが実際のユーザーなどを直接実行するのを防ぐ方法はありません。syslogauth.logreboot.bin

これmolly-guardパックこれを実装、実際のコマンドを実行する前に一連のスクリプトを実行します。

この問題を処理する別の方法は、「保護された」コマンドのソースコードを取得してデフォルトで拡張することです。作業が難しく、避けるのが少し難しいです。 (Windowsで閉じるダイアログをバイパスすることは難しくありません。コマンドラインを使用するだけです。)

関連情報