802.1Q pour la gestion de GOST L2VPN ou comment Ă©conomiser de l'argent sur les mises Ă  jour logicielles





Situation



Je dois mettre en place une connexion VPN entre deux sites sur le réseau. La salle des serveurs semble avoir eu des passerelles de sécurité C-Terra Gateway version 4.2. Le schéma est simple. Le fournisseur a même publié un script de configuration recommandé. Mais ... le script du fournisseur utilise trois interfaces réseau, et mes passerelles n'en ont que deux.



Je prépare du café, je me souviens de mon CCNA et j'essaie d'utiliser ce que j'ai - des ports libres dans des commutateurs gérés.



Mon réseau



Mon réseau est constitué de deux sites géographiquement séparés dans un domaine de diffusion. Espace d'adressage: 10.10.205.0/24:







Sur les mains de deux passerelles de sécurité C-Terra Gateway version 4.2 avec le package C-Terra L2.

Ă€ propos du



package C-Terra L2 Le package vous permet de basculer une ou plusieurs interfaces de passerelle en mode PROMISC. L'interface PROMISC intercepte les trames de liaison de données et C-Terra L2 les encapsule dans UDP.

Ensuite, les paquets UDP sont cryptés (encapsulés dans ESP). Cela crée une connexion VPN L2 sur L3. C-Terra L2 est préinstallé sur toutes les passerelles de sécurité et est activé avec une licence distincte.


Dans le scénario recommandé, les passerelles de sécurité sont situées à la périphérie du réseau et une interface distincte est allouée pour la gestion:







Pour être plus clair, je décrirai les interfaces:



  • Gi0 / 0 - Interfaces PROMISC;
  • Gi0 / 1 - Interfaces WAN L3;
  • Gi0 / 2 - interfaces de gestion dĂ©diĂ©es. Je comprends que je dois gĂ©rer la deuxième passerelle de sĂ©curitĂ© via le tunnel VPN.


DĂ©cision



La première tasse de café s'est terminée pendant que je lisais sur Habré à propos de 802.1Q - je me suis souvenu de CCNA. Le deuxième mug a refroidi (je vais le chauffer au micro-ondes) tout en commutant l'équipement, comme le montre la figure:







je distingue trois types de trafic:



  • Trafic principal entre les appareils R1 et R2. Je vais le dĂ©signer comme BULK DATA et le mettre dans le VLAN 205. BULK DATA doit ĂŞtre cryptĂ© avant la transmission entre les sites;
  • Trafic de gestion de passerelle - MGMT. Je vais l'amener au VLAN 10. Le trafic MGMT vers la passerelle sur le site distant doit ĂŞtre cryptĂ©;
  • BULK DATA et MGMT après cryptage, je dĂ©signerai ESP DATA et le placerai dans le VLAN 100.


Selon mes estimations, la transmission BULK DATA / ESP DATA dans le réseau ressemblera à ceci (les lignes vertes représentent le trafic non chiffré, rouge - le trafic chiffré):







Transmission MGMT pour le contrĂ´le de la passerelle sur le site local:







Transmission MGMT / ESP DATA pour le contrĂ´le de la passerelle sur le site distant:







5 Ă©tapes de configuration



Étape 1. Gestion des données en vrac



Je sélectionne un VLAN 205 distinct pour les données en vrac. Pour cela, je règle l'interface Gi0 / 2 des périphériques SW1 et SW2 en mode d'accès avec le VLAN 205:



sw1(config)#
interface gi0/2
    description BULK_TO_R1
    switchport access vlan 205
    no shutdown

sw2(config)#
interface gi0/2
  description BULK_TO_R2
  switchport access vlan 205
  no shutdown


Je fais des interfaces Gi0 / 0 des passerelles d'interfaces PROMISC GW1 et GW2. Pour transmettre BULK DATA Ă  l'interface PROMISC, je configure le trunk vers l'interface PROMISC:



sw1(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1
  switchport mode trunk
  switchport trunk allowed vlan 205
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW2
  switchport mode trunk
  switchport trunk allowed vlan 205
  switchport trunk encapsulation dot1q
  no shutdown






Étape 2. Traitement du MGMT local



Selon le plan, le trafic MGMT transportant le VLAN 10. Espace d'adresses pour le VLAN 10: 10.76.76.128/28.



Sur le périphérique SW1 et SW2, je crée des interfaces virtuelles vlan10:



sw1(config)#
interface vlan10
  ip address 10.76.76.129 255.255.255.240
  no shutdown 

sw2(config)#
interface vlan10
  ip address 10.76.76.142 255.255.255.240
  no shutdown


Je crée le VLAN natif du VLAN 10 pour ne pas configurer les interfaces 802.1Q sur la passerelle:



sw1(config)#
interface gi0/1
  description LINK_TO_WAN_GW1
  switchport mode trunk
  switchport trunk allowed vlan 10
  switchport trunk native vlan 10
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/1
  description LINK_TO_WAN_GW2
  switchport mode trunk
  switchport trunk allowed vlan 10
  switchport trunk native vlan 10
  switchport trunk encapsulation dot1q
  no shutdown






Configuration des interfaces Gi0 / 1 des passerelles de sécurité:



GW1(config)#
interface gi0/1
   ip address 10.76.76.137 255.255.255.240
   no shutdown

GW2(config)#
interface gi0/1
  ip address 10.76.76.138 255.255.255.240
  no shutdown


Désormais, GW1 est accessible via SSH à partir du périphérique SW1:



sw1#ssh –l root 10.76.76.137
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW1~#


De mĂŞme, GW2 est accessible via SSH Ă  partir de l'appareil SW2:



sw2#ssh –l root 10.76.76.138
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW2~#


Nice, a versé une autre tasse de café.



Étape 3. Traitement de MGMT vers la passerelle sur le site distant Le



trafic MGMT vers la passerelle sur le site distant doit être chiffré. Pour ce faire, je lancerai le VLAN 10 via le VPN. Tout le trafic intercepté depuis l'interface PROMISC entrera dans le tunnel VPN. J'ajouterai au tronc à l'interface PROMISC VLAN 10:



sw1(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1  
  switchport trunk allowed vlan 10, 205

sw2(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1  
  switchport trunk allowed vlan 10, 205


Ne perdez pas une demi-heure à dépanner!



L'interface PROMISC ne doit pas recevoir de données ESP, il est donc important d'exclure le VLAN 100 des jonctions LINK_TO_PROMISC_GW1 et LINK_TO_PROMISC_GW2 dans les options suivantes:



switchport trunk allowed vlan 1-99,101-4096


Étape 4. Je suis arrivé à ESP DATA



Je sélectionne ESP DATA dans le VLAN 100 sur les passerelles GW1 et GW2. Espace d'adressage pour VLAN 100: 192.168.10.0/30



Pour ce faire, sur l'interface WAN Gi0 / 1 des passerelles GW1 et GW2, je crée une interface 802.1Q Gi0 / 1.100.

Le trafic sortant d'une telle interface appartiendra au VLAN 100:



GW1(config)#
interface gi0/1.100
   ip address 192.168.10.1 255.255.255.252
   no shutdown

GW2(config)#
interface gi0/1.100
  ip address 192.168.10.2 255.255.255.252
  no shutdown






J'autorise le passage du VLAN 100 vers le tronc LINK_TO_WAN_GW1 et LINK_TO_WAN_GW2:



sw1(config)#
interface gi0/1
  description LINK_TO_WAN_GW1
  switchport trunk allowed vlan 10,100

sw2(config)#
interface gi0/1
  description LINK_TO_WAN_GW2
  switchport trunk allowed vlan 10,100


Le lien entre les appareils SW1 et SW2 doit également transmettre le trafic VLAN 100 balisé:



sw1(config)#
interface gi0/3
  description LINK_TO_SW2
  switchport mode trunk
  switchport trunk allowed vlan 100
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/3
  description LINK_TO_SW1
  switchport mode trunk
  switchport trunk allowed vlan 100
  switchport trunk encapsulation dot1q
  no shutdown


Étape 5. Configuration de C-Terra L2 et VPN IPsec avec GOST



C-Terra L2 est configuré dans le système d'exploitation à l'aide du fichier de configuration /opt/VPNagent/etc/l2.conf. Pour GW1:



vif tap0
bridge br0
capture eth0
remote 192.168.10.2
mssfix 1400
passtos


oĂą:



capture eth0 - sélectionnez l'interface PROMISC, distant 192.168.10.2 - Adresse IP du pair IPsec (interface Gi0 / 1.100 de la passerelle GW2).



Pour GW2:



vif tap0
bridge br0
capture eth0
remote 192.168.10.1
mssfix 1400
passtos


Configuration des paramètres IKE / IPsec. Pour GW1: les

passerelles utiliseront les noms d'hôte comme identifiants, définissez une clé prédéfinie pour l'authentification (les règles d'utilisation pour l'authentification doivent utiliser des certificats numériques, je les modifierai plus tard):



GW1(config)#
crypto isakmp identity hostname
ip host GW2 192.168.10.2
crypto isakmp key KEY hostname GW2


Configuration des paramètres de détection des homologues morts (DPD):



GW1(config)#
crypto isakmp keepalive 10 2
crypto isakmp keepalive retry-count 5


J'ai défini les paramètres IPsec Phase I:



GW1(config)#
crypto isakmp policy 1
  encr gost
  hash gost3411-256-tc26
  auth pre-share
  group vko2


J'ai défini les paramètres IPsec Phase II:



GW1(config)#
crypto ipsec transform-set TSET esp-gost28147-4m-imit
   mode tunnel


Les trames interceptées par l'interface PROMISC L2 étant encapsulées dans UDP, la liste d'accès qui détermine le trafic pour le chiffrement:



GW1(config)#
ip access-list extended LIST
   permit udp host 192.168.10.1 host 192.168.10.2


Je crée une crypto map et la lie à Gi0 / 1.100:



GW1(config)#
crypto map CMAP 1 ipsec-isakmp
  match address LIST
  set transform-set TSET
  set peer 192.168.10.2
interface gi0/1.100
  crypto map CMAP


Je spécifie la route par défaut via l'adresse IP du pair IPsec:



GW1(config)#
ip route 0.0.0.0 0.0.0.0 192.168.10.2 	


Configuration de la passerelle GW2:



GW2(config)#
crypto isakmp identity hostname
ip host GW1 192.168.10.1
crypto isakmp key KEY hostname GW1
crypto isakmp keepalive 10 2
crypto isakmp keepalive retry-count 5
crypto isakmp policy 1
  encr gost
  hash gost3411-256-tc26
  auth pre-share
  group vko2
crypto ipsec transform-set TSET esp-gost28147-4m-imit
  mode tunnel
ip access-list extended LIST
  permit udp host 192.168.10.2 host 192.168.10.1
crypto map CMAP 1 ipsec-isakmp
  match address LIST
  set transform-set TSET
  set peer 192.168.10.1
interface gi0/1.100
  crypto map CMAP
ip route 0.0.0.0 0.0.0.0 192.168.10.1


Arrivé?



Depuis le périphérique R1, je cingle à R2:



R1#ping 10.10.205.2 
Type escape sequence to abort. 

Sending 5, 100-byte ICMP Echos to 10.10.205.2, timeout is 2 seconds: 
!!!!! 
Success rate is 100 percent (5/5), round-trip min/avg/max = 2/2/3 ms</code>

R2   ICMP.  ?  ARP   R1  R2:

<source>R1#show arp 
Protocol  Address          Age (min)  Hardware Addr   Type   Interface 
Internet  10.10.205.1             -   aabb.cc00.5020  ARPA   GigabitEthernet0/2 
Internet  10.10.205.2            54   aabb.cc00.6020  ARPA   GigabitEthernet0/2

R2#show arp 
Protocol  Address          Age (min)  Hardware Addr   Type   Interface 
Internet  10.10.205.1            52   aabb.cc00.5020  ARPA   GigabitEthernet0/2 
Internet  10.10.205.2             -   aabb.cc00.6020  ARPA   GigabitEthernet0/2


Les périphériques R1 et R2 supposent qu'ils se trouvent sur le même sous-réseau de diffusion.



Les équipements SW1 et SW2 considèrent qu'ils sont connectés entre eux par deux liaisons:



sw1#show cdp neighbors
Device ID    Local Intrfce   Holdtme     Capability  Platform  Port ID 
sw2          Gi0/0           146             R S I  Linux Uni Gi0/0 
sw2          Gi0/3           146             R S I  Linux Uni Gi0/3 
R1           Gi0/2           156              R B   Linux Uni Gi0/2

sw2#show cdp neighbors
Device ID    Local Intrfce   Holdtme     Capability  Platform  Port ID 
sw1          Gi0/0           140             R S I  Linux Uni Gi0/0 
sw1          Gi0/3           140             R S I  Linux Uni Gi0/3 
R2           Gi0/2           156              R B   Linux Uni Gi0/2


Tentative de connexion à GW2 via SSH à partir du périphérique SW1:



sw1#ssh –l root 10.76.76.138
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW2~#


Conclusion: les sites 1 et 2 sont liés de manière transparente en un seul domaine de diffusion. Je vais vérifier si le canal a un cryptage:



Statistiques du tunnel IPsec sur l'appareil GW1:



root@GW1:~# sa_mgr show 
ISAKMP sessions: 0 initiated, 0 responded

ISAKMP connections: 
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd 
1 2 (192.168.10.1,500)-(192.168.10.2,500) active 31378 31502

IPsec connections: 
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd 
1 2 (192.168.10.1,*)-(192.168.10.2,*) 17 ESP tunn 508224 27672


Un tunnel IPsec a été établi entre 192.168.10.1 et 192.168.10.2.



J'ai vérifié que seul le trafic ESP est transmis entre les appareils SW1 et SW2, sans compter STP. Voici un vidage du trafic de l'interface gi0 / 3 de SW1:







Finalement



J'ai bu trois tasses de café - puis je n'ai pas dormi de la nuit, mais je n'ai pas eu à acheter de nouveau matériel et à mettre à jour. Peut-être que cela en valait la peine, dans la version 4.3, le fournisseur a évoqué L2. Je pense prendre la version 4.3 pour les tests.



Ingénieur anonyme

t.me/anonimous_engineer



All Articles