GNU/Linux >> Znalost Linux >  >> Linux

OpenVPN klient-klient

Řešení 1:

Pokud client-to-client je povoleno VPN server přeposílá pakety klient-klient interně, aniž by je posílal do vrstvy IP hostitele (tj. do jádra). Hostitelský síťový zásobník tyto pakety vůbec nevidí.

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


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


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

Pokud client-to-client je zakázáno , pakety z klienta do jiného klienta procházejí vrstvou IP hostitele (iptables, směrovací tabulka atd.) počítače hostujícího server VPN:pokud je povoleno předávání IP , hostitel může přeposlat paket (pomocí své směrovací tabulky) znovu do rozhraní TUN a démon VPN předá paket správnému klientovi v tunelu.

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

V tomto případě (client-to-client vypnuto), můžete blokovat pakety klient-klient pomocí iptables:

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

kde tun0 je vaše rozhraní VPN.

Řešení 2:

Musíte udělat víc než jen komentovat směrnici, jak je uvedeno zde:

Odkomentujte tuto direktivu, aby se různí klienti mohli navzájem „vidět“. Ve výchozím nastavení klienti uvidí pouze server.Chcete-li přinutit klienty, aby viděli pouze server, budete také muset vhodně zablokovat TUN/TAP serveru rozhraní.

Proto můžete pro každého klienta nakonfigurovat samostatnou politiku IP adresy. Viz část Konfigurace pravidel a zásad přístupu pro konkrétního klienta zde:https://openvpn.net/index.php/open-source/documentation/howto.html.a zde:https://www.sbarjatiya.com/notes_wiki/index.php/Configuring_separate_IP_and_firewall_rule_for_each_openvpn_client.

Řešení 3:

Další odstavec manuálové stránky pro openvpn odpovídá na tuto otázku, i když to při prvním čtení nemusí být jasné:

Vzhledem k tomu, že režim serveru OpenVPN zpracovává více klientů prostřednictvím jediného rozhraní tuning nebo tap, je to ve skutečnosti router. --client-to-client příznak říká OpenVPN, aby interně směrovala provoz z klienta na klienta, místo aby tlačila veškerý provoz pocházející z klienta do rozhraní TUN/TAP.

Při použití této možnosti každý klient „vidí“ ostatní klienty, kteří jsou aktuálně připojeni. Jinak každý klient uvidí pouze server. Tuto možnost nepoužívejte, pokud chcete tunelovat provoz brány firewall pomocí vlastních pravidel pro každého klienta.

client-to-client volba zkratuje normální směrovací tabulky na serveru. Jeho odstranění nezabrání klientům používat směrovací tabulky serveru. Pokud tyto směrovací tabulky – a konfigurace brány firewall serveru – umožní klientům, aby se navzájem viděli, budou tak moci učinit.


Linux
  1. OPENVPN KLIENT Pro Windows a Linux

  2. Openvpn:Doručit cestu klientovi s jinou bránou?

  3. Nainstalujte a nakonfigurujte klienta OpenVPN na Rocky Linux 8

  1. Zabezpečte OpenVPN s dvoufaktorovou autentizací z WiKID na Centos 7

  2. Připojte se k VPN automaticky na Ubuntu 20.04/18.04

  3. Nainstalujte a nakonfigurujte klienta OpenVPN na CentOS 8/Ubuntu 18.04

  1. Přístup k OpenVPN z klientského počítače

  2. Nainstalujte server OpenVPN na Debian 10/11

  3. OpenVPN bypass na některých portech