web-dev-qa-db-fra.com

Module propriétaire iptables introuvable - erreur de correspondance "Pas de chaîne / cible / correspondance par ce nom"

Il s'agit d'une nouvelle copie d'ubuntu sur mon nVidia Jetson Nano, et j'essaie d'ajouter la règle suivante pour bloquer l'accès au réseau pour l'utilisateur 1001.

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

J'obtiens l'erreur suivante:

iptables: Aucune chaîne/cible/correspondance de ce nom.

Voici ce que j'ai essayé qui fonctionne (OUI) et ne fonctionne pas (NON)

  1. OUI - Supprimer les critères de correspondance et remplacer par une autre condition comme la source ou la cible
  2. OUI - Sur une autre installation similaire sur Raspberry Pi
  3. NON - Changez la chaîne ou la cible en ENTREE ou ACCEPTER etc.
  4. NON - Utilisez un autre utilisateur
  5. NON - Essayez d'utiliser des noms d'utilisateur au lieu de l'ID utilisateur
  6. NON - Essayez une correspondance différente comme --gid-owner
  7. NON - Rinçage des tables, redémarrage du PC, etc.
  8. NON - Suppression du ! -o lo à partir de la commande ci-dessus

Cela me dépasse, j'ai vraiment essayé beaucoup de choses et lu un certain nombre de messages avec la même erreur - la plupart du temps, ils essaient de faire quelque chose de complexe - mais c'est simple (et fonctionne sur mon autre installation!) . Toute réflexion sur la façon de comprendre cela serait appréciée. Merci!

EDIT: Sur la base des commentaires ci-dessous, voici les sorties:

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

grep: /boot/config-4.9.140-tegra: Aucun fichier ou répertoire de ce type

J'ai vérifié manuellement le fichier et il n'y a pas de fichier commençant par config-XX dans le dossier de démarrage. Aditionellement:

iptables -m owner --help

Impossible de déterminer si la révision 1 est prise en charge, en supposant que ce soit le cas.

....

options de correspondance du propriétaire:

[!] --uid-owner userid [-userid] Correspond à l'UID local

[!] --gid-owner groupid [-groupid] Correspond au GID local

[!] --socket-exist Correspond si le socket existe

3
ste_kwr

Sudo modinfo ipt_owner

Devrait retourner des informations sur le module s'il est chargé ou non. Dans la plupart des distributions de bureau/serveur, il est compilé dans le noyau et serait répertorié ici.

vous pouvez essayer de le charger avec Sudo modprobe ipt_owner

mais si c'est comme si je pensais que votre distribution ne le regroupait pas. Peut-être que vous n'utilisez pas une version Ubuntu "officielle" mais une version construite à partir de sources Ubuntu par un tiers?

Ensuite, vous devez télécharger vos sources du noyau et compiler le module vous-même pour prendre en charge votre cas d'utilisation

1
tomodachi