Каждый рано или поздно сталкивается с человеческим фактором (проще говоря "когда руки не из того места растут")
При допущении ошибки в конфиге ее можно легко пофиксить поправив конфиг повторно.
Но в случае с iptables все не так просто, потому что, при копировании конфига можно легко потерять доступ (элементарная ошибка в названии интерфейса или ip сервера итд итп)
К чему я веду:
Есть вариант написать bash скрипт который позволит привязываться к какому, то тригеру при потери связи с сервером.
Логика такая:
Запускаеться bash скрипт с правилами iptables
1) сразу после запуска бэкапиться предыдущий конфиг:
iptables-save>iptables-rules-old
2) применяется новая цепочка правил и выполняется тригер
3) проверяется тригер.
Варианты тригера пока вижу следующие:
а)
создать файл и
если он не удален на протяжении 1минуты:
iptables-restore<iptables-rules-old
если удален:
iptables-save>iptables-rules-old
б)
проверять существует ли подключение к серверу по ssh порту (но это не надежно)
в)
оставлять себе любимому лазейку на ssh порт через дополнительный скрипт и по истечении 5ти минут удалять ее
Какие еще есть варианты?