Suivant: , Précédent: , Monter: Services   [Table des matières][Index]


10.8.21 Services VPN

Le module (gnu services vpn) fournit des services liés aux réseaux privés virtuels (VPN).

OpenVPN

Il fournit un service client pour que votre machine se connecte à un VPN et un service serveur pour que votre machine héberge un VPN.

Procédure Scheme : openvpn-client-service [#:config (openvpn-client-configuration)]

Renvoie un service qui lance openvpn, un démon VPN, en tant que client.

Procédure Scheme : openvpn-server-service [#:config (openvpn-server-configuration)]

Renvoie un service qui lance openvpn, un démon VPN, en tant que serveur.

Les deux services peuvent être lancés en même temps.

Les champs de openvpn-client-configuration disponibles sont :

paramètre de openvpn-client-configuration : package openvpn

Le paquet OpenVPN.

paramètre de openvpn-client-configuration : string pid-file

Le fichier de PID d’OpenVPN.

La valeur par défaut est ‘"/var/run/openvpn/openvpn.pid"’.

paramètre de openvpn-client-configuration : proto proto

Le protocole (UDP ou TCP) utilisé pour ouvrir un canal entre les clients et les serveurs.

La valeur par défaut est ‘udp’.

paramètre de openvpn-client-configuration : dev dev

Le périphérique utilisé pour représenter la connexion VPN.

La valeur par défaut est ‘tun’.

Si vous n’avez pas certains de ces fichiers (p. ex. vous utilisez un nom d’utilisateur et un mot de passe), vous pouvez désactiver les trois champs suivants en leur passant 'disabled.

paramètre de openvpn-client-configuration : maybe-string ca

L’autorité de certification qui sert à vérifier les connexions.

La valeur par défaut est ‘"/etc/openvpn/ca.crt"’.

paramètre de openvpn-client-configuration : maybe-string cert

Le certificat de la machine sur laquelle tourne le démon. Il devrait être signé par l’autorité indiquée dans ca.

La valeur par défaut est ‘"/etc/openvpn/client.crt"’.

paramètre de openvpn-client-configuration : maybe-string key

La clef de la machine sur laquelle tourne le démon. Elle doit être la clef dont le certificat est donné dans cert.

La valeur par défaut est ‘"/etc/openvpn/client.key"’.

paramètre de openvpn-client-configuration : boolean comp-lzo?

Indique s’il faut utiliser l’algorithme de compression lzo.

La valeur par défaut est ‘#t’.

paramètre de openvpn-client-configuration : boolean persist-key?

Ne pas relire les fichiers de clefs entre les SIGUSR1 et les –ping-restart.

La valeur par défaut est ‘#t’.

paramètre de openvpn-client-configuration : boolean persist-tun?

Ne pas fermer et rouvrir les périphériques TUN/TAP ou lancer de scripts de démarrage/d’arrêt entre les SIGUSR1 et les –ping-restart.

La valeur par défaut est ‘#t’.

paramètre de openvpn-client-configuration : boolean fast-io?

(Expérimental) Optimise les écritures TUN/TAP/UDP en évitant d’appeler poll/epoll/select avant l’opération d’écriture.

La valeur par défaut est ‘#f’.

paramètre de openvpn-client-configuration : number verbosity

Niveau de verbosité.

La valeur par défaut est ‘3’.

paramètre de openvpn-client-configuration : tls-auth-client tls-auth

Ajoute une couche d’authentification HMAC supplémentaire au dessus du canal de contrôle TLS pour se protéger contre les attaques DoS.

La valeur par défaut est ‘#f’.

paramètre de openvpn-client-configuration : maybe-string auth-user-pass

S’authentifie avec le serveur en utilisant le nom d’utilisateur et le mot de passe. L’option est un fichier contenant le nom d’utilisateur et le mot de passe sur deux lignes. N’utilisez pas un objet simili-fichier car il serait ajouté au dépôt et serait lisible pour n’importe quel utilisateur.

La valeur par défaut est ‘'disabled’.

paramètre de openvpn-client-configuration : key-usage verify-key-usage?

Indique s’il faut vérifier que le certificat du serveur a l’extension d’utilisation.

La valeur par défaut est ‘#t’.

paramètre de openvpn-client-configuration : bind bind?

Se lier à un port spécifique.

La valeur par défaut est ‘#f’.

paramètre de openvpn-client-configuration : resolv-retry resolv-retry?

Réessayer de résoudre l’adresse du serveur.

La valeur par défaut est ‘#t’.

paramètre de openvpn-client-configuration : openvpn-remote-list remote

Une liste de serveurs distants sur lesquels se connecter.

La valeur par défaut est ‘()’.

Les champs de openvpn-remote-configuration disponibles sont :

paramètre de openvpn-remote-configuration : string name

Nom du serveur.

La valeur par défaut est ‘"my-server"’.

paramètre de openvpn-remote-configuration : number port

Numéro de port sur lequel écoute le serveur.

La valeur par défaut est ‘1194’.

Les champs de openvpn-server-configuration disponibles sont :

paramètre de openvpn-server-configuration : package openvpn

Le paquet OpenVPN.

paramètre de openvpn-server-configuration : string pid-file

Le fichier de PID d’OpenVPN.

La valeur par défaut est ‘"/var/run/openvpn/openvpn.pid"’.

paramètre de openvpn-server-configuration : proto proto

Le protocole (UDP ou TCP) utilisé pour ouvrir un canal entre les clients et les serveurs.

La valeur par défaut est ‘udp’.

paramètre de openvpn-server-configuration : dev dev

Le périphérique utilisé pour représenter la connexion VPN.

La valeur par défaut est ‘tun’.

Si vous n’avez pas certains de ces fichiers (p. ex. vous utilisez un nom d’utilisateur et un mot de passe), vous pouvez désactiver les trois champs suivants en leur passant 'disabled.

paramètre de openvpn-server-configuration : maybe-string ca

L’autorité de certification qui sert à vérifier les connexions.

La valeur par défaut est ‘"/etc/openvpn/ca.crt"’.

paramètre de openvpn-server-configuration : maybe-string cert

Le certificat de la machine sur laquelle tourne le démon. Il devrait être signé par l’autorité indiquée dans ca.

La valeur par défaut est ‘"/etc/openvpn/client.crt"’.

paramètre de openvpn-server-configuration : maybe-string key

La clef de la machine sur laquelle tourne le démon. Elle doit être la clef dont le certificat est donné dans cert.

La valeur par défaut est ‘"/etc/openvpn/client.key"’.

paramètre de openvpn-server-configuration : boolean comp-lzo?

Indique s’il faut utiliser l’algorithme de compression lzo.

La valeur par défaut est ‘#t’.

paramètre de openvpn-server-configuration : boolean persist-key?

Ne pas relire les fichiers de clefs entre les SIGUSR1 et les –ping-restart.

La valeur par défaut est ‘#t’.

paramètre de openvpn-server-configuration : boolean persist-tun?

Ne pas fermer et rouvrir les périphériques TUN/TAP ou lancer de scripts de démarrage/d’arrêt entre les SIGUSR1 et les –ping-restart.

La valeur par défaut est ‘#t’.

paramètre de openvpn-server-configuration : boolean fast-io?

(Expérimental) Optimise les écritures TUN/TAP/UDP en évitant d’appeler poll/epoll/select avant l’opération d’écriture.

La valeur par défaut est ‘#f’.

paramètre de openvpn-server-configuration : number verbosity

Niveau de verbosité.

La valeur par défaut est ‘3’.

paramètre de openvpn-server-configuration : tls-auth-server tls-auth

Ajoute une couche d’authentification HMAC supplémentaire au dessus du canal de contrôle TLS pour se protéger contre les attaques DoS.

La valeur par défaut est ‘#f’.

paramètre de openvpn-server-configuration : number port

Spécifie le numéro de port sur lequel les serveurs écoutent.

La valeur par défaut est ‘1194’.

paramètre de openvpn-server-configuration : ip-mask server

Une ip et un masque de sous-réseau spécifiant le sous-réseau dans le réseau virtuel.

La valeur par défaut est ‘"10.8.0.0 255.255.255.0"’.

paramètre de openvpn-server-configuration : cidr6 server-ipv6

Une notation CIDR pour spécifier le sous-réseau IPv6 dans le réseau virtuel.

La valeur par défaut est ‘#f’.

paramètre de openvpn-server-configuration : string dh

Le fichier de paramètres Diffie-Hellman.

La valeur par défaut est ‘"/etc/openvpn/dh2048.pem"’.

paramètre de openvpn-server-configuration : string ifconfig-pool-persist

Le fichier qui enregistre les IP des clients.

La valeur par défaut est ‘"/etc/openvpn/ipp.txt"’.

paramètre de openvpn-server-configuration : gateway redirect-gateway?

Lorsque la valeur est vraie, le serveur agira comme une passerelle pour ses clients.

La valeur par défaut est ‘#f’.

paramètre de openvpn-server-configuration : boolean client-to-client?

Lorsque la valeur est vraie, les clients sont autorisés à se parler entre eux dans le VPN.

La valeur par défaut est ‘#f’.

paramètre de openvpn-server-configuration : keepalive keepalive

Fait que des messages de ping sont envoyés régulièrement dans les deux sens pour que chaque côté sache quand l’autre n’est plus disponible. keepalive a besoin d’une paire. Le premier élément est la période d’envoi du ping, et le second élément est le délai d’attente avant de considéré que l’autre côté n’est plus disponible.

paramètre de openvpn-server-configuration : number max-clients

Le nombre maximum de clients.

La valeur par défaut est ‘100’.

paramètre de openvpn-server-configuration : string status

Le fichier de statut. Ce fichier montre un court rapport sur les connexions actuelles. Il est tronqué et réécrit toutes les minutes.

La valeur par défaut est ‘"/var/run/openvpn/status"’.

paramètre de openvpn-server-configuration : openvpn-ccd-list client-config-dir

La liste des configuration pour certains clients.

La valeur par défaut est ‘()’.

Les champs de openvpn-ccd-configuration disponibles sont :

paramètre de openvpn-ccd-configuration : string name

Nom du client.

La valeur par défaut est ‘"client"’.

paramètre de openvpn-ccd-configuration : ip-mask iroute

Le réseau du client

La valeur par défaut est ‘#f’.

paramètre de openvpn-ccd-configuration : ip-mask ifconfig-push

IP du client sur le VPN.

La valeur par défaut est ‘#f’.

Wireguard

Variable Scheme : wireguard-service-type

Un type de service pour une interface de tunnel Wireguard. Sa valeur doit être un enregistrement wireguard-configuration comme dans cet exemple :

(service wireguard-service-type
         (wireguard-configuration
          (peers
           (list
            (wireguard-peer
             (name "my-peer")
             (endpoint "my.wireguard.com:51820")
             (public-key "hzpKg9X1yqu1axN6iJp0mWf6BZGo8m1wteKwtTmDGF4=")
             (allowed-ips '("10.0.0.2/32")))))))
Type de données : wireguard-configuration

Le type de données représentant la configuration du service Wireguard.

wireguard

Le paquet wireguard à utiliser pour ce service.

interface (par défaut : "wg0")

Le nom d’interface pour le VPN.

addresses (par défaut : "10.0.01/32")

Les adresses IP à assigner à l’interface ci-dessus.

private-key (par défaut : "/etc/wireguard/private.key")

Le fichier de clé privée pour l’interface. Il est automatiquement généré si le fichier n’existe pas.

peers (par défaut : '())

Les pairs autorisés sur cette interface. C’est une liste d’enregistrements wireguard-peer.

Type de données : wireguard-peer

Type de données représentant un pair Wireguard attaché à une interface donnée.

name

Le nom du pair.

endpoint (par défaut : #f)

Le point d’entrée facultatif du pair, comme "demo.wireguard.com:51820".

public-key

La clé publique du pair, représentée par une chaîne en base64.

allowed-ips

Une liste d’adresses IP à partir desquelles le trafic entrant pour ce pair est autorisé et vers lesquelles le trafic à destination de ce pair est dirigé.


Suivant: , Précédent: , Monter: Services   [Table des matières][Index]