web-dev-qa-db-fra.com

OpenVPN Persist-Tun Option - Quel est le point?

Selon le OpenVPN 2 Cookbook:

Les options de persistance et de clé persist sont utilisées pour vous assurer que la connexion revient automatiquement si le réseau sous-jacent est perturbé. Ces options sont nécessaires lors de l'utilisation de l'utilisateur Personne et du groupe Personne (ou NogRoup de groupe).

Qu'est-ce que cela signifie dans la pratique?

Sur le côté serveur, il y a un périphérique TUN0. Le processus OpenVPN fonctionne comme personne ni nogroup. Jusqu'à présent, ça va. Mais qu'est-ce que l'option persist-Tun fait exactement? Selon si je vous connecte ou non, le même périphérique TUN0 est toujours là.

D'une autre question:

Débarrassez-vous de l'option Persist-Tun. Sans cette option, la liaison VPN tombe en panne, le périphérique TUN se fermera et être retiré. Bien sûr, le problème est que l'élimination de cette option signifie que vous devez exécuter votre démon VPN en tant que root au lieu de personne. Parce que, comme personne ne compte, OpenVPN ne sera pas en mesure de créer un nouveau périphérique TUN lorsque la connexion est rétablie.

Après avoir supprimé l'option Persist-Tun, le périphérique TUN est toujours là sans client connecté.

Quelqu'un veuillez expliquer en détail le processus dans lequel persist-Tun, clé persist, utilisateur personne, nogroupe de groupe et options de garde à suivre.

4
tenjohn

Il peut y avoir 3 raisons d'utiliser persist-tun

1- Vous avez besoin d'autorisations de racine pour pouvoir gérer les interfaces. Si OpenVPN passe à personne/nogroup, il ne peut pas ajouter/supprimer des interfaces. Par conséquent, il serait nécessaire de persister l'interface TUN.

2- Si l'interface TUN est supprimée, vous perdrez l'itinéraire en pointant. Cela signifierait que votre trafic s'écoulerait non crypté par la voie par défaut. Probablement quelque chose que vous ne voulez pas arriver.

3- Si l'interface n'est pas supprimée (persist), les scripts haut/bas ne seraient pas exécutés. Le manuel dit:

-Persist-Tun Ne fermez pas et rouvrez le périphérique TUN/TAP ou exécutez des scripts de haut/bas sur SIGUSR1 ou -PRAND-redémarrage de redémarrage.sigusr1 est un signal de redémarrage similaire à Sighup, mais qui offre une commande de réinitialisation plus fin sur les options de réinitialisation.

Similaire est également expliqué dans le 2.4 manuel pour persist-key

-Persist-Key Ne relisez pas les fichiers clés sur SIGUSR1 ou -PREST-Redémarrage. Cette option peut être combinée avec -utiliser personne pour permettre des redémarrages déclenchés par le signal SIGUSR1. Normalement, si vous déposez des privilèges root dans OpenVPN, le démon ne peut pas être redémarré car il ne pourra maintenant pas relire les fichiers de clé protégés.

Cette option résout le problème en persistant les clés des réinitialisations SIGUSR1. Ils n'ont donc pas besoin d'être relu.

2
yurtesen

Je crois que cela est plus un cadre de côté client. Si le client est déconnecté, dans certaines conditions, elle supprimerait, puis recréez le tunnel. Je ne suis pas sûr que cela fait quelque chose d'utile sur le côté serveur. Puisque le côté serveur reste essentiellement tout le temps.

1
Zoredache