L'objectif
Il est nécessaire d'organiser un tunnel VPN entre deux dispositifs, tels que la série Mikrotik et Juniper SRX.
Ce que nous avons
Parmi les Mikrotik, nous avons choisi sur le site du wiki Mikrotik, un modèle qui peut supporter le chiffrement matériel IPSec, à notre avis, il s'est avéré assez compact et peu coûteux, à savoir le Mikrotik hEXS.
Le modem USB a été acheté chez le fournisseur de services le plus proche, le modèle était Huawei E3370. Aucune opération de désassociation avec l'opérateur n'a été effectuée. Tout est d'origine et flashé par l'opérateur lui-même.
Le cœur du réseau est équipé du routeur central Juniper SRX240H.
Ce que nous avons réalisé
Nous avons réussi à mettre en œuvre un schéma de travail qui permet, via un opérateur mobile, sans adresse statique, de créer une connexion IPsec à l'aide d'un modem dans laquelle un tunnel GRE est encapsulé.
Ce schéma de connexion est utilisé et fonctionne sur des modems USB de Beeline et Megafon.
La configuration est la suivante :
Au cœur se trouve le Juniper SRX240H
Adresse locale : 192.168.1.1/24
Adresse externe : 1.1.1.1/30
GW : 1.1.1.2
Point distant
Mikrotik hEX S
Adresse locale : 192.168.152.1/24
Adresse externe : Dynamique
Un petit diagramme pour comprendre le fonctionnement :
Configuration de Juniper SRX240 :
Version du logiciel JUNOS Software Release [12.1X46-D82]
Configuration de Juniper
interfaces {
ge-0\/0\/0 {
description Internet-1;
unit 0 {
family inet {
address 1.1.1.1\/30;
}
}
}
gr-0\/0\/0 {
unit 1 {
description GRE-Tunnel;
tunnel {
source 172.31.152.2;
destination 172.31.152.1;
}
family inet;
vlan {
unit 0 {
family inet {
address 192.168.1.1\/24;
}
}
st0 {
unit 5 {
description "Zone - 192.168.152.0\/24";
family inet {
mtu 1400;
}
}
routing-options {
static {
route 0.0.0.0\/0 next-hop 1.1.1.2;
route 192.168.152.0\/24 next-hop gr-0\/0\/0.1;
route 172.31.152.0\/30 next-hop st0.5;
}
router-id 192.168.1.1;
}
security {
ike {
traceoptions {
file vpn.log size 256k files 5;
flag all;
}
policy ike-gretunnel {
mode aggressive;
description zone-192.168.152.0;
proposal-set standard;
pre-shared-key ascii-text "mysecret"; ## SECRET-DATA
}
gateway gw-gretunnel {
ike-policy ike-gretunnel;
dynamic inet 172.31.152.1;
external-interface ge-0\/0\/0.0;
version v2-only;
}
ipsec {
}
policy vpn-policy0 {
perfect-forward-secrecy {
keys group2;
}
proposal-set standard;
}
vpn vpn-gretunnel {
bind-interface st0.5;
df-bit copy;
vpn-monitor {
optimized;
source-interface st0.5;
destination-ip 172.31.152.1;
}
ike {
gateway gw-gretunnel;
no-anti-replay;
ipsec-policy vpn-policy0;
install-interval 10;
}
establish-tunnels immediately;
}
}
policies {
from-zone vpn to-zone vpn {
policy st-vpn-vpn {
match {
source-address any;
destination-address any;
application any;
}
then {
permit;
log {
session-init;
session-close;
}
count;
}
}
}
from-zone trust to-zone vpn {
policy st-trust-to-vpn {
match {
source-address any;
destination-address any;
application any;
}
then {
permit;
log {
session-init;
session-close;
}
count;
}
}
}
from-zone vpn to-zone trust {
policy st-vpn-to-trust {
match {
source-address any;
destination-address any;
application any;
}
then {
permit;
log {
session-init;
session-close;
}
count;
}
}
}
zones {
security-zone trust {
vlan.0 {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
}
security-zone vpn {
interfaces {
st0.5 {
host-inbound-traffic {
protocols {
ospf;
}
}
}
gr-0\/0\/0.1 {
host-inbound-traffic {
system-services {
all;
}
protocols {
all;
}
}
}
security-zone untrust {
interfaces {
ge-0\/0\/0.0 {
host-inbound-traffic {
system-services {
ping;
ssh;
ike;
}
}
}
}
}
vlans {
vlan-local {
vlan-id 5;
l3-interface vlan.1;
}Configuration Mikrotik hEX S :
Version du logiciel RouterOS [6.44.3]
Configuration Mikrotik
/ip address
add address=172.31.152.1/24 comment=GRE-Tunnel interface=gre-srx network=172.31.152.0
add address=192.168.152.1/24 comment=Local-Area interface=bridge network=192.168.152.0
/interface gre
add comment=GRE-Tunnel-SRX-HQ !keepalive local-address=172.31.152.1 name=gre-srx remote-address=172.31.152.2
/ip ipsec policy group
add name=srx-gre
/ip ipsec profile
add dh-group=modp1024 dpd-interval=10s name=profile1
/ip ipsec peer
add address=1.1.1.1/32 comment=GRE-SRX exchange-mode=aggressive local-address=172.31.152.1 name=peer2 profile=profile1
/ip ipsec proposal
set [ find default=yes ] enc-algorithms=aes-256-cbc,aes-128-cbc,3des
add enc-algorithms=aes-128-cbc,3des name=proposal1
/ip route
add distance=10 dst-address=192.168.0.0/16 gateway=gre-srx
/ip ipsec identity
add comment=IPSec-GRE my-id=address:172.31.152.1 peer=peer2 policy-template-group=srx-gre secret=mysecret
/ip ipsec policy
set 0 disabled=yes
add dst-address=0.0.0.0/0 proposal=proposal1 sa-dst-address=1.1.1.1 sa-src-address=172.31.152.1 src-address=172.31.152.0/30 tunnel=yes
/ip address
add address=172.31.152.1/24 comment=GRE-Tunnel interface=gre-srx network=172.31.152.0
add address=192.168.152.1/24 comment=Local-Area interface=bridge network=192.168.152.0
Résultat :
Du côté de Juniper SRX
netscreen@srx240> ping 192.168.152.1
PING 192.168.152.1 (192.168.152.1): 56 octets de données
64 octets depuis 192.168.152.1: icmp_seq=0 ttl=64 time=29.290 ms
64 octets depuis 192.168.152.1: icmp_seq=1 ttl=64 time=28.126 ms
64 octets depuis 192.168.152.1: icmp_seq=2 ttl=64 time=26.775 ms
64 octets depuis 192.168.152.1: icmp_seq=3 ttl=64 time=25.401 ms
^C
--- statistiques de ping 192.168.152.1 ---
4 paquets envoyés, 4 paquets reçus, 0% de perte de paquets
round-trip min/avg/max/stddev = 25.401/27.398/29.290/1.457 msDu côté de Mikrotik
net[admin@GW-LTE-] > ping 192.168.1.1
SEQ HÔTE TAILLE TTL TEMPS STATUT
0 192.168.1.1 56 64 34ms
1 192.168.1.1 56 64 40ms
2 192.168.1.1 56 64 37ms
3 192.168.1.1 56 64 40ms
4 192.168.1.1 56 64 51ms
envoyés=5 reçus=5 perte de paquets=0% min-rtt=34ms avg-rtt=40ms max-rtt=51ms Conclusions
Après le travail effectué, nous avons obtenu une connexion stable VPN Tunnel, depuis le réseau distant, nous avons accès à tout le réseau qui se trouve derrière juniper, et vice versa.
Je ne recommande pas d'utiliser IKE2 dans ce schéma, il est arrivé qu'après le redémarrage d'un certain appareil, IPSec ne se lève pas.
Source : habr.com
