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


12.9.23 Services VPN

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

Bitmask

Variable : bitmask-service-type

Un type de service pour le client VPN Bitmask. Il rend le client disponible dans le système et charge sa politique Polkit. Remarquez que le client attend un polkit-agent actif, lancé soit par votre environnement de bureau soit par vous manuellement.

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.

Type de données : openvpn-client-configuration

Les champs de openvpn-client-configuration disponibles sont :

openvpn (par défaut : openvin) (type : simili-fichier)

Le paquet OpenVPN.

pid-file (par défaut : "/var/run/openvpn/openvpn.pid") (type : chaine)

Le fichier de PID d’OpenVPN.

proto (par défaut : udp) (type : proto)

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

dev (par défaut : tun) (type : dev)

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

ca (par défaut : "/etc/openvpn/ca.crt") (type : peut-être-chaine)

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

certe (par défaut : "/etc/openvpn/client.crt") (type : peut-être-chaine)

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

key (par défaut : "/etc/openvpn/client.key") (type : peut-être-chaine)

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

comp-lzo? (par défaut : #t) (type : booléen)

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

persist-key? (par défaut : #t) (type : booléen)

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

persist-tun? (par défaut : #t) (type : booléen)

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.

fast-io? (par défaut : #f) (type : booléen)

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

verbosity (par défaut : 3) (type : entier)

Niveau de verbosité.

tls-auth (par défaut : #f) (type : tls-auth-client)

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

auth-user-pass (type : peut-être-chaine)

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.

verify-key-usage? (par défaut : #t) (type : key-usage)

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

bind? (par défaut : #f) (type : bind)

Se lier à un port spécifique.

resolv-retry? (par défaut : #t) (type : resolv-retry)

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

remote (par défaut : ()) (type : liste-de-openvpn-remote)

Une liste de serveurs distants sur lesquels se connecter.

Type de données : openvpn-remote-configuration

Les champs de openvpn-remote-configuration disponibles sont :

name (par défaut : "my-server") (type : chaine)

Nom du serveur.

port (par défaut : 1194) (type : nombre)

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

Type de données : openvpn-server-configuration

Les champs de openvpn-server-configuration disponibles sont :

openvpn (par défaut : openvin) (type : simili-fichier)

Le paquet OpenVPN.

pid-file (par défaut : "/var/run/openvpn/openvpn.pid") (type : chaine)

Le fichier de PID d’OpenVPN.

proto (par défaut : udp) (type : proto)

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

dev (par défaut : tun) (type : dev)

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

ca (par défaut : "/etc/openvpn/ca.crt") (type : peut-être-chaine)

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

certe (par défaut : "/etc/openvpn/client.crt") (type : peut-être-chaine)

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

key (par défaut : "/etc/openvpn/client.key") (type : peut-être-chaine)

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

comp-lzo? (par défaut : #t) (type : booléen)

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

persist-key? (par défaut : #t) (type : booléen)

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

persist-tun? (par défaut : #t) (type : booléen)

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.

fast-io? (par défaut : #f) (type : booléen)

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

verbosity (par défaut : 3) (type : entier)

Niveau de verbosité.

tls-auth (par défaut : #f) (type : tls-auth-server)

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

port (par défaut : 1194) (type : nombre)

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

server (par défaut : "10.8.0.0 255.255.255.0") (type : ip-mask)

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

server-ipv6 (par défaut : #f) (type : cidr6)

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

dh (par défaut : "/etc/openvpn/dh2048.pem") (type : chaine)

Le fichier de paramètres Diffie-Hellman.

ifconfig-pool-persist (par défaut : "/etc/openvpn/ipp.txt") (type : chaine)

Le fichier qui enregistre les IP des clients.

redirect-gateway? (par défaut : #f) (type : gateway)

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

client-to-client? (par défaut : #f) (type : booléen)

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

keepalive (par défaut : (10 120)) (type : 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.

max-clients (par défaut : 100) (type : nombre)

Le nombre maximum de clients.

status (par défaut : "/var/run/openvpn/status") (type : chaine)

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

client-config-dir (par défaut : ()) (type : liste-de-openvpn-ccd)

La liste des configuration pour certains clients.

strongSwan

Pour l’instant, le service strongSwan fournit seulement une configuration héritée des version précédentes avec des fichiers ipsec.conf et ipsec.secrets.

Variable : strongswan-service-type

Un type de service pour configurer strongSwan pour un VPN (réseau privé virtuel) IPsec. Sa valeur doit être un enregistrement strongswan-configuration comme dans cet exemple :

(service strongswan-service-type
         (strongswan-configuration
          (ipsec-conf "/etc/ipsec.conf")
          (ipsec-secrets "/etc/ipsec.secrets")))
Type de données : strongswan-configuration

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

strongswan

Le paquet strongSwan à utiliser pour ce service.

ipsec-conf (par défaut : #f)

Le nom de fichier de votre ipsec.conf. Si différent de #f, alors cette valeur et ipsec-secrets doivent toutes deux être des chaînes de caractères.

ipsec-secrets (par défaut : #f)

Le nom de fichier de votre ipsec.secrets. Si différent de #f, alors cette valeur et ipsec-conf doivent toutes deux être des chaînes de caractères.

Wireguard

Variable : 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.

port (par défaut : 51820)

Le port sur lequel écouter les connexions entrantes.

dns (par défaut : #f)

Les serveurs DNS à annoncer aux clients VPN via DHCP.

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.

pre-up (par défaut : '())

Les commandes de script à lancer avant de configurer l’interface.

post-up (par défaut : '())

Les commandes de script à lancer après la configuration de l’interface.

pre-down (par défaut : '())

Les commandes de script à lancer avec d’arrêter l’interface.

post-down (par défaut : '())

Les commandes de script à lancer après l’arrêt de l’interface.

table (par défaut : "auto")

La table de routage à laquelle les routes sont ajoutées, en tant que chaine. Il y a deux valeurs spéciales : "off" qui désactive la création de route complètement, et "auto" (par défaut) qui ajoute les routes à la table par défaut et active la gestion spéciale des routes par défaut.

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.

preshared-key (par défaut : #f)

Une clé pré-partagée facultative pour ce pair. Le fichier donné ne sera pas généré automatiquement.

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é.

keep-alive (par défaut : #f)

Une durée en seconde facultative. Un paquet sera régulièrement envoyé au serveur après cette durée. Cela aide à recevoir les connexions entrantes de ce pair si vous êtes derrière un NAT ou un pare-feu.


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