GNU/Linux >> Tutoriels Linux >  >> Linux

OpenVPN client à client

Solution 1 :

Si client-to-client est activé , le serveur VPN transfère les paquets client à client en interne sans les envoyer à la couche IP de l'hôte (c'est-à-dire au noyau). La pile réseau hôte ne voit pas du tout ces paquets.

           .-------------------.
           | IP Layer          |
           '-------------------'


           .-------------------.
           | TUN device (tun0) |
           '-------------------'


           .-------------------.
           | OpenVPN server    |
           '-------------------'
             ^           |
          1  |           |  2   
             |           v
 .----------------.  .----------------.
 | Client a       |  | Client b       |
 '----------------'  '----------------'

Si client-to-client est désactivé , les paquets d'un client vers un autre client passent par la couche IP hôte (iptables, table de routage, etc.) de la machine hébergeant le serveur VPN :si le transfert IP est activé , l'hôte peut rediriger le paquet (à l'aide de sa table de routage) vers l'interface TUN et le démon VPN transmettra le paquet au bon client à l'intérieur du tunnel.

           .-------------------.
           | IP Layer          |  (4) routing, firewall, NAT, etc.
           '-------------------'      (iptables, nftables, conntrack, tc, etc.)
              ^          |
          3   |          |  5
              |          v
           .-------------------.
           | TUN device (tun0) |
           '-------------------'
             ^           |
          2  |           |  6  
             |           v
           .-------------------.
           | OpenVPN server    |
           '-------------------'
             ^           |
          1  |           |  7  
             |           v
 .----------------.  .----------------.
 | Client a       |  | Client b       |
 '----------------'  '----------------'

Dans ce cas (client-to-client désactivé), vous pouvez bloquer les paquets client à client à l'aide d'iptables :

 iptables -A FORWARD -i tun0 -o tun0 -j DROP

tun0 est votre interface VPN.

Solution 2 :

Vous devez faire plus que simplement commenter la directive telle qu'elle est indiquée ici :

Décommentez cette directive pour permettre aux différents clients de pouvoir se "voir". Par défaut, les clients ne verront que le serveur.Pour forcer les clients à ne voir que le serveur, vous devrez également pare-feu de manière appropriée le TUN/TAP du serveur interface.

Par conséquent, vous pouvez configurer une politique d'adresse IP distincte pour chaque client. Voir la section Configurer des règles spécifiques au client et des politiques d'accès ici :https://openvpn.net/index.php/open-source/documentation/howto.html.et ici :https://www.sbarjatiya.com/notes_wiki/index.php/Configuring_separate_IP_and_firewall_rule_for_each_openvpn_client.

Solution 3 :

Le paragraphe suivant de la page de manuel pour openvpn répond à cette question, même si ce n'est pas forcément clair à première lecture :

Étant donné que le mode serveur OpenVPN gère plusieurs clients via une seule interface tun ou tap, il s'agit en fait d'un routeur. Le --client-to-client indique à OpenVPN d'acheminer en interne le trafic client à client plutôt que de pousser tout le trafic provenant du client vers l'interface TUN/TAP.

Lorsque cette option est utilisée, chaque client "voit" les autres clients qui sont actuellement connectés. Sinon, chaque client ne verra que le serveur. N'utilisez pas cette option si vous souhaitez pare-feu tunneliser le trafic à l'aide de règles personnalisées par client.

Le client-to-client court-circuite les tables de routage normales sur le serveur. Sa suppression n'empêche pas les clients d'utiliser les tables de routage du serveur. Si ces tables de routage - et la configuration du pare-feu du serveur - permettent aux clients de se voir, ils pourront le faire.


Linux
  1. CLIENT OPENVPN pour Windows et Linux

  2. Installer le serveur OpenVPN sur Debian 10/11

  3. Installer et configurer le client OpenVPN sur Rocky Linux 8

  4. Se connecter automatiquement au VPN sur Ubuntu 20.04/18.04

  5. Installer et configurer le client OpenVPN sur CentOS 8/Ubuntu 18.04

Client ADSL

Client PPP commuté

Comment installer le client OpenVPN sur Debian 11 Bullseye

Comment installer le serveur OpenVPN sur AlmaLinux 8

Comment se connecter à un VPN avec OpenVPN

Comment configurer le serveur et le client VPN Linux à l'aide d'OpenVPN