ip6tables ресурс
Используйте ip6tables ресурс проверки аудита Chef InSpec, чтобы протестировать правила, определённые в ip6tables, который поддерживает таблицы правил фильтрации пакетов IP для IPv6. Таких таблиц может быть несколько. Каждая таблица содержит одну (или несколько) цепочек (как встроенные, так и пользовательские). Цепочка — это список правил, которые сопоставляют пакеты. Когда правило соответствует пакету, правило определяет, какое целевое назначение присвоить пакету.
Доступность
Установка
Этот ресурс распространяется вместе с самим Chef InSpec. Вы можете использовать его автоматически.
Версия
Этот ресурс впервые стал доступен в версии v4.6.9 InSpec.
Синтаксис
Блок ресурса ip6tables объявляет тесты для правил в таблицах IP:
describe ip6tables(rule:'name', table:'name', chain: 'name') do
it { should have_rule('RULE') }
end
где
-
ip6tables()может указывать любую комбинациюrule,table, илиchain -
rule:'name'— имя правила, которое сопоставляет набор пакетов -
table:'name'— таблица соответствия пакетов, против которой выполняется тест -
chain: 'name'— имя пользовательской цепочки или одно изACCEPT,DROP,QUEUE, илиRETURN -
have_rule('RULE')тестирует правило в списке ip6tables. Оно должно точно соответствовать всей строке, взятой изip6tables -S CHAIN.
Примеры
Следующие примеры показывают, как использовать этот ресурс проверки аудита Chef InSpec.
Проверка, что цепочка INPUT находится в режиме по умолчанию ACCEPT
describe ip6tables do
it { should have_rule('-P INPUT ACCEPT') }
end
Проверка, что цепочка INPUT из таблицы mangle находится в режиме ACCEPT
describe ip6tables(table:'mangle', chain: 'INPUT') do
it { should have_rule('-P INPUT ACCEPT') }
end
Проверка наличия правила, разрешающего трафик Postgres (5432/TCP)
describe ip6tables do
it { should have_rule('-A INPUT -p tcp -m tcp -m multiport --dports 5432 -m comment --comment "postgres" -j ACCEPT') }
end
Обратите внимание, что спецификация правила должна точно соответствовать выводу ip6tables -S INPUT, который будет зависеть от того, как вы создали свои правила.
Матчеры
Полный список доступных матчеров можно найти на нашей странице матчеров.
have_rule
Матчер have_rule проверяет именованное правило против информации в файле ip6tables:
it { should have_rule('RULE') }
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/ip6tables/