J'ai fini de configurer OpenVPN sur mon vps OpenVZ. Lorsque j'exécute service openvpn restart
, la sortie d'erreur suivante est générée:
* Stopping virtual private network daemon(s)...
* No VPN is running.
* Starting virtual private network daemon(s)...
* Autostarting VPN 'client'
* Autostarting VPN 'server' SIOCSIFADDR: No such device
: ERROR while getting interface flags: No such device
SIOCSIFDSTADDR: No such device
: ERROR while getting interface flags: No such device
SIOCSIFMTU: No such device
J'ai le pressentiment que cela a quelque chose à voir avec le fait qu'une machine OpenVZ n'a pas de périphérique eth0 mais une interface venet0: 0 à la place. J'ai parcouru tous les fichiers de configuration que je devais éditer et je me suis assuré qu'il n'y avait aucune référence à eth0. Je l'ai configuré pour ce tutoriel que je suis en train de terminer (ce sera fini une fois que j'ai la solution à partir d'ici).
Faites-moi savoir comment je dois modifier ma configuration pour qu'OpenVPN puisse démarrer correctement.
Il s'avère que vous devez configurer le périphérique tun/tap sur le openvz Host. Pour ce faire, vous devez vous assurer que l'hôte s'exécute avec lsmod | grep tun
. Si rien ne s'affiche, exécutez modprobe tun
avant d'exécuter lsmod | grep tun
pour le vérifier. Maintenant que cela est fait, vous devez donner au conteneur l'accès avec les commandes suivantes (je suggère de placer ceci dans un script puis d'appeler cela):
CTID=YOUR_CONTAINERS_ID_HERE
vzctl set $CTID --devnodes net/tun:rw --save
vzctl set $CTID --devices c:10:200:rw --save
vzctl set $CTID --capability net_admin:on --save
vzctl exec $CTID mkdir -p /dev/net
vzctl exec $CTID mknod /dev/net/tun c 10 200
vzctl exec $CTID chmod 600 /dev/net/tun
J'ai reçu un message d'erreur d'avertissement ci-dessous, mais le redémarrage d'OpenVPN sur le client semblait maintenant fonctionner.
De plus, après avoir fait cela, j'ai réussi à me connecter mais impossible de me connecter à autre chose. J'ai passé des siècles à vérifier tous les transferts iptables et de paquets, mais l'erreur était en fait que j'avais laissé le fichier client.conf dans le répertoire/etc/openvz. Le fait de le supprimer et de redémarrer le service openvpn a résolu ce problème.