lxc/lxd Ошибки правила владельца вывода iptables с "Неверный аргумент".

Если я попытаюсь выполнить следующую команду в моем контейнере lxc/lxd Ubuntu 14.04 amd64:

iptables -A OUTPUT -p tcp -m owner --uid-owner 0 -m tcp --dport 80 -j ACCEPT

Я получаю следующее сообщение об ошибке:

iptables: Invalid argument. Run `dmesg' for more information.

...но /var/log/dmesg не получает никакого дополнительного вывода.

Я уверен, что правило iptables действует, потому что оно работает на хосте lxc / lxd и на других машинах. Часть, которая, кажется, виновата, является частью владельца, то есть, если я запускаю это:

iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

... это работает отлично.

Мне это кажется ошибкой в ​​lxc, но есть ли способ, которым я могу исследовать это дальше?

Редактировать 1

Я собрал iptables из источника с флагами отладки, а затем проследил выполнение. Это привело меня к iptables-standalone.c файл, в котором находится:

int iptc_commit(struct xtc_handle *handle);

... функция возвращает EINVAL код ошибки. Проблема в том, что я не могу отследить источник для этой функции. Кажется, находится в libip4tc.so общая библиотека, но я не могу отследить источник этой библиотеки.

Если кто-то знает, где источник, я был бы признателен, если бы вы могли дать мне знать.

Редактировать 2

Обратитесь к этой проблеме LXC GitHub, которую я создал, которая рисует больше картины. Я собираюсь сдаться, только потому, что работа слишком обширна для меня, чтобы я мог ее взять, когда я могу просто обойти проблему, избегая "соответствующих" правил iptables в контейнерах.

1 ответ

Решение

Все, что вам нужно сделать, это установить конфигурацию "security.privileged" контейнера в "true", так как по умолчанию это "false".

Т.е. обращайтесь к этому и ищите эту конфигурацию "security.privileged".

Я не совсем уверен, что делает изменение этого конфига, так что будьте осторожны и исследуйте себя, но я думаю, что он просто предоставляет контейнеру больше привилегий в отношении управления общим ядром (общим для хоста и контейнера).

Другие вопросы по тегам