サーバーでUFWルールが変更された場合にファイルを作成するように設計された次のbashスクリプトを作成しました。このファイルの存在は、Zabbix で確認されます。
#!/bin/bash
file="/tmp/ports.txt"
file_open="/tmp/open_ports.txt"
md5_file=$(md5sum /tmp/ports.txt | awk '{ print $1 }')
md5_file_open=$(md5sum /tmp/open_ports.txt | awk '{ print $1 }')
file_diff="/tmp/ports_diff"
if [[ ! -f $file ]]; then
touch $file && sudo ufw status|grep ALLOW > $file
fi
if [ -f $file_diff ];then
rm $file_diff
fi
sudo ufw status|grep ALLOW > $file_open
if [ $md5_file != $md5_file_open ];then
touch $file_diff
fi
私が見つけたのは、ファイルが作成または削除されるべきときにファイルが作成または削除されないことがありますが、それ以上変更せずにコマンドを2回目または3回実行すると、ファイルが作成されることです。
助けてください。
ありがとう