ืฉืึทืคึฟืŸ ืึทืŸ IPSec GRE ื˜ื•ื ืขืœ ืฆื•ื•ื™ืฉืŸ Mikrotik HEX S ืื•ืŸ Juniper SRX ื“ื•ืจืš ื•ืกื‘ ืžืึธื“ืขื

ืฆื™ืœ

ืขืก ืื™ื– ื ื™ื™ื˜ื™ืง ืฆื• ืึธืจื’ืึทื ื™ื–ื™ืจืŸ ืึท ื•ื•ืคึผืŸ ื˜ื•ื ื ืขืœ ืฆื•ื•ื™ืฉืŸ ืฆื•ื•ื™ื™ ื“ืขื•ื•ื™ืกืขืก, ืึทื–ืึท ื•ื•ื™ ืžื™ืงืจืึธื˜ื™ืง ืื•ืŸ ื“ื–ืฉื•ื ื™ืคึผืขืจ ืกืจืงืก ืฉื•ืจื”.

ื•ื•ืึธืก ื”ืึธื‘ืŸ ืžื™ืจ?

ืคึฟื•ืŸ Mikrotik, ืžื™ืจ ืื•ื™ืกื“ืขืจื•ื•ื™ื™ืœื˜ ืึท ืžืึธื“ืขืœ ืื•ื™ืฃ ื“ื™ ืžื™ืงืจืึธื˜ื™ืง ื•ื•ื™ืงื™ืคึผืขื“ื™ืข ื•ื•ืขื‘ื–ื™ื™ื˜ืœ ื•ื•ืึธืก ืงืขื ืขืŸ ืฉื˜ื™ืฆืŸ IPSec ื™ื™ึทื–ื ื•ื•ืึทืจื’ ืขื ืงืจื™ืคึผืฉืึทืŸ; ืื™ืŸ ืื•ื ื“ื–ืขืจ ืžื™ื™ื ื•ื ื’, ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ื’ืึทื ืฅ ืกืึธืœื™ื“ ืื•ืŸ ื‘ื™ืœื™ืง, ื ื™ื™ืžืœื™ ืžื™ืงืจืึธื˜ื™ืง ื”ืขืงืกืก.

ื“ื™ ื•ืกื‘ ืžืึธื“ืขื ืื™ื– ื’ืขืงื•ื™ืคื˜ ืคื•ืŸ ื“ื™ ื ื™ืจืึทืกื˜ ืจื™ืจืขื•ื•ื“ื™ืง ืึธืคึผืขืจืึทื˜ืึธืจ; ื“ืขืจ ืžืึธื“ืขืœ ืื™ื– ื’ืขื•ื•ืขืŸ Huawei E3370. ืžื™ืจ ื”ืึธื‘ืŸ ื ื™ืฉื˜ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืงื™ื™ืŸ ืึทืคึผืขืจื™ื™ืฉืึทื ื– ืฆื• ื“ื™ืกืงืึทื ืขืงื˜ ืคื•ืŸ ื“ืขืจ ืึธืคึผืขืจืึทื˜ืึธืจ. ืึทืœืฅ ืื™ื– ื ืึธืจืžืึทืœ ืื•ืŸ ืกื˜ื™ื˜ืฉื˜ ื“ื•ืจืš ื“ืขืจ ืึธืคึผืขืจืึทื˜ืึธืจ ื–ื™ืš.

ื“ื™ ื”ืึทืจืฅ ื”ืื˜ ืึท Juniper SRX240H ื”ื•ื™ืคื˜ ืจืึทื•ื˜ืขืจ.

ื•ื•ืืก ืื™ื– ื’ืขืฉืขืŸ

ืขืก ืื™ื– ืžืขื’ืœืขืš ืฆื• ื™ื ืกื˜ืจื•ืžืขื ื˜ ืึท ืึทืจื‘ืขื˜ ืกื›ืขืžืข ื•ื•ืึธืก ืึทืœืึทื•ื– ืื™ืจ ืฆื• ืฉืึทืคึฟืŸ ืึทืŸ IPsec ืคึฟืึทืจื‘ื™ื ื“ื•ื ื’ ื“ื•ืจืš ืึท ืกืขืœื™ืึทืœืขืจ ืึธืคึผืขืจืึทื˜ืึธืจ, ืึธืŸ ืึท ืกื˜ืึทื˜ื™ืง ืึทื“ืจืขืก, ื ื™ืฆืŸ ืึท ืžืึธื“ืขื ืื™ืŸ ื•ื•ืึธืก ื“ื™ GRE ื˜ื•ื ื ืขืœ ืื™ื– ืืœื ื’ืขื•ื•ื™ืงืœื˜.

ื“ืขืจ ืงืฉืจ ื“ื™ืึทื’ืจืึทืžืข ืื™ื– ื’ืขื ื™ืฆื˜ ืื•ืŸ ืึทืจื‘ืขื˜ ืื•ื™ืฃ ื‘ืขืขืœื™ื ืข ืื•ืŸ ืžืขื’ืึทืคืึธืŸ ื•ืกื‘ ืžืึธื“ืขืžืก.

ื“ื™ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืื™ื– ื•ื•ื™ ื’ื™ื™ื˜:

Juniper SRX240H ืื™ื ืกื˜ืึทืœื™ืจืŸ ืื™ืŸ ื“ื™ ื”ืึทืจืฅ
ืœืืงืืœืข ืึทื“ืจืขืก: 192.168.1.1/24
ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืึทื“ืจืขืก: 1.1.1.1/30
ื’ื•ื•: 1.1.1.2

ื•ื•ื™ื™ึทื˜ ืคื•ื ื˜

ืžื™ืงืจืึธื˜ื™ืง ื”ืขืงืก ืก
ืœืืงืืœืข ืึทื“ืจืขืก: 192.168.152.1/24
ืคื•ื ื“ืจื•ื™ืกื ื“ื™ืง ืึทื“ืจืขืก: ื“ื™ื ืึทืžื™ืฉ

ื ืงืœื™ื™ืŸ ื“ื™ืึทื’ืจืึทืžืข ืฆื• ื”ืขืœืคืŸ ืื™ืจ ืคึฟืึทืจืฉื˜ื™ื™ืŸ ื•ื•ื™ ืขืก ืึทืจื‘ืขื˜:

ืฉืึทืคึฟืŸ ืึทืŸ IPSec GRE ื˜ื•ื ืขืœ ืฆื•ื•ื™ืฉืŸ Mikrotik HEX S ืื•ืŸ Juniper SRX ื“ื•ืจืš ื•ืกื‘ ืžืึธื“ืขื

Juniper SRX240 ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ:

JUNOS ื•ื•ื™ื™ื›ื•ื•ืืจื’ ืžืขืœื“ื•ื ื’ [12.1X46-D82]

ื“ื–ืฉื•ื ื™ืคึผืขืจ ืงืึธื ืคื™ื’ื•ืจืึทื˜ื™ืึธืŸ

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 "Area - 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 area-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;
    }

ืžื™ืงืจืึธื˜ื™ืง ื”ืขืงืก ืก ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ:

RouterOS ื•ื•ื™ื™ื›ื•ื•ืืจื’ ื•ื•ืขืจืกื™ืข [6.44.3]

ืžื™ืงืจืึธื˜ื™ืง ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ

/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

ื“ืขืจ ืจืขื–ื•ืœื˜ืึทื˜:
ืคึฟื•ืŸ ื“ื™ ื“ื–ืฉื•ื ื™ืคึผืขืจ ืกืจืงืก ื–ื™ื™ึทื˜

netscreen@srx240> ping 192.168.152.1  
PING 192.168.152.1 (192.168.152.1): 56 data bytes
64 bytes from 192.168.152.1: icmp_seq=0 ttl=64 time=29.290 ms
64 bytes from 192.168.152.1: icmp_seq=1 ttl=64 time=28.126 ms
64 bytes from 192.168.152.1: icmp_seq=2 ttl=64 time=26.775 ms
64 bytes from 192.168.152.1: icmp_seq=3 ttl=64 time=25.401 ms
^C
--- 192.168.152.1 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max/stddev = 25.401/27.398/29.290/1.457 ms

ืคึฟื•ืŸ ืžื™ืงืจืึธื˜ื™ืง

net[admin@GW-LTE-] > ping 192.168.1.1 
  SEQ HOST                                     SIZE TTL TIME  STATUS                                                                                                                                               
    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 
    sent=5 received=5 packet-loss=0% min-rtt=34ms avg-rtt=40ms max-rtt=51ms 

ืคื™ื™ื ื“ื™ื ื’ื–

ื ืึธืš ื“ื™ ืึทืจื‘ืขื˜, ืžื™ืจ ื‘ืืงื•ืžืขืŸ ืึท ืกื˜ืึทื‘ื™ืœ ื•ื•ืคึผืŸ ื˜ื•ื ื ืขืœ, ืคึฟื•ืŸ ื“ื™ ื•ื•ื™ื™ึทื˜ ื ืขืฅ ืžื™ืจ ืงืขื ืขืŸ ืฆื•ื˜ืจื™ื˜ ื“ื™ ื’ืื ืฆืข ื ืขืฅ ื•ื•ืึธืก ืื™ื– ืœื™ื’ืŸ ื”ื™ื ื˜ืขืจ ื“ื™ ื“ื–ืฉื•ื ื™ืคึผืขืจ, ืื•ืŸ, ืึทืงืึธืจื“ื™ื ื’ืœื™, ืฆื•ืจื™ืง.

ืื™ืš ื˜ืึธืŸ ื ื™ืฉื˜ ืจืขืงืึธืžืขื ื“ื™ืจืŸ ื ื™ืฆืŸ IKE2 ืื™ืŸ ื“ืขื ืกื›ืขืžืข; ืขืก ืื™ื– ื’ืขื•ื•ืขืŸ ืึท ืกื™ื˜ื•ืึทืฆื™ืข ืึทื– ื ืึธืš ืจื™ืกื˜ืึทืจื˜ื™ื ื’ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ืžื™ื˜ืœ, IPSec ืื™ื– ื ื™ืฉื˜ ื”ืขื›ืขืจื•ื ื’.

ืžืงื•ืจ: www.habr.com

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’