Буквально только что выстрелил себе в ногу. Настраивал iptables на одном из серверов. Надо было просто базовый набор правил сделать с заделом на будущее, если вдруг что-то понадобится ограничить. Я обычно за основу беру свой же список правил из статьи
https://serveradmin.ru/centos-nastroyka-servera/#Nastraivaem_firewall Просто копирую набор правил в bash скрипт и запускаю. Пользуюсь статьей уже несколько лет, поэтому точно знаю, что проблем с правилами быть не должно. Достаточно только заменить ip адрес и имя интерфейса. Но в этот раз что-то пошло не так. Применил правила, получил кучу ошибок синтаксиса iptables и меня отрубило от сервера.
Я то знаю заветное правило - настройка firewall без доступа к консоли - к дальней дороге. Я подключился по vnc к серверу и посмотрел, в чем проблема. Оказывается, после какого-то обновления движка сайта, он двойные тире -- стал заменять на одинарные и пробел. Соответственно, обычный копипаст правил с сайта приводит к тому, что правила не работают так, как задумывалось. Успевают примениться начальные правила блокировки, а до разрешений дело не доходит.
К чему я все это написал? Чтобы лишний раз напомнить, не надо лезть в настройки фаервола если нет доступа напрямую к консоли сервера, чтобы откатить настройки в случае проблем. У меня для минимизации вероятности опечаток и ошибок есть рецепт ansible для настройки iptables, но в данном случае стало лень его запускать, так как нужна была типовая пустая настройка, которую копипастом было сделать банально быстрее. В итоге получилось дольше :)
Кстати, предвидя подобные проблемы, в своей статье по
настройке iptables я все правила сделал в виде картинок, а в конце привел текстовый файл с полным набором показанных правил. За такую заботу о людях получил немного негатива в комментах. Не все поняли такую заботу.