вторник, 12 апреля 2016 г.

Juniper SRX IPSec VPN Guide

Juniper IPSec Web Configurator (внешний сайт)

Общие принципы:
- IPSec - набор стандартов, который определяет каким образом шифровать данные, проверять целостность данных, аутентифицировать стороны обменена данными;
- IPSec работает на сетевом уровне;
- Для обмена данными в IPSec используется асимметричное шифрование (Public and Private keys...) и протоколы защиты передаваемых данных (AH, ESP)
- Проверка целостности данных осуществляется за счет алгоритмов хеширования. The Junos OS supports MD5, SHA1, and 256-bit SHA2 hashing
- Безопасное согласование ключей происходит по алгоритму Diffie-Hellman. JunOS поддерживает следующие группы: 1, 2, 5, 14, 19, 20, 24. Чем выше группа - тем безопасней.


Для того, чтобы зачищенная связь между узлами работала, должны быть установлены однонаправленные Secure associations (SA) между участниками соединений.

Агрессивный режим необходимо использовать, когда одна из сторон имеет динамический адрес, так, как в обычном (main) режиме происходит сверка адресов.

Детально почитать про работу IPSec в Junos можно в Study Guide для экзамена JNCIS-SEC - Login/Register and download Study Guide

Бывает 2 типа IPSec VPN на SRX:
1. Policy-Based Example: Configuring a Policy-Based VPN (Juniper site)
2. Route-Based Example: Configuring a Route-Based VPN (Juniper site)

Некоторые нюансы при выборе типа IPSec VPN:
- Для топологии hub-and-spoke необходимо использовать Route-Based VPN;
- Route-Based VPN поддерживает обмен маршрутами в IPSec тунеле используя динамические протоколы маршрутизации (OSPF, etc.), в Policy-Based такой возможности нет;
- Route-Based не всегда правильно работает, когда с другой стороны тунеля стоит устройство другого вендора, необходимо использовать Policy-Based;
- Policy-Based не поддерживает NAT.
Comparing Policy-Based and Route-Based VPNs
What is the difference between a Policy-based VPN and a Route-based VPN? - для SSG

Для удобства конфигурации уже существуют предконфигурированые proposal-set для IKE конфигурации:
root@Mordor240# set security ike policy ike-policy-cfgr proposal-set ?
Possible completions:
  basic                IKE proposal-set for basic
  compatible           IKE proposal-set for compatible
  standard             IKE proposal-set for standard

• basic:
– Proposal 1: preshared key, DH g1, DES, and SHA1
– Proposal 2: preshared key, DH g1, DES, and MD5
• compatible:
– Proposal 1: preshared key, DH g2, 3DES, and SHA1
– Proposal 2: preshared key, DH g2, 3DES, and MD5
– Proposal 3: preshared key, DH g2, DES, and SHA1
– Proposal 4: preshared key, DH g2, DES, and MD5
• standard:
– Proposal 1: preshared key, DH g2, 3DES, and SHA1
– Proposal 2: preshared key, DH g2, AES128, and SHA1

Еще иногда бывает, что необходимо перенести текущею конфигурацию IPSec на другое устройство, для этого можно перенести строчку с pre-shared-key и все будет работать.

Перед началом выполнения конфигурации, убедимся, что достижимость нашего пира присутствует.
root@Mordor240> ping 46.182.xx.yy source 109.108.xx.yy rapid count 50
PING 46.182.xx.yy (46.182.xx.yy): 56 data bytes
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
--- 46.182.xx.yy ping statistics ---
50 packets transmitted, 50 packets received, 0% packet loss
round-trip min/avg/max/stddev = 2.736/3.192/4.792/0.464 ms

Конфигурация WAN интерфейса:
set interfaces ge-0/0/0 unit 20 vlan-id 20
set interfaces ge-0/0/0 unit 20 family inet address 109.108.xx.yy/28

Маршрут по умолчанию через WAN интерфейс:
set routing-options static route 0.0.0.0/0 next-hop 109.108.xx.y1

Для организации канала необходимо создать Point-To-Point тунельный интерфейс (в случае, если на данный интерфейс мы планируем терминировать несколько тунелей, необходимо добавить в конфигурацию set interfaces st0 unit 0 multipoint):
set interfaces st0 unit 1 family inet

Конфигруация Internet Key Exchange проткола:
set security ike proposal ike-bank1-prop authentication-method pre-shared-keys
set security ike proposal ike-bank1-prop dh-group group2
set security ike proposal ike-bank1-prop authentication-algorithm sha1
set security ike proposal ike-bank1-prop encryption-algorithm 3des-cbc
set security ike proposal ike-bank1-prop lifetime-seconds 28800

set security ike policy ike-bank1-policy mode main
set security ike policy ike-bank1-policy proposals ike-bank1-prop
set security ike policy ike-bank1-policy pre-shared-key ascii-text "$9$DtiqfFnCu1qmSev"

set security ike gateway ike-bank1-gat ike-policy ike-bank1-policy
set security ike gateway ike-bank1-gat address 46.182.xx.yy
set security ike gateway ike-bank1-gat external-interface ge-0/0/0.20
set security ike gateway ike-bank1-gat version v2-only

Конфигуарцяи IPSec тунеля:
set security ipsec proposal ipsec-bank1-prop protocol esp
set security ipsec proposal ipsec-bank1-prop authentication-algorithm hmac-sha1-96
set security ipsec proposal ipsec-bank1-prop encryption-algorithm 3des-cbc
set security ipsec proposal ipsec-bank1-prop lifetime-seconds 3600

set security ipsec policy ipsec-bank1-policy perfect-forward-secrecy keys group2
set security ipsec policy ipsec-bank1-policy proposals ipsec-bank1-prop

set security ipsec vpn ipsec-bank1-vpn bind-interface st0.1
set security ipsec vpn ipsec-bank1-vpn ike gateway ike-bank1-gat
set security ipsec vpn ipsec-bank1-vpn ike proxy-identity local 172.84.10.0/24
set security ipsec vpn ipsec-bank1-vpn ike proxy-identity remote 10.1.50.0/24
set security ipsec vpn ipsec-bank1-vpn ike ipsec-policy ipsec-bank1-policy
set security ipsec vpn ipsec-bank1-vpn establish-tunnels immediately

Конфигурация зон (создание address-book с адресами подсетей, разрешения для входящего траффика, подключения интерфейсов):
set security zones security-zone trust address-book address loopback_srx 172.84.10.0/24
set security zones security-zone trust host-inbound-traffic system-services all
set security zones security-zone trust host-inbound-traffic protocols all
set security zones security-zone trust interfaces lo0.0

set security zones security-zone vpn address-book address bank1_tests 10.1.50.0/24
set security zones security-zone vpn address-book address bank1_tests_192 192.168.13.0/24
set security zones security-zone vpn host-inbound-traffic system-services all
set security zones security-zone vpn host-inbound-traffic protocols all
set security zones security-zone vpn interfaces st0.1

Создание политики разрешающей обмен траффиком между зонами:
set security policies from-zone vpn to-zone trust policy vpn-trust-cfgr match source-address loopback_srx
set security policies from-zone vpn to-zone trust policy vpn-trust-cfgr match destination-address bank1_tests
set security policies from-zone vpn to-zone trust policy vpn-trust-cfgr match application any
set security policies from-zone vpn to-zone trust policy vpn-trust-cfgr then permit

При тестировании можно использовать default политику -  set security policies default-policy permit-all, которая разрешит весь траффик.

Так, как мы используем тип IPSec - Route-Based, прописываем статические маршруты через наш тунельный интерфейс.
set routing-options static route 192.168.13.0/24 next-hop st0.1
set routing-options static route 10.1.50.0/24 next-hop st0.1

Включение дэбага(traceoptions):
set security ike traceoptions file ike-trace
set security ike traceoptions file size 512k
set security ike traceoptions file files 5
set security ike traceoptions file world-readable
set security ike traceoptions flag all

set security ipsec traceoptions flag all
set security ipsec traceoptions flag security-associations
set security ipsec traceoptions flag packet-drops
set security ipsec traceoptions flag packet-processing

Просмотр файлов дэбага:
show log ike-trace
show log kmd-logs

Диагностика работы IPSec:
root@Mordor240> show security ike security-associations  
Index   State  Initiator cookie  Responder cookie  Mode           Remote Address
432398  UP     a8eae7cadb118d63  60a99ff91c613181  IKEv2          46.182.xx.yy  

root@Mordor240> show security ipsec security-associations
  Total active tunnels: 1
  ID    Algorithm       SPI      Life:sec/kb  Mon lsys Port  Gateway
  <131074 ESP:3des/sha1 f59c1625 2177/ unlim   -   root 500   46.182.xx.yy   
  >131074 ESP:3des/sha1 d4e57ca4 2177/ unlim   -   root 500   46.182.xx.yy



Комментариев нет:

Отправить комментарий