Installation de tun sur une instance C2S Scaleway

March 25, 2016

Au cours de ma migration, j’ai rencontré quelques soucis au cours de l’installation d’openvpn. En espérant que ça puisse aider quelqu’un…

Cet article n’a pas pour but d’expliquer comment effectuer une configuration complète d’openvpn.

Le serveur est sous debian/sid, les paquets sont à jour.

$ uname -a
Linux eole 4.4.4-std-3 #1 SMP Tue Mar 8 17:31:34 UTC 2016 x86_64 GNU/Linux

Le noyau est récent, pas de soucis à priori. Seulement voilà, quand on cherche à faire un classique modprobe tun pour activer le module ad-hoc, on se retrouve face à un joli message d’erreur :

$ sudo modprobe tun
zsh: command not found: modprobe

C’est facheux. Creusons un peu le sujet. Les modules noyaux se trouvent dans /lib/modules/4.4.4-std-3/kernel.

$ find . -name "*tun*"
./drivers/net/tun.ko
./net/ipv6/xfrm6_mode_tunnel.ko
./net/ipv6/tunnel6.ko
./net/ipv6/ip6_tunnel.ko
./net/ipv6/ip6_udp_tunnel.ko
./net/ipv6/xfrm6_tunnel.ko
./net/ipv4/tunnel4.ko
./net/ipv4/xfrm4_tunnel.ko
./net/ipv4/udp_tunnel.ko
./net/ipv4/ip_tunnel.ko
./net/mpls/mpls_iptunnel.ko

On retrouve bien le module tun dans les drivers. Mais comment le charger sans depmod ? Surtout que si on passe par systemd on se rend compte qu’il y a un truc qui va pas…

$ systemctl status scw-sync-kernel-modules.service
● scw-sync-kernel-modules.service - SCW fetch kernel modules from Scaleway mirror

  [startup failed]

La réponse est plutôt simple : installer un paquet (encore faut-il trouver le bon).

$ apt-get install kmod
$ whatis kmod
kmod (8)             - Program to manage Linux Kernel modules

Kmod nous donne toutes les commandes de gestions de module dont on a besoin :

SEE ALSO lsmod(8), rmmod(8), insmod(8), modinfo(8), modprobe(8), depmod(8)

Il ne reste plus qu’à faire un modprobe tun et le soucis est réglé !