私はSLESに初めてアクセスし、どのIPアドレスがコマンドを実行したかを知る必要があります。私が遭遇したすべてを検索しました。これ/var/log/auth.log
しかし、私には、またはありません/var/log/secure
。 SSHを使うべきかどうかわかりません。ユーザーの履歴()を表示する方法はわかっていますが、.bash_history
IPアドレスは保存されず、コマンドのみが保存されます。
とにかくSLESでこれを行うことはできますか? 11 特にSSHを使用する場合も同様です。
答え1
IPアドレスはコマンドを実行しません。コマンドは常にローカルで実行されるプログラムによって実行されます。コマンドを実行した人に関する関連法医学情報は、プログラムを実行したユーザーであることがよくあります。
ネットワーク入力を受信するサーバーにコマンドを逆追跡できます。たとえば、SSHサーバープロセスによって生成されたセッションでコマンドが実行されたことを検索し、サーバープロセスがリッスンしているリモートコンピューターを見つけます。そのコマンドが端末で実行されている場合は、そのコマンドがどの端末で実行されているかを確認してこの情報を取得できます。who
このコマンドを実行しているユーザーとログインした場所を確認してください。その後の時間、ユーザー端末、IPアドレス間の関連付けは、次の方法でアクセスできます。last
。
個々のコマンドはデフォルトでは記録されません。これを行うには、設定する必要があります。シンプルでオーバーヘッドの低いアプローチは次のとおりです。プロセス会計:Installを実行し、acct
サービスが有効になっていることを確認してから、各個別のコマンドを記録します(パラメータは除く)。走る
lastcomm
命令、時刻、端末に関連するログを表示します。その後、報告されたIPアドレスに情報を渡すことができますlast
。
答え2
/etc/profileにこのコードを追加してください。
mkdir /var/log/history;chmod 777 /var/log/history
USER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`
export HISTFILE=/var/log/history/$(whoami)-$USER_IP-history
使用日に履歴ファイル名を追加することもできます。