Модуль владельца iptables не найден - ошибка совпадения & ldquo; Нет цепочки / цели / совпадения с этим именем & rdquo;

Это свежая копия ubuntu на моем nVidia Jetson Nano, и я пытаюсь добавить следующее правило, чтобы заблокировать доступ к сети для пользователя 1001.

sudo iptables -A OUTPUT ! -o lo -m owner --uid-owner 1001 -j DROP

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

iptables: нет цепочки / цели / совпадения с этим именем.

Вот что я попробовал, это работает (ДА) и не работает (НЕ)

  1. ДА - Удалите критерии соответствия и замените на какое-то другое условие, например источник или цель [ 114]
  2. ДА - На другой аналогичной установке на Raspberry Pi
  3. НЕ - Изменить цепочку или цель на ВХОД, ПРИНЯТЬ и т. Д.
  4. НЕ - использовать другого пользователя
  5. НЕ - Попробуйте использовать имена пользователей вместо идентификатора пользователя
  6. НЕ - Попробуйте другое совпадение, например --gid-owner
  7. НЕ - Сброс таблиц, перезагрузка ПК и т. Д.
  8. НЕ - Убрал ! -o lo из вышеприведенной команды

Это мне не по силам, я действительно много чего перепробовал и прочитал через несколько сообщений с одинаковой ошибкой - в большинстве случаев они пытаются сделать что-то сложное - но это просто (и работает на моей другой установке!). Любые мысли о том, как это понять, будут оценены. Спасибо!

РЕДАКТИРОВАТЬ: Основываясь на комментариях ниже, вот результаты:

grep CONFIG_NETFILTER_XT_MATCH /boot/config-$(uname -r)

grep: /boot/config-4.9.140-tegra: Нет такого файла или каталога

Я вручную проверил наличие файла, и в папке загрузки нет файла, который начинается с config-XX. Дополнительно:

iptables -m owner --help

Не удалось определить, поддерживается ли ревизия 1, при условии, что это так.

....

опции соответствия владельца:

[!] --Uid-owner userid [-userid] Соответствие локальному UID

[!] --Gid-owner groupid [-groupid] Соответствие локальному GID

[!] --Socket-существующие Сопоставить, если сокет существует

3
задан 8 May 2019 в 19:59

1 ответ

sudo modinfo ipt_owner

Должен возвращать информацию о модуле, загружен он или нет. В большинстве дистрибутивов для настольных компьютеров и серверов они скомпилированы в ядро ​​и будут перечислены здесь.

вы можете попробовать загрузить его с помощью sudo modprobe ipt_owner

, но если это так, я подозреваю, что ваш дистрибутив не связывает его. Возможно, вы используете не «официальный» релиз Ubuntu, а тот, который был собран из источников ubuntu какой-либо третьей стороной?

Затем вам нужно загрузить исходные коды ядра и скомпилировать модуль самостоятельно для поддержки вашего варианта использования

0
ответ дан 8 May 2019 в 19:59

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

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