私はさまざまなホスト(bar1、bar2など)からrsyncを介してバックアップを受信すると聞いた継承されたサーバー(foo)を持っています。
fooから提供される情報からbarのネットワーク情報(ホスト名またはIPアドレス)を識別しようとしています。これにより、バーにログインしてrsyncバックアップを無効にできます。 barシステムのすべてのデータはfooの/ uにバックアップされていると聞きました。 /uはホームディレクトリを埋めるようです。
公開システムのこれらのバックアップがいつ実行されるのか、どのくらいの期間実行できるのかわかりません。
ベストアンサー1
私が最初にしたことは、rsyncを実行するのにかかる時間を確認することでした。これを行うには、 auditd を使用できます。
サーバー上のrsync実行可能ファイルを監視します。
which rsync
/usr/bin/rsync
auditctl -w /usr/bin/rsync -k rsync
その後、auditdがこのようなアクセスを記録したかどうかを定期的に確認できます。
ausearch -i -k rsync
rsync の実行時期を知ったら、これを使用するリモートホストを識別できるようになりました。
例:
プロセスツリーを見て、rsyncが何を使用しているかを確認してください。
pstree -p|grep -i rsync
|-sshd(3861)-+-sshd(26209)---bash(26212)---rsync(27858)---rsync(27859)
PID 26209に接続されているリモートホストを確認してください。
netstat -anp|grep 26209
tcp 0 0 127.0.0.1:6010 0.0.0.0:* LISTEN 26209/sshd
tcp 0 0 10.10.10.20:22 10.10.10.40:64740 ESTABLISHED 26209/sshd
tcp 0 0 ::1:6010 :::* LISTEN 26209/sshd
これらすべては、pstreeとnetstatコマンドを実行できるようにrsyncが実際に少し時間がかかると仮定しています。 rsyncが非常に速い場合 - トレースを実行する別の方法がありますが、もっと難しいでしょう(systemtapを考えましたが、単に起動し、うまくいかない場合はより複雑なソリューションについて議論します)。