Okay,
I think I got it : I’m using a server VPS from Kimsuffi.
Nftables service needs the kernel module nftables and the kernel can be compiled without the nftables module.
https://stackoverflow.com/questions/61727119/nftables-config-commands-failing-with-operation-not-supported
To check :
sudo lsmod | grep nf_tables
If the command gives nothing, the module is not available.
I found these articles that help to update the kernel of a kimsuffi server
Installing Linux kernel with nftables support
Mise a jour du Kernel sur serveur Debian Kimsufi
Mise à jour du kernel debian sur un serveur Kimsufi OVH
[Astuce] Changer le kernel de votre Kimsufi
The kernel is quite old :
$ ls /boot/
config-4.19-ovh-xxxx-std-ipv6-64
initrd.img-4.19-ovh-xxxx-std-ipv6-64
vmlinuz-4.19-ovh-xxxx-std-ipv6-64
grub
System.map-4.19-ovh-xxxx-std-ipv6-64
and there’s some available but apt-get will not install it ( not sure why):
$ sudo apt-get install linux-image-
linux-image-4.18.5-mod-std-ipv6-64 linux-image-6.1.0-37-amd64
linux-image-4.19.17-mod-std-ipv6-64 linux-image-6.1.0-37-amd64-dbg
linux-image-4.19.17-xxxx-std-ipv6-64 linux-image-6.1.0-37-amd64-unsigned
linux-image-4.19.17-xxxx-std-ipv6-64-hz1000 linux-image-6.1.0-37-cloud-amd64
linux-image-4.19.18-mod-std-ipv6-64 linux-image-6.1.0-37-cloud-amd64-dbg
linux-image-4.19.18-xxxx-std-ipv6-64 linux-image-6.1.0-37-cloud-amd64-unsigned
linux-image-4.19.18-xxxx-std-ipv6-64-hz1000 linux-image-6.1.0-37-rt-amd64
linux-image-4.19.44-mod-std-ipv6-64 linux-image-6.1.0-37-rt-amd64-dbg
linux-image-4.19.44-xxxx-std-ipv6-64 linux-image-6.1.0-37-rt-amd64-unsigned
linux-image-4.19.44-xxxx-std-ipv6-64-hz1000 linux-image-6.1.0-38-amd64
linux-image-4.19-ovh linux-image-6.1.0-38-amd64-dbg
linux-image-4.19-ovh-mod-std-ipv6-64 linux-image-6.1.0-38-amd64-unsigned
linux-image-4.19-ovh-xxxx-pcs-ipv6-64 linux-image-6.1.0-38-cloud-amd64
linux-image-4.19-ovh-xxxx-std-ipv6-64 linux-image-6.1.0-38-cloud-amd64-dbg
linux-image-4.19-ovh-xxxx-std-ipv6-64-hz1000 linux-image-6.1.0-38-cloud-amd64-unsigned
linux-image-5.10-ovh-mod-std linux-image-6.1.0-38-rt-amd64
linux-image-5.15-ovh-mod-std linux-image-6.1.0-38-rt-amd64-dbg
linux-image-6.1.0-33-amd64 linux-image-6.1.0-38-rt-amd64-unsigned
linux-image-6.1.0-33-cloud-amd64 linux-image-6.1.0-39-amd64
linux-image-6.1.0-33-rt-amd64 linux-image-6.1.0-39-amd64-dbg
linux-image-6.1.0-34-amd64 linux-image-6.1.0-39-amd64-unsigned
linux-image-6.1.0-34-cloud-amd64 linux-image-6.1.0-39-cloud-amd64
linux-image-6.1.0-34-rt-amd64 linux-image-6.1.0-39-cloud-amd64-dbg
linux-image-6.1.0-35-amd64 linux-image-6.1.0-39-cloud-amd64-unsigned
linux-image-6.1.0-35-amd64-dbg linux-image-6.1.0-39-rt-amd64
linux-image-6.1.0-35-amd64-unsigned linux-image-6.1.0-39-rt-amd64-dbg
linux-image-6.1.0-35-cloud-amd64 linux-image-6.1.0-39-rt-amd64-unsigned
linux-image-6.1.0-35-cloud-amd64-dbg linux-image-amd64
linux-image-6.1.0-35-cloud-amd64-unsigned linux-image-amd64-dbg
linux-image-6.1.0-35-rt-amd64 linux-image-amd64-signed-template
linux-image-6.1.0-35-rt-amd64-dbg linux-image-cloud-amd64
linux-image-6.1.0-35-rt-amd64-unsigned linux-image-cloud-amd64-dbg
linux-image-6.1.0-36-amd64 linux-image-rt-amd64
linux-image-6.1.0-36-cloud-amd64 linux-image-rt-amd64-dbg
linux-image-6.1.0-36-rt-amd64
here are the command to update the kernel :
> sudo apt-get install linux-image-6.1.0-39-amd64
> sudo mv /etc/grub.d/06_OVHkernel /etc/grub.d/96_OVHkernel
> sudo update-grub
> sudo reboot
the server has restarted on the new Kernel
sudo lsmod | grep nf_tables
now gives :
nf_tables 303104 33 nft_ct
nfnetlink 20480 1 nf_tables
libcrc32c 16384 4 nf_conntrack,btrfs,nf_tables,raid456
and
sudo yunohost service status nftables
gives :
nftables:
configuration: unknown
description: Manages open and close connection ports to services
last_state_change: 2025-09-07 19:44:59
start_on_boot: enabled
status: running
Sounds better no ?
Cyril