Obiettivo
È necessario organizzare un tunnel VPN tra due dispositivi, come Mikrotik e la serie SRX di Juniper.
Cosa abbiamo
Abbiamo scelto dal wiki di Mikrotik un modello che supporta la crittografia hardware IPSec, ritenendolo abbastanza compatto ed economico: il Mikrotik hEXS.
Il modem USB è stato acquistato dal gestore telefonico più vicino, e il modello era Huawei E3370. Non abbiamo effettuato alcuna operazione per slegarlo dal gestore. Tutto è di fabbrica e programmato dallo stesso operatore.
Nel core è stato installato il router centrale Juniper SRX240H.
Cosa siamo riusciti a fare
Siamo riusciti a realizzare uno schema di funzionamento che consente, tramite il gestore telefonico, di creare una connessione IPsec senza avere un indirizzo statico, utilizzando un modem.
Questo schema di connessione è utilizzato e funziona con i modem USB di Beeline e MegaFon.
La configurazione è la seguente:
Nel core è installato Juniper SRX240H
Indirizzo locale: 192.168.1.1/24
Indirizzo esterno: 1.1.1.1/30
GW: 1.1.1.2
Punto remoto
Mikrotik hEX S
Indirizzo locale: 192.168.152.1/24
Indirizzo esterno: Dinamico
Una piccola diagramma per comprendere il funzionamento:
Configurazione Juniper SRX240:
Versione del software JUNOS Software Release [12.1X46-D82]
Configurazione Juniper
interfacce {
ge-0/0/0 {
descrizione Internet-1;
unità 0 {
famiglia inet {
indirizzo 1.1.1.1/30;
}
}
}
gr-0/0/0 {
unità 1 {
descrizione GRE-Tunnel;
tunnel {
sorgente 172.31.152.2;
destinazione 172.31.152.1;
}
famiglia inet;
vlan {
unità 0 {
famiglia inet {
indirizzo 192.168.1.1/24;
}
}
}
}
st0 {
unità 5 {
descrizione "Area - 192.168.152.0/24";
famiglia inet {
mtu 1400;
}
}
}
}
}
opzioni-di-routing {
statico {
rotta 0.0.0.0/0 prossimo-hop 1.1.1.2;
rotta 192.168.152.0/24 prossimo-hop gr-0/0/0.1;
rotta 172.31.152.0/30 prossimo-hop st0.5;
}
router-id 192.168.1.1;
}
sicurezza {
ike {
opzioni-di-tracciamento {
file vpn.log dimensione 256k file 5;
flag all;
}
policy ike-gretunnel {
modalità aggressiva;
descrizione area-192.168.152.0;
proposta-set standard;
pre-shared-key ascii-text "mysecret"; ## SECRET-DATA
}
gateway gw-gretunnel {
ike-policy ike-gretunnel;
dynamic inet 172.31.152.1;
interfaccia-esternale ge-0/0/0.0;
versione v2-only;
}
}
ipsec {
}
policy vpn-policy0 {
perfect-forward-secrecy {
chiavi group2;
}
proposta-set standard;
}
vpn vpn-gretunnel {
bind-interface st0.5;
df-bit copy;
vpn-monitor {
ottimizzato;
source-interface st0.5;
destinazione-ip 172.31.152.1;
}
ike {
gateway gw-gretunnel;
no-anti-replay;
ipsec-policy vpn-policy0;
install-interval 10;
}
stabilire-tunnel immediatamente;
}
}
politiche {
from-zone vpn to-zone vpn {
policy st-vpn-vpn {
match {
source-address any;
destination-address any;
application any;
}
then {
permettere;
log {
session-init;
session-close;
}
conteggio;
}
}
}
from-zone trust to-zone vpn {
policy st-trust-to-vpn {
match {
source-address any;
destination-address any;
application any;
}
then {
permette;
log {
session-init;
session-close;
}
conteggio;
}
}
}
from-zone vpn to-zone trust {
policy st-vpn-to-trust {
match {
source-address any;
destination-address any;
application any;
}
then {
permette;
log {
session-init;
session-close;
}
conteggio;
}
}
}
zone {
security-zone trust {
vlan.0 {
host-inbound-traffic {
system-services {
all;
}
protocolli {
all;
}
}
}
}
security-zone vpn {
interfacce {
st0.5 {
host-inbound-traffic {
protocolli {
ospf;
}
}
}
gr-0/0/0.1 {
host-inbound-traffic {
system-services {
all;
}
protocolli {
all;
}
}
}
}
}
security-zone untrust {
interfacce {
ge-0/0/0.0 {
host-inbound-traffic {
system-services {
ping;
ssh;
ike;
}
}
}
}
}
vlan {
vlan-local {
vlan-id 5;
l3-interfaccia vlan.1;
}
}
}Configurazione Mikrotik hEX S:
Versione del software RouterOS [6.44.3]
Configurazione 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
Risultato:
Dal lato di Juniper SRX
netscreen@srx240> ping 192.168.152.1
PING 192.168.152.1 (192.168.152.1): 56 byte di dati
64 byte da 192.168.152.1: icmp_seq=0 ttl=64 tempo=29.290 ms
64 byte da 192.168.152.1: icmp_seq=1 ttl=64 tempo=28.126 ms
64 byte da 192.168.152.1: icmp_seq=2 ttl=64 tempo=26.775 ms
64 byte da 192.168.152.1: icmp_seq=3 ttl=64 tempo=25.401 ms
^C
--- statistiche ping per 192.168.152.1 ---
4 pacchetti trasmessi, 4 pacchetti ricevuti, 0% perdita di pacchetti
round-trip min/avg/max/stddev = 25.401/27.398/29.290/1.457 msDal lato di Mikrotik
net[admin@GW-LTE-] > ping 192.168.1.1
SEQ HOST SIZE TTL TEMPO STATO
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
inviati=5 ricevuti=5 perdita-pacchetti=0% min-rtt=34ms avg-rtt=40ms max-rtt=51ms Conclusioni
Dopo il lavoro svolto abbiamo ottenuto stabilità VPN Tunnel, dalla rete remota abbiamo accesso a tutta la rete che si trova dietro juniper, e viceversa.
Sconsiglio di utilizzare IKE2 in questo schema, si verificava la situazione in cui dopo il riavvio di un dispositivo non si attivava IPSec.
Fonte: habr.com
