Linuxマシンlsof
でその時点で使用しているプロセスの開いているファイルを表示できることを知っています。ただし、プロセスはファイルを非常に迅速に開いたり、変更したり閉じたりすることができるためwatch
、「Linuxで開いているプロセスファイルを監視する(リアルタイム)」で説明されているように、標準のシェルスクリプト(たとえば)を使用して監視すると表示できません。
だから、私はプロセスを監査する簡単な方法を探していて、それが時間の経過とともに何をしてきたかを見ると思います。監査を開始せずにプロセスを実行する時間をとる前に、どのネットワーク接続(試行)が行われたかを確認し、監査を開始できるようにすることもできれば素晴らしいことです。
理想的には、私はこれをしたいと思います:
sh $ audit-lsof /path/to/executable
4530.848254 OPEN read /etc/myconfig
4530.848260 OPEN write /var/log/mylog.log
4540.345986 OPEN read /home/gert/.ssh/id_rsa <-- suspicious
4540.650345 OPEN socket TCP ::1:34895 -> 1.2.3.4:80 |
[...]
4541.023485 CLOSE /home/gert/.ssh/id_rsa <-- would have missed
4541.023485 CLOSE socket TCP ::1:34895 -> 1.2.3.4:80 | this when polling
strace
すべてのシステムコールを表示しないフラグといくつかのフラグを使用してこれは可能でしょうか?
継続的にプロセスがアクセスするオープンしたファイル/監視
—
phuclv