Ошибка iptables-restore в Debian buster/sid, если в файле правил есть опция --multiport

Даже в оболочке вызов localeне всегда дает надежные результаты.

Оболочка Борна, например. импортирует переменные среды в локальные переменные оболочки и пересылает импортированные значения своим дочерним элементам, но в то же время позволяет изменять связанные локальные переменные без изменения экспортируемого значения. Настройка локали Bourne Shell основана на внутренних значениях переменных оболочки, а не на импортированной или экспортированной среде.

Поскольку это относится к переменным LC _*, оболочка Bourne может работать в другом языковом стандарте, чем сообщает команда locale. Кстати, :вы можете изменить это, вызвав set -o posixв оболочке Bourne... чтобы указать оболочке Bourne синхронизировать экспортированные значения из импортированных переменных с внутренним значением.

Даже больше :Начиная с POSIX.1 -2008, существует способ разрешить программе использовать несколько языков одновременно. Это напр. важно для компиляторов, которые любят анализировать, например. константы с плавающей запятой в локали Cдля США, где используется необычный разделитель дробей с плавающей запятой '.' используется, но по-прежнему выдает предупреждения и другие выходные данные, основанные на другой локали.

Этот же метод также часто используется, чтобы многопоточные программы могли использовать разные локали для разных потоков.

Как видите, просмотр окружения других программ может дать лишь приблизительное представление о том, какой может быть локаль, но никогда не возвращает истинных разрешенных результатов.

1
22.03.2019, 16:42
1 ответ

Как пользователь А.Б. указывает на проблему несовместимости между nftables, которую использует Бастер, и iptables. Лучший способ сохранить правила iptablesдля восстановления с помощью iptables-restoreмежду совместимыми версиями.

Удалите нарушающую линию и восстановите правила:

iptables-restore < rules.q

Re -добавьте правило в конфигурацию и сохраните:

iptables -A INPUT -p tcp -m multiport --dports 22 -j ACCEPT
iptables-save > rules.q

Теперь повторите попытку восстановления:

iptables-restore < rules.q

Используйте iptables -L, чтобы убедиться, что все ваши правила действуют.

2
28.04.2021, 23:35

Теги

Похожие вопросы