0

当社の監査ポリシーの一環として。Linux マシン上のすべてのファイルを検索して、ルート認証情報を含むファイルを探す必要があります。

このコマンドは root 以外のアカウントで実行されるため、結果には多くの「許可が拒否されました」ステートメントが含まれます。

すべてのファイルを検索し、結果をフィルタリングして有用なリンクのみを表示するための適切な構文の提案!

私が試した:grep - "root" / | grep「パスワード」

ただし、このコマンドはルート以外のアカウントを使用して実行されるため、結果の大部分は「許可が拒否されました」です。

ありがとう

4

4 に答える 4

1

あなたは行くでしょう:

grep -lir "root" /

この-lスイッチは、(テキストを含む各行ではなく) テキストが含まれるファイルの名前のみを出力し、-iスイッチは大文字と小文字を区別せず、-rサブディレクトリに降ります。

編集1:

他のユーザーのファイルを読み取ろうとしない限り、root 以外で実行しても問題ありません。

編集2:

有用なリンクのみを表示するには、次のようにします。

grep -lir -v "Permission denied" "root" /

-vスイッチは、一致の意味を反転させ、一致しない行を選択するためのものです。

于 2013-10-13T17:12:04.073 に答える
1

アクセス許可エラーは に出力されるstderrため、単純に にリダイレクトできます/dev/null/。例えば:

grep -R "root" . 2> /dev/null
于 2013-10-13T17:14:59.667 に答える
0

/dev/null へのリダイレクトで警告を抑制することができます。

このソリューションでは、find を使用して (アクセス可能な) ファイルシステム全体を調べます。

find / -readable -exec grep -H root '{}' \; 2>/dev/null | grep password
于 2013-10-13T17:20:59.250 に答える