ipset はファイルからロードされましたか?

ipset はファイルからロードされましたか?

再起動時に特定のファイルから ipset 定義 (1 つ以上の setname) をロードするにはどうすればよいですか?

たとえば、私は Linuxbox に SSH アクセスし、setname を定期的に更新して、setname ごとに 1 つの単純なテキスト ファイルを用意し、winscp エディターなどを使用して変更できるようにしたいとします。または、http または ftp アクセス可能なリモート ファイルからロードします。これは、1 つの場所から複数の Linuxbox を管理する場合に適しています。

答え1

非常に短縮したバージョン:

wget -qN http://192.168.10.50:9997/MT/maclist_raw
maclist_data=$(cat maclist_raw)
ipset create ipset_list_name hash:mac
for row_data in $maclist_data; do ipset add ipset_list_name ${row_data}; done
  • Linux OS のバージョンが多数あるため、再起動後の自動化は含まれていません。self を作成します。これは手動の方法です... すべての行がコード self です

1./ MAC リスト付きのソース データをダウンロードします (1 行に 1 つの MAC)
2./ ダウンロードしたファイルからデータを変数に読み取ります
3./ ipset リストを作成します「ipset_list_name」- タイプ:「ハッシュ:mac」
4./ 変数の各行をループし、それをipsecコマンドの入力データとして使用し、リストにMACを1つ追加します。

関連情報