Rendre persistante la cmde echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct

13 réponses
Avatar
Olivier
Bonjour,

Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct

Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?

J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1

J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct

0

Je ne vois aucun message d'erreur dans les logs.

Slts

10 réponses

1 2
Avatar
NoSpam
Bonjour. Quelle version de kernel ? Que dit sysctl -p ? Puis sysctl -n
net.netfilter.nf_conntrack_acct ?
Le 04/05/2022 Í  11:17, Olivier a écrit :
Bonjour,
Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?
J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0
Je ne vois aucun message d'erreur dans les logs.
Slts
Avatar
Olivier
Voici les infos demandées:
# uname -a
Linux gsapilot 5.10.0-13-amd64 #1 SMP Debian 5.10.106-1 (2022-03-17)
x86_64 GNU/Linux
# sysctl -a|grep nf_conntrack_acct
0
# sysctl -p /etc/sysctl.d/foo.conf
net.ipv4.ip_forward = 1
net.netfilter.nf_conntrack_acct = 1
# sysctl -a|grep nf_conntrack_acct
1
Si je comprends bien, la commande "sysctl -p <nomdufichier>" déclenche
la mise Í  jour du paramètre net.netfilter.nf_conntrack_acct
mais cette commande n'est pas exécutée au démarrage ou bien elle est
exécutée mais son exécution ne donne pas l'effet escompté.
Le mer. 4 mai 2022 Í  11:28, NoSpam a écrit :
Bonjour. Quelle version de kernel ? Que dit sysctl -p ? Puis sysctl -n
net.netfilter.nf_conntrack_acct ?
Le 04/05/2022 Í  11:17, Olivier a écrit :
Bonjour,
Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?
J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0
Je ne vois aucun message d'erreur dans les logs.
Slts
Avatar
NoSpam
Le 04/05/2022 Í  15:04, Olivier a écrit :
Voici les infos demandées:
# uname -a
Linux gsapilot 5.10.0-13-amd64 #1 SMP Debian 5.10.106-1 (2022-03-17)
x86_64 GNU/Linux
# sysctl -a|grep nf_conntrack_acct
0
# sysctl -p /etc/sysctl.d/foo.conf
net.ipv4.ip_forward = 1
net.netfilter.nf_conntrack_acct = 1
# sysctl -a|grep nf_conntrack_acct
1
Si je comprends bien, la commande "sysctl -p <nomdufichier>" déclenche
la mise Í  jour du paramètre net.netfilter.nf_conntrack_acct
mais cette commande n'est pas exécutée au démarrage ou bien elle est
exécutée mais son exécution ne donne pas l'effet escompté.

C'est procps qui s'occupe de cela, systemctl status procps
Perso je fais sysctl -p (sans nom de fichier) après chaque
modification(s) celle(s) ci persiste(nt) dans le temps.
Le mer. 4 mai 2022 Í  11:28, NoSpam a écrit :
Bonjour. Quelle version de kernel ? Que dit sysctl -p ? Puis sysctl -n
net.netfilter.nf_conntrack_acct ?
Le 04/05/2022 Í  11:17, Olivier a écrit :
Bonjour,
Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?
J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0
Je ne vois aucun message d'erreur dans les logs.
Slts
Avatar
̓‰tienne Mollier
--ZammEhA5tKjnSFUs
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Bonjour Olivier,
Olivier, on 2022-05-04:
J'ai essay̓© avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-apr̓¨s.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la premi̓¨re ligne produit l'effet escompt̓©:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0

En d̓©marrant le syst̓¨me avec comme argument de d̓©marrage
nf_conntrack.acct=1, est ce que ̓§a aide͂ ?
Un moyen de l'appliquer est d'̓©diter /etc/default/grub, et de
r̓©gler la variable GRUB_CMDLINE_LINUX_DEFAULT, par exemple͂ :
GRUB_CMDLINE_LINUX_DEFAULT="nf_conntrack.acct=1"
et puis de reconstruire les entr̓©es de menu grub͂ :
$ sudo update-grub
Bonne journ̓©e, :)
--
̓‰tienne Mollier
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/tty1, please excuse my verbosity.
On air: Genesis - The Return of the Giant Hogweed
--ZammEhA5tKjnSFUs
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEj5GyJ8fW8rGUjII2eTz2fo8NEdoFAmJytyAACgkQeTz2fo8N
Edo7RhAAn4rkySWUBhbuvH/zzXpv8+K5Eqo7o6jnIfBvq43OALRZowgwueqnsQjz
yEwydxIL5Vx11nYTfwoQ6YzqMpPKY8QD1ntQnXZ7GYg6PW9Ya2hmmapZ1g3s2NKR
X/gWBbScaUNPTkzBHMBCLbl8fKwG7ZAe8eluBBZqJZ+/4tIcyiF1BGzNDLKFp574
sYaoeDdQJ1kF/j/RMgGo+/ifSDMieFjvG/C/q7ufKYP8+gAps97RQkutnHj/1zvN
yxc+g79NBFzdPomoJJVa8J+KnE9RE8sNXkJaMUhr9HPHoYMNxABYHf0UNAcc5bsu
0iJsV5KNi0dJmmjmpMLv2KgMuzeim3n+uo/ukzdRDro8sTL4Uge/g0VRERdEB+an
KZ0dBEihD83o9LtU5jScU8KEuoemC6/sWxfJLP4O8eaO0AjHgfCzReoJJCdwctDW
P4DCh9GoNbFs5AHx79S4iw3XjwnAKOSnfsq/S1uVcFgCPiax5ihG3MkX9W1ZT9zJ
IykCxMe+egfrwW9y6wLRQ/zohYmJ3RepLMoka23XVCpcl+Z6t3Cei4uPUzTFx5zR
xi++4eADtWCAhSXaovz6M7bQbCS2VJ5N55ialVtVlt0ocVWR9spbVtlQANv9Ej7+
XKui0LxOjVqbl4ZgRpeNwOpaQcBMWZnNHxDgKaGvIYa51POSo6U=mF3C
-----END PGP SIGNATURE-----
--ZammEhA5tKjnSFUs--
Avatar
didier gaumet
Le mercredi 4 mai 2022 Í  11:20:03 UTC+2, Olivier a écrit :
Bonjour,
Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?
J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0
Je ne vois aucun message d'erreur dans les logs.
Slts

Je n'ai jamais manipulé cette variable mais la doc sysctl me pousse Í  me demander si éventuellement ce n'est pas le chargement d'un module particulier qui écrase la valeur d'une variable préalablement correctement alimentée par la lecture de sysctl.conf au boot:
extrait de la page man sysctl:
"
[...]
Notes
Please note that modules loaded after sysctl is run may override the settings (example: sunrpc.* settings are overridden when the sunrpc module is loaded). This may cause some confusion during boot when the settings in sysctl.conf may be overriden. To prevent such a situation, sysctl must be run after the particular module is loaded (e.g., from /etc/rc.d/rc.local or by using the install directive in modprobe.conf)
[...]
"
mais bon, ton cas n'a peut-être rien Í  voir...
Avatar
Olivier
Le module dont il est question est nf_conntrack.
J'ignore comment il est chargé et a fortiori, comment afiner la
configuration de son chargement mais je pense que je vais chercher
dans cette direction.
Peut-être qu'une lecture attentive du contenu de dmesg me confirmera
que l'exécution de sysctl précède le chargement de nf_conntrack ...
À suivre
Le mer. 4 mai 2022 Í  22:18, didier gaumet a écrit :
Le mercredi 4 mai 2022 Í  11:20:03 UTC+2, Olivier a écrit :
Bonjour,
Pour activer l'accounting de conntrack, j'utilise:
echo 1 > /proc/sys/net/netfilter/nf_conntrack_acct
Comment rendre cette commande persistante (ie qu'elle soit
automatiquement lancée au démarrage) ?
J'ai essayé avec un fichier /etc/sysctl.d/foo.conf et le contenu ci-après.
net.ipv4.ip_forward=1
net.netfilter.nf_conntrack_acct=1
J'observe que seule la première ligne produit l'effet escompté:
# sysctl net.ipv4.ip_forward
1
# sysctl net.netfilter.nf_conntrack_acct
0
Je ne vois aucun message d'erreur dans les logs.
Slts

Je n'ai jamais manipulé cette variable mais la doc sysctl me pousse Í  me demander si éventuellement ce n'est pas le chargement d'un module particulier qui écrase la valeur d'une variable préalablement correctement alimentée par la lecture de sysctl.conf au boot:
extrait de la page man sysctl:
"
[...]
Notes
Please note that modules loaded after sysctl is run may override the settings (example: sunrpc.* settings are overridden when the sunrpc module is loaded). This may cause some confusion during boot when the settings in sysctl.conf may be overriden. To prevent such a situation, sysctl must be run after the particular module is loaded (e.g., from /etc/rc.d/rc.local or by using the install directive in modprobe.conf)
[...]
"
mais bon, ton cas n'a peut-être rien Í  voir...
Avatar
didier gaumet
Le jeudi 5 mai 2022 Í  13:20:03 UTC+2, Olivier a écrit :
Le module dont il est question est nf_conntrack.
J'ignore comment il est chargé et a fortiori, comment afiner la
configuration de son chargement mais je pense que je vais chercher
dans cette direction.
Peut-être qu'une lecture attentive du contenu de dmesg me confirmera
que l'exécution de sysctl précède le chargement de nf_conntrack ...

tu pourrais peut-être essayer de créer un fichier /etc/modprobe.d/nf_conntrack.conf contenant seulement cette ligne:
install nf_conntrack /usr/sbin/sysctl -p /etc/sysctl.d/foo.conf
pour voir si ça améliore les choses
Avatar
Olivier
Le fichier avec 'install nf_conntrack /usr/sbin/sysctl -p
/etc/sysctl.d/foo.conf' n'a pas fonctionné:
il empêche indirectement la création de /proc/net/nf_conntrack.
J'avais auparavant, sans succès et au pif, essayé
options nf_conntrack nf_conntrack_acct=1
Comment est chargé nf_conntrack ?
Quels fichiers de log consulter pour observer ce chargement ?
Est-il possible de configurer la façon dont nf_conntrack est chargé ?
Le jeu. 5 mai 2022 Í  14:36, didier gaumet a écrit :
Le jeudi 5 mai 2022 Í  13:20:03 UTC+2, Olivier a écrit :
Le module dont il est question est nf_conntrack.
J'ignore comment il est chargé et a fortiori, comment afiner la
configuration de son chargement mais je pense que je vais chercher
dans cette direction.
Peut-être qu'une lecture attentive du contenu de dmesg me confirmera
que l'exécution de sysctl précède le chargement de nf_conntrack ...

tu pourrais peut-être essayer de créer un fichier /etc/modprobe.d/nf_conntrack.conf contenant seulement cette ligne:
install nf_conntrack /usr/sbin/sysctl -p /etc/sysctl.d/foo.conf
pour voir si ça améliore les choses
Avatar
didier gaumet
Le vendredi 06 mai 2022 Í  18:32 +0200, Olivier a écrit :
[...]
Comment est chargé nf_conntrack ?
Quels fichiers de log consulter pour observer ce chargement ?
Est-il possible de configurer la façon dont nf_conntrack est chargé ?

- Je ne sais pas trop comment ça marche, je *suppose* que c'est udev qui déclenche le chargement du module (mais ne me crois pas sur parole, hein, je n'y connais quasiment *rien*)
- possiblement en jouant avec les options de modinfo et de journalctl pour avoir plus de détails et en croisant les deux flots d'information ainsi obtenus, tu pourrais obtenir des infos
- *a priori* modifier le chargement du module conntrack s'obtiendrait justement par la création d'un fichier tel que celui que je t'ai suggéré, avec une ligne "install" (cf la manpage de modprobe.d).
Au lieu de la ligne "install" tu peux essayer une ligne telle que celle-ci:
options nf_conntrack net.netfilter.nf_conntrack_acct = 1
(je n'ai aucune idée si ça peut marcher)
- et si ce n'est déjÍ  fait, installer les paquets conntrack et surtout conntrackd pour voir si ça va mieux (après reboot), ou les désinstaller dans le cas contraire pour voir ici aussi si ça va mieux.
Avatar
̓‰tienne Mollier
--/TMqMZjesLfFh+p/
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
Bonjour Olivier,
Voici quelque compl̓©ments d'information, en plus des excellentes
remarques de didier.
didier gaumet, on 2022-05-06:
Le vendredi 06 mai 2022 ̓  18:32 +0200, Olivier a ̓©crit :
[...]
Comment est charg̓© nf_conntrack ?
Quels fichiers de log consulter pour observer ce chargement ?
Est-il possible de configurer la fa̓§on dont nf_conntrack est charg̓© ?

- Je ne sais pas trop comment ̓§a marche, je *suppose* que c'est udev qui d̓©clenche le chargement du module (mais ne me crois pas sur parole, hein, je n'y connais quasiment *rien*)

nf_conntrack n'est pas verbeux au chargement, sinon il aurait
probablement affich̓© quelque messages dans /var/log/kern.log ou
dmesg. Difficile de dire ce qui cause son chargement, ̓§a
pourrait venir des outils de configuration r̓©seau.
- possiblement en jouant avec les options de modinfo et de journalctl pour avoir plus de d̓©tails et en croisant les deux flots d'information ainsi obtenus, tu pourrais obtenir des infos

`modinfo nf_conntrack` va effectivement rapporter les options
qui peuvent ̓ªtre pass̓©es au chargement du module. L'option
int̓©ressante est "acct".
- *a priori* modifier le chargement du module conntrack s'obtiendrait justement par la cr̓©ation d'un fichier tel que celui que je t'ai sugg̓©r̓©, avec une ligne "install" (cf la manpage de modprobe.d).
Au lieu de la ligne "install" tu peux essayer une ligne telle que celle-ci:
options nf_conntrack net.netfilter.nf_conntrack_acct = 1
(je n'ai aucune id̓©e si ̓§a peut marcher)

Je viens de tester sur une machine virtuelle, et en fait, ce qui
passe chez moi c'est͂ :
# /etc/modprobe.d/nf_conntrack.conf
options nf_conntack acct=1
Apr̓¨s son red̓©marrage, j'ai bien l'accounting d̓©marr̓© sans
encombres͂ :
$ cat /proc/sys/net/netfilter/nf_conntrack_acct
1
- et si ce n'est d̓©j̓  fait, installer les paquets conntrack et surtout conntrackd pour voir si ̓§a va mieux (apr̓¨s reboot), ou les d̓©sinstaller dans le cas contraire pour voir ici aussi si ̓§a va mieux.

En esp̓©rant que ̓§a aide,
Bonne journ̓©e, :)
--
̓‰tienne Mollier
Fingerprint: 8f91 b227 c7d6 f2b1 948c 8236 793c f67e 8f0d 11da
Sent from /dev/pts/2, please excuse my verbosity.
On air: Steve Morse Band - V.H.F. (Vertical Hair Factor)
--/TMqMZjesLfFh+p/
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEj5GyJ8fW8rGUjII2eTz2fo8NEdoFAmJ1aoYACgkQeTz2fo8N
EdqCjg//a79BEYLZ1iAbQaC2yuwOytyVD2moK+FGqLmLnLfCPm3k57UuNSgCQOr8
w8gsdhgSOT6J4bgl7znSusHH/ii1Yo3lml1gtuNxEaCb9q7W7AoO0U5myJ2ryxG6
QAnQsvrP/aiyVYkfM7RQ70ne+dUQ++4dLk0e3OaK2uXbryVaAq2HcqSQdxkftiRk
s3snBh5OUnTAMqNudTPqfV35I2gcoqk4BaY29a9EujWiTyxOQN0g9p5y0cmM7rII
gbs9wKpbJcbjyZfNQuM4YsfyRwOaOL1LuHR2V1vo6RR33i+jGiEjv02VO3EhPrbp
r8baAw/TbiNAdgnkR80d/RYPVcMuVktUHn9T0nzqsFiQu47rT+6k7vCX2V3D043C
HuYLw4cRFsGJ8lREk4hDhF0D0Akl4m3b1i0FccSk7UuE235tBwo8pEYxktZSt6E0
bVVPi8Wmg8fiiJOal1pU1xt+smE1gnLlkFNjrafrF75bySABrRMQmr9Ci2axlGIs
kDc80wEnyy63D7cPhGRpEhLNYa+F0Dh4e+KxyMCQOA+INq+7L76Ov4CzafmgMG42
SAyNEqmlhjoestH+y6C3v/zadc3/Z7RniUi4PZQm9ZKBcKeA7PxsZwIvlMSW3XeM
+VXswrcNvorTrKYyejgQ7ekHtMuAB6w1F1RV+ZXgZgnZB42B/KY=Xfs5
-----END PGP SIGNATURE-----
--/TMqMZjesLfFh+p/--
1 2