現在、彼らの活動をどのように記録していますか?最も簡単な方法は、vi からのシェルの起動をブロックすることです。
# vi /home/user/.exrc
set exrc
set shell=/bin/false
# chown root:root /home/user/.exrc
# chmod 644 /home/user/.exrc
# chattr +i /home/user/.exrc
コマンドをログに記録するために特別なシェルを使用している場合は、そのシェルのみを使用するように vi を変更できます。
プロセスアカウンティングをオンにすることもできます ( s/can/should/ !)
次に使用できます:
lastcomm(1)
コマンドの実行と、コマンドが fork の後に実行されたかどうか、exec の有無にかかわらず表示されます。
ホストベースの IDS と組み合わせると、「王の正義が彼に下されるようにする」ために必要なものが得られます。
シェルの歴史について話しているのですか? vi シェル モード (:sh
) はユーザーのデフォルト シェルを起動します。それが bash の場合、グローバル /etc/bashrc を編集して以下を追加することにより、履歴ログが常に有効になっていることを確認できます。
set HISTFILE=~/.bash_history
shopt -s histappend
PROMPT_COMMAND='history -a'
これにより、すべてのユーザー コマンドがファイルに記録され、上書きされず、シェル プロンプトが表示されるたびに更新されます。
ユーザーは自分の ~/.bashrc
でこれを上書きできることに注意してください したがって、これはロギングが行われるという絶対的な保証ではありません。
vi の一部のバージョン (nvi など) は、vi を nvi -S
として起動することにより、シェル アクセスを無効にするセーフ モードをサポートしています。 . /etc/bashrc
でグローバル エイリアスを設定できます デフォルトでもこのモードを強制します。
一般に、ユーザーが予期しない手段でシェルにアクセスする問題は、古典的な UNIX の問題であることに注意してください。これを完全に無効にする方法はありません。最善の方法は、デフォルトでアクセスを制限することです。熟練したユーザー (または Google の使い方を知っているユーザー) は、常にこれらの制限を回避できます。たとえば、ユーザーがシェルの履歴をログに記録したくない場合は、使用したいオプションを指定して、シェルの新しいコピーをいつでも実行できます。
これは、bash で強制的にログを記録する方法と、ログを回避する方法に関する優れた記事です。
最後に、ユーザーが何をしているのかを判断するために、ユーザーと話すことだけを考えましたか? 99% の場合、単純な口頭でのコミュニケーションで混乱を解消できます。このユーザーを信頼していないためにこのユーザーのアクティビティをログに記録している場合は、懸念について話し合うことができます。