Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Блок кода
esr(config-dnat)# ruleset DNAT
esr(config-dnat-ruleset)# from zone UNTRUST
esr(config-dnat-ruleset)# rule 1
esr(config-dnat-rule)# match destination-address object-group network NET_UPLINK
esr(config-dnat-rule)# match protocol tcp 
esr(config-dnat-rule)# match destination-port object-group SRV_HTTP
esr(config-dnat-rule)# action destination-nat pool SERVER_POOL
esr(config-dnat-rule)# enable
esr(config-dnat-rule)# exit
esr(config-dnat-ruleset)# exit
esr(config-dnat)# exit

...

Блок кода
esr# show ip nat translations

Якорь

...

Настройка_NTP
Настройка_NTP
Настройка NTP

NTP (англ. Network Time Protocol — протокол сетевого времени) — сетевой протокол для синхронизации внутренних часов оборудования с использованием IP-сетей, использует для своей работы протокол UDP, учитывает время передачи и использует алгоритмы для достижения высокой точности синхронизации времени.

Алгоритм настройки

ШагОписаниеКомандаКлючи

1

Cоздать объект с URL

Включить NTP.

esr(config)#

object-group url <NAME>

ntp enable


2

Указать набор

Задать IP-адрес NTP-сервера, либо участника NTP-синхронизации.

esr(config

-object-group-url)# url <URL>

<URL> адрес веб страницы, сайта.

3

Создать профиль проксирования.

esr(config)# ip http profile <NAME>

<NAME> название профиля.

4

Выбрать действие по умолчанию.

esr(config-profile)# default action { deny | permit | redirect }
[redirect-url <URL>]

<URL> адрес хоста, на который будут передаваться запросы.

5

Указать описание (необязательно).

esr(config-profile)# description <description>

<description> до 255 символов.

6

Указать режим фильтрации данных (необязательно).

esr(config-profile)# filter <DATA-TYPE>

<DATA-TYPE> – тип данных, подлежащих фильтрации. Может принимать значения (как одно, так и несколько):

activexзаблокироватьвсеприложенияActiveX;
  • cookie – запретить веб-сайтам размещать cookie на пользовательских компьютерах;
  • js – заблокироватьвсестраницыилиприложения на основеJavascript.7

    Указать удаленный или локальный список URL и тип операции (блокировка/пропуск трафика/перенаправление) (необязательно).

    esr(config-profile)# urls { local | remote } <URL_OBJ_GROUP_NAME>
     action { deny | permit | redirect } [redirect-url <URL>]

    <URL_OBJ_GROUP_NAME> указать название объекта, содержащего набор URL.

    8

    Указать удаленный сервер, где лежат необходимые списки URL (необязательно).

    esr(config)# ip http proxy server-url <URL> 

    <URL> адрес сервера, откуда будут брать удалённые списки url.

    9

    Указать прослушиваемый порт для проксирования http (необязательно).

    esr(config)# ip http proxy listen-ports <OBJ_GROUP_NAME>

    <OBJ_GROUP_NAME> – имя профиля порта, задаётся строкой до 31 символа.

    По умолчанию прослушиваются порты 80 и 8080

    10

    Указать прослушиваемый порт для проксирования (необязательно).

    esr(config)# ip https proxy listen-ports <OBJ_GROUP_NAME>

    <OBJ_GROUP_NAME> имя профиля порта, задаётся строкой до 31 символа.

    По умолчанию прослушивается порт 443

    11

    Указать базовый порт для проксирования http (необязательно).

    esr(config)# ip http proxy redirect-port <PORT>

    <PORT> – номер порта, указывается в диапазоне [1..65535].

    Значение по умолчанию 3128.

    12

    Указать базовый порт для проксирования https (необязательно).

    esr(config)# ip http proxy redirect-port <PORT>

    <PORT> – номер порта, указывается в диапазоне [1..65535].

    Значение по умолчанию 3128.

    13

    Включить проксирование на интерфейсе на основе выбранного HTTP-профиля.

    esr(config-if)# ip http proxy <PROFILE_NAME>

    <PROFILE_NAME> название профиля.

    14

    Включить проксирование на интерфейсе на основе выбранного HTTPS-профиля.

    esr(config-if)# ip https proxy <PROFILE_NAME>     

    <PROFILE_NAME> название профиля.

    15

    Создать списки сервисов, которые будут использоваться при фильтрации.

    esr(config)# object-group service <obj-group-name>

    <obj-group-name> – имя профиля сервисов, задается строкой до 31 символа.

    16

    Задать описание списка сервисов (необязательно).

    esr(config-object-group-service)# description <description>

    <description> – описание профиля, задается строкой до 255 символов.

    17

    Внести необходимые сервисы (TCP/UDP-порты) в список.

    esr(config-object-group-service)# port-range 3128-3135

    Прокси-сервер ESR использует для своей работы порты, начиная с базового порта, определённого на 10 шаге.

    Для http proxy используются порты, начиная с базового порта по базовый порт + количество cpu данной модели ESR - 1.

    Для https proxy используются порты, начиная с базового порта + количество cpu данной модели ESR по базовый порт + количество cpu данной модели ESR * 2 - 1.

    Количество CPU можно посмотреть с  помощью команды show cpu utilization.

    18

    Создать набор правил межзонового взаимодействия.

    esr(config)# security zone-pair <src-zone-name> self

    <src-zone-name> – зона безопасности, в которой находятся интерфейсы с функцией ip http proxy или ip https proxy.

    self – предопределенная зона безопасности для трафика, поступающего на сам ESR.

    19

    Создать правило межзонового взаимодействия.

    esr(config-zone-pair)# rule <rule-number>

    <rule-number> – 1..10000.

    20

    Задать описание правила (необязательно).

    esr(config-zone-rule)# description <description>

    <description> – до 255 символов.

    21

    Указать действие данного правила.

    esr(config-zone-rule)# action <action> [ log ]

    <action> – permit.

    log – ключ для активации логирования сессий, которые устанавливаются согласно данному правилу.

    22

    Установить имя IP-протокола, для которого должно срабатывать правило.

    esr(config-zone-rule)# match protocol <protocol-type>

    <protocol-type> – tcp.

    Прокси-сервер ESR работает по протоколу ESR.

    23

    Установить профиль TCP/UDP-портов получателя, для которых должно срабатывать правило (если указан протокол).

    esr(config-zone-rule)# match [not]
    destination-port <obj-group-name>

    <obj-group-name> – имя профиля сервисов, созданного на шаге 12.

    24

    Включить правило межзонового взаимодействия.

    esr(config-zone-rule)# enable

    Примечание

    Если функция Firewall на ESR принудительно не отключена, необходимо создать разрешающее правило для зоны Self.

    Пример настройки HTTP-прокси

    Задача:

    Организовать фильтрацию по URL для ряда адресов посредством прокси.

    Image Removed
    Решение:

    Создадим набор URL, по которым будет осуществляться фильтрация. Настроим прокси-фильтр и укажем действия для созданного набора URL:

    Блок кода
    esr# configure
    esr(config)# object-group url FILTER_OG
    esr(config-object-group-url)# regexp *speedtest.net/
    esr(config-object-group-url)# url http://ya.ru/
    esr(config-object-group-url)# url https://ya.ru/
    esr(config-object-group-url)# exit

    Scroll Pagebreak

    Создаем профиль, где указываем действие для всех URL и действие для созданной группы URL:

    Блок кода
    esr(config)# ip http profile PROXY_LIST
    esr(config-profile)# default action permit
    esr(config-profile)# urls local FILTER_OG action redirect redirect-url http://test.loc
    esr(config-profile)# exit

    Включим проксирование на интерфейсе по профилю ‘PROXY_LIST’:

    Блок кода
    esr(config)# interface gi 1/0/1
    esr(config-if)# ip http proxy PROXY_LIST
    esr(config-if)# ip https proxy PROXY_LIST

    Если используется Firewall, создадим для него разрешающие правила. Для этого:

    Определим число CPU, доступных для данной модели:

    Блок кода
    esr(config)# do show cpu utilization 
    CPU    Last      Last      Last      
           5 sec     1 min     5 min     
    ----   -------   -------   -------   
    0      3.79%     1.61%     1.55%     
    1      0.00%     0.00%     0.01%     
    2      0.00%     0.00%     0.01%     
    3      0.00%     0.02%     0.01%   

    В примере используется модель ESR-20, у которой 4 CPU.

    Соответственно по формуле, описанной на 16 шаге алгоритма настройки http/https-прокси, получаем: 

    Для http proxy необходимо открыть порты с 3128 по 3131 (3128+4-1=3131).

    Для https proxy необходимо открыть порты с 3132 по 3135 (3128+4=3132, 3128+2*4-1=3135).

    Создаем профиль портов прокси-сервера:

    Блок кода
    esr(config)# object-group service PROXY_PORTS
    esr(config-object-group-service)# port-range 3128-3135
    esr(config-object-group-service)# exit

    Создаем разрешающее правило межзонового взаимодействия:

    Блок кода
    esr(config)# security zone-pair LAN self
    esr(config-zone-pair)# rule 50
    esr(config-zone-pair-rule)# action permit
    esr(config-zone-pair-rule)# match protocol tcp
    esr(config-zone-pair-rule)# match destination-port object-group PROXY_PORTS
    esr(config-zone-pair-rule)# enable
    esr(config-zone-pair-rule)# exit
    esr(config-zone-pair)# exit

    Scroll Pagebreak

    Задача:

    Изменить локальный список с URL для фильтрации proxy-сервером на список, получаемый с удалённого сервера.

    Image Removed

    Решение:

    Для использования remote-списка необходимо в конфигурации прописать адрес сервера, а в ip http profile изменить urls local на urls remote <list> название списка, лежащего на сервере:

    Блок кода
    esr(config)# ip http proxy server-url http://198.51.100.10
    esr(config)# ip http profile PROXY_LIST
    esr(config-profile)# default action permit
    esr(config-profile)# urls remote URLS_PROXY action deny
    esr(config-profile)# exit

    Scroll Pagebreak

    Задача:

    Организовать фильтрацию по веб-скриптам ActiveX URL для ряда адресов посредством прокси и настроить логирование событий в консоль.

    Решение:

    ...

    Для блокировки сайтов, использующих ActiveX, настроим фильтрацию и включим логирование событий proxy:

    Блок кода
    esr(config)# ip http profile PROXY_LIST
    esr(config-profile)# default action permit
    esr(config-profile)# urls local FILTER_OG action redirect redirect-url http://test.loc
    esr(config-profile)# filter activex
    esr(config-profile)# log enable
    esr(config-profile)# exit

    Теперь при срабатывании фильтрации, а также указанных действий для URL, в консоль будут попадать логи вида:

    Блок кода
    %FIREWALL-I-LOG: http proxy 'Filter' (QQ) denied (JavaScript)
    %FIREWALL-I-LOG: http proxy 'PROXY_LIST' permitted 

    Scroll Pagebreak

    Настройка NTP

    NTP (англ. Network Time Protocol — протокол сетевого времени) — сетевой протокол для синхронизации внутренних часов оборудования с использованием IP-сетей, использует для своей работы протокол UDP, учитывает время передачи и использует алгоритмы для достижения высокой точности синхронизации времени.

    Алгоритм настройки

    ШагОписаниеКомандаКлючи

    1

    Включить NTP.

    esr(config)# ntp enable

    2

    Задать IP-адрес NTP-сервера, либо участника NTP-синхронизации.

    esr(config)# ntp { pool | )# ntp { pool | server | peer } { <IPV4>  | <NAME> | IPV6}

    <IPV4> – IP-адрес назначения (шлюз), задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

    <NAME> – DNS-имя сервера, задаётся строкой до 31 символа.

    <IPV6> –  IP-адрес назначения (шлюз), задаётся в виде X:X:X:X::X, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF].

    3

    Включить отправку нескольких пакетов вместо одного при установке соединения.esr(config-ntp)# burst

    4

    Включить отправку нескольких пакетов вместо одного в случае разрыва соединения.esr(config-ntp)# iburst

    5

    Задать ключ для аутентификации (не обязательно).

    esr(config-ntp)# key <ID>

    <ID> – идентификатор ключа, задается в диапазоне [1..255].

    6

    Установить максимальное значение интервала времени между отправкой сообщений NTP-серверу (не обязательно).

    esr(config-ntp)# maxpoll <INTERVAL>

    <INTERVAL> – максимальное значение интервала опроса. Параметр команды используется как показатель степени двойки при вычислении длительности интервала в секундах, вычисляется путем возведения двойки в степень, заданную параметром команды, принимает значение [10..17].

    Значение по умолчанию:
    10 (210= 1024 секунды или 17 минут 4 секунды).

    7

    Установить минимальное значение интервала времени между отправкой сообщений NTP-серверу (не обязательно).

    esr(config-ntp)# minpoll <INTERVAL>

    <INTERVAL> – минимальное значение интервала опроса в секундах вычисляется путем возведения двойки в степень, заданную параметром команды, принимает значение [4..6].

    Значение по умолчанию:

    6 (26= 64 секунды или 1 минута 4 секунды).

    8

    Отметить данный NTP-сервер как предпочтительный (не обязательно).

    esr(config-ntp)# prefer


    9

    Определить список доверенных IP-адресов, с которыми может происходить обмен ntp-пакетами (не обязательно).

    esr(config)# ntp access-addresses <NAME>

    <NAME> – имя профиля IP-адресов, задаётся строкой до 31 символа.

    10

    Указать идентификатор ключа из профиля связки ключей (не обязательно).

    esr(config)# ntp authentication trusted-key <ID>

    <ID> – идентификатор ключа из профиля связки ключей.

    11

    Указать имя профиля связки ключей (не обязательно).

    esr(config)# ntp authentication key-chain <WORD>

    <WORD> – имя профиля связки ключей.

    12

    Активировать аутентификацию для NTP по ключу (не обязательно).

    esr(config)# ntp authentication enable


    13

    Включить режим приёма широковещательных сообщений NTP-серверов для глобальной конфигурации и всех существующих VRF (не обязательно).

    esr(config)# ntp broadcast-client enable


    14

    Задать значение кода DSCP для использования в IP-заголовке исходящих пакетов NTP-сервера (не обязательно).

    esr(config)# ntp dscp <DSCP>

    <DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

    Значение по умолчанию: 46.

    15

    Включить режим query-only, ограничивающий взаимодействие по NTP для определенного профиля IP-адресов (не обязательно).

    esr(config)# ntp object-group query-only <NAME>

    <NAME> – имя профиля IP-адресов, задаётся строкой до 31 символа.

    16

    Включить режим serve-only, ограничивающий взаимодействие по NTP для определенного профиля IP-адресов (не обязательно).

    esr(config)# ntp object-group serve-only <NAME>

    <NAME> – имя профиля IP-адресов, задаётся строкой до 31 символа.

    17

    Указать source-IP-адреса для NTP-пакетов для всех peer (не обязательно).

    esr(config)# ntp source address <ADDR>

    <ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

    18

    Задать текущие время и дату в ручном режиме (не обязательно).

    esr# set date <TIME> [<DAY> <MONTH> [ <YEAR> ] ]

    <TIME> – устанавливаемое системное время, задаётся в виде HH:MM:SS, где:

    • HH – часы, принимает значение [0..23];
    • MM – минуты, принимает значение [0 .. 59];
    •  SS – секунды, принимает значение [0 .. 59].
    • <DAY> – день месяца, принимает значения [1..31];

    <MONTH> – месяц, принимает значения [January/February/March/April/May/June/July/August/September/October/November/December];

    <YEAR> – год, принимает значения [2001..2037].

    Scroll Pagebreak

    Пример настройки

    Задача:

    Настроить синхронизацию времени от NTP-сервера.

    ...

    IP-адрес NTP-сервера – 192.168.52.41.

    scroll-pagebreak


    Решение:

    Примечание

    Предварительно нужно выполнить следующие действия:

    • указать зону безопасности  для интерфейса gi1/0/1;
    • настроить IP-адрес для интерфейса gi1/0/1, чтобы обеспечить IP-связность с NTP-сервером.

    Пример:

    Блок кода
    security zone untrust
    exit
    object-group service NTP
      port-range 123
    exit
    interface gigabitethernet 1/0/1
      security-zone untrust
      ip address 192.168.52.8/24
    exit
    security zone-pair untrust self
      rule 10
        action permit
        match protocol udp
        match destination-port object-group NTP
        enable
      exit
    exit


    ...