# Модуль Б: 5 Конфигурация защищенных соединений

#### Задание:

9\. Между маршрутизаторами RTR-HQ и RTR-BR сконфигурируйте защищенное соединение

* a) Все параметры на усмотрение участника.
* b) Используйте парольную аутентификацию.
* c) Обеспечьте динамическую маршрутизацию: ресурсы одного офиса должны быть доступны из другого офиса
* d) Для обеспечения динамической маршрутизации используйте протокол OSPF

#### Выполнение:

Для выполнения данного задания будет построен **GRE**-туннель с последующим шифрованием по средством **IPSec:**

**RTR-HQ:**

* Создадим туннель **gre 1**:
  * поместив его в зону безопусности **public;**
  * указав внешний IP-адрес **RTR-HQ**;
  * указав внешний IP-адрес **RTR-BR;**
  * указав IP-адрес туннельного интерфейса **gre 1:**

```
tunnel gre 1
  ttl 16
  ip firewall disable
  local address 11.11.11.11
  remote address 22.22.22.22
  ip address 172.16.1.1/30
  enable
exit
```

* Также для проверки можно разрешить **ICMP** из зоны **public** в зону **self** (т.е. на RTR-HQ) для проверки связности туннельного интерфейса:
  * И разрешаем трафик **GRE**:

```
security zone-pair public self
  rule 1
    description "ICMP"
    action permit
    match protocol icmp
    enable
  exit
  rule 2
    description "GRE"
    action permit
    match protocol gre
    enable
  exit
exit
```

* Применияем и подтверждаем внесённые изменения:

```
do commit
do confirm
```

* Проверяем:

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2813%29.png)

**RTR-BR:**

Аналогично **RTR-HQ**, результат:

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2814%29.png)

Проверяем (работоспособность) связность по туннельному интерфейсу:

* RTR-HQ -> RTR-BR:

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2815%29.png)

* RTR-BR -> RTR-HQ:

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2816%29.png)

**Выполняем шифрование туннеля средствами IPsec**

**RTR-HQ | RTR-BR:**

* Создадим профиль протокола **IKE**. В профиле укажем группу **Диффи-Хэллмана 2**, алгоритм шифрования **AES 128 bit**, алгоритм аутентификации **MD5**. Данные параметры безопасности используются для защиты **IKE-соединения**:

```
security ike proposal ike_prop1
  authentication algorithm md5
  encryption algorithm aes128
  dh-group 2
exit
```

* Создадим политику протокола **IKE**. В политике указывается список профилей протокола **IKE**, по которым могут согласовываться узлы и ключ аутентификации:

```
security ike policy ike_pol1
  pre-shared-key ascii-text P@ssw0rd
  proposal ike_prop1
exit
```

* Создадим шлюз протокола IKE. В данном профиле указывается GRE-туннель, политика, версия протокола и режим перенаправления трафика в туннель:
  * **RTR-HQ:**

```
security ike gateway ike_gw1
  ike-policy ike_pol1
  local address 11.11.11.11
  local network 11.11.11.11/32 protocol gre 
  remote address 22.22.22.22
  remote network 22.22.22.22/32 protocol gre 
  mode policy-based
exit
```

* * **RTR-BR:**

```
security ike gateway ike_gw1
  ike-policy ike_pol1
  local address 22.22.22.22
  local network 22.22.22.22/32 protocol gre 
  remote address 11.11.11.11
  remote network 11.11.11.11/32 protocol gre 
  mode policy-based
exit
```

* Создадим профиль параметров безопасности для IPsec-туннеля. В профиле укажем группу Диффи-Хэллмана 2, алгоритм шифрования AES 128 bit, алгоритм аутентификации MD5. Данные параметры безопасности используются для защиты IPsec-туннеля:

```
security ipsec proposal ipsec_prop1
  authentication algorithm md5
  encryption algorithm aes128
  pfs dh-group 2
exit
```

* Создадим политику для IPsec-туннеля. В политике указывается список профилей IPsec-туннеля, по которым могут согласовываться узлы.

```
security ipsec policy ipsec_pol1
  proposal ipsec_prop1
exit
```

* Создадим IPsec VPN. В VPN указывается шлюз IKE-протокола, политика IP sec-туннеля, режим обмена ключами и способ установления соединения. После ввода всех параметров включим туннель командой enable.

```
security ipsec vpn ipsec1
  ike establish-tunnel route
  ike gateway ike_gw1
  ike ipsec-policy ipsec_pol1
  enable
exit
```

* Настраиваем **firewall:**

```
security zone-pair public self
  rule 3
    description "ESP"
    action permit
    match protocol esp
    enable
  exit
  rule 4
    description "AH"
    action permit
    match protocol ah
    enable
  exit
exit
```

* Применияем и подтверждаем внесённые изменения:

```
do commit
do confirm
```

* Проверяем:
  * **RTR-HQ:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%284%29.png)

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%285%29.png)

* * **RTR-BR:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%286%29.png)

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%287%29.png)

* **tcpdump -i ens34** (на ISP):

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%288%29.png)

Таким образом, **IPsec работает** - корректно

**Настраиваем динамическую маршрутизацию для связи локальных сетей через туннельный интерфейс:**

**RTR-HQ:**

* Создадим **OSPF-процесс** с идентификатором **1** и перейдём в режим конфигурирования протокола **OSPF**
  * Создадим и включим требуемую область
  * Включим OSPF-процесс

```
router ospf 1
  area 0.0.0.0
    enable
  exit
  enable
exit
```

* Для установления соседства с другими маршрутизаторами привяжем их к OSPF-процессу и области.
  * Далее включим на интерфейсе маршрутизацию по протоколу OSPF:
    * интерфейс **gre 1** - для установления соседства
    * интерфейс **gi1/0/2.(100,200,300)** - для обявления локальных сетей

```
tunnel gre 1
  ip ospf instance 1
  ip ospf
exit

interface gigabitethernet 1/0/2.100
  ip ospf instance 1
  ip ospf
exit

interface gigabitethernet 1/0/2.200
  ip ospf instance 1
  ip ospf
exit

interface gigabitethernet 1/0/2.300
  ip ospf instance 1
  ip ospf
exit
```

* Разрешаем трафик **OSPF**:

```
security zone-pair public self
  rule 5
    description "OSPF"
    action permit
    match protocol ospf
    enable
  exit
exit
```

* Применияем и подтверждаем внесённые изменения:

```
do commit
do confirm
```

**RTR-BR:**

Аналогично **RTR-HQ,** вроверяем:

* Установление соседства:
  * **RTR-HQ:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%289%29.png)

* * **RTR-BR:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2810%29.png)

* Таблицу маршрутизации:
  * **RTR-HQ:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2811%29.png)

* * **RTR-BR:**

![](https://sysahelper.ru/pluginfile.php/223/mod_page/content/4/image%20%2812%29.png)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://seraphim.gitbook.io/volodyazetkin2024gitbook/2024-modul-b-1.-bazovaya-nastroika/modul-b-5-konfiguraciya-zashishennykh-soedinenii.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
