ユーザーがサーバーに送信するすべてのコマンドが自動的に~/.bash_history
にログインすることを知っています
同僚に自分のPCへのアクセスを許可したい(私はすでに姫に/etc/sudoers
を介してSudoを使用するための制限付きアクセスを許可しています)、彼を信頼していても、彼が私に何をしたかを確実に知りたいですPC-だから私は確認する必要があります:
~/.bash_history
を危険にさらすことはできません(彼はファイルを切り捨てたり、何らかの方法で変更したりすることはできません)history -c
のようなものを実行することはできません何か忘れたかどうかはわかりませんが、PCに来たら、彼がしたことすべてを見ることができることを確認する必要があります。
Bash_historyおよびbash構成ファイルを追加専用にすることで、それらを強化します。
chattr +a /home/user/.bash_history
chattr +a /home/user/.bash_profile
chattr +a /home/user/.bash_login
chattr +a /home/user/.profile
chattr +a /home/user/.bash_logout
chattr +a /home/user/.bashrc
/home/user/.bashrcに次の行を追加して、環境変数を強化します。
shopt -s histappend
readonly Prompt_COMMAND="history -a"
readonly HISTFILE
readonly HISTFILESIZE
readonly HISTSIZE
readonly HISTCMD
readonly HISTCONTROL
readonly HISTIGNORE
histappend
は、対話型シェルが終了したときに、最後の$ HISTSIZE行を$ HISTFILEファイルに追加するようにbashに指示します。 Prompt_COMMAND
は、各プロンプトを発行する前に、指定されたコマンドを実行します。 history -a
は、現在のコマンドの直前に入力されたコマンドを$ HISTFILEに追加します。
他のシェルへのアクセスを無効にします。
chmod 750 csh
chmod 750 tcsh
chmod 750 ksh