Поиск по этому блогу

вторник, 28 октября 2014 г.

Коммутаторы HP синхронизация времени

Имеется несколько коммутаторов HP J9781A 2530-48, они будут синхронизироваться с сервером времени в локальной сети

Говорим, что для синхронизации будим использовать протокол sntp
HP-2530-48(config)#timesync sntp

Устанавливаем правильную временную зону
HP-2530-48(config)# clock timezone gmt +3:00

Указываем адрес сервера, который в локальной сети будит сервером времени
HP-2530-48(config)#sntp server priority 1 10.1.1.254 3

HP-2530-48(config)#Говорим работать в юникаст режиме
sntp unicast

Теперь на коммутаторе установлено точное время
HP-2530-48(config)# clock
16:23:11 GMT +03:00 Tue Oct 28 2014

Cisco в качестве ntp сервера

Давно хотел сделать из офисной Cisco 3824 [IOS 12.3(4)T] ntp сервер для локальной сети, а тут как раз стрелки опять переводить надумали. Для себя я выбрал сервера предоставляемые «Всероссийский научно-исследовательский институт физико-технических и радиотехнических измерений» является одним из ведущих национальных метрологических институтов России и национальным пулом ntp-серверов

Задаем сервер, с которым циска будит синхронизировать свои программные часы, задаем интерфейс, с которого будит отправлен запрос и укажем, что этот сервер будит основным (prefer)
cisco(config)#ntp server 89.109.251.21 source GigabitEthernet0/0 prefer
cisco(config)#ntp server 89.109.251.22 source GigabitEthernet0/0
cisco(config)#ntp server 91.207.136.55 source GigabitEthernet0/0

Указываем, что сама циска будит являться сервером времени второго слоя
cisco(config)#ntp master 2

Задаем стандартный стандартный список доступа, указывая "что" и "кому" можно
cisco(config)#ntp access-group peer 2     
cisco(config)#ntp access-group serve 3
cisco(config)#access-list 2 permit 91.207.136.55
cisco(config)#access-list 2 permit 89.109.251.22
cisco(config)#access-list 2 permit 89.109.251.21
cisco(config)#access-list 2 deny   any
cisco(config)#access-list 3 permit 192.168.1.0 0.0.0.255
cisco(config)#access-list 3 permit 10.1.1.0 0.0.0.255
cisco(config)#access-list 3 permit 10.1.3.0 0.0.0.255
cisco(config)#access-list 3 deny   any
peer - позволяем запросы времени и управления, также разрешаем системе синхронизироваться себя с серверами представленными access-list 2
serve - позволяем запросы времени и управления, но не разрешаем системе синхронизироваться себя с серверами представленными access-list 3

Для того, что бы аппаратные часы в циско тоже синхронизировались по ntp, с их периодическим обновлением
cisco(config)#clock calendar-valid
cisco(config)#ntp update-calendar

Включает регистрацию NTP сообщений
cisco(config)#ntp logging

Указываем правильную временную зону
cisco(config)#clock timezone MSK 3

Добавляем текущее время к событиям, записываемым в логи
cisco(config)#service timestamps debug datetime localtime
cisco(config)#service timestamps log datetime localtime

Для отображения статуса ntp используется команда show ntp status
cisco#sh ntp status
Clock is synchronized, stratum 2, reference is 89.109.251.21
nominal freq is 250.0000 Hz, actual freq is 250.0042 Hz, precision is 2**24
reference time is D7FA1AD9.0DC87BF2 (16:38:33.053 MSK Tue Oct 28 2014)
clock offset is -1.6117 msec, root delay is 14.18 msec
root dispersion is 2.01 msec, peer dispersion is 0.09 msec

Она показывает:
1) synchronized - система была синхронизирована
2) stratum - stratum данной системы
3) reference - адрес, с которым система производила синхронизацию
4) nominal freq, actual freq - номинальная и действительная частота аппаратных часов
5) precision - точность часов в данной системе
6) clock offset - смещение системных часов относительно синхронизирующего сервера
7) root delay - общая задержка на пути к корневым часам
8) root dispersion, peer dispersion - показывает разброс корневого пути и синхронизируемых часов

Показать состояние синхронизации с вышестоящими серверами
cisco#sh ntp associations

      address         ref clock     st  when  poll reach  delay  offset    disp
 ~127.127.7.1      .LOCL.            1  9701    64    0     0.0    0.00  16000.
+~89.109.251.22    .PPS.             1    45    64  377    15.0   -1.20     0.2
*~89.109.251.21    .PPS.             1     0    64  377    14.7   -1.44     0.4
 ~91.207.136.55    89.109.251.23     2   567  1024  377    65.2   14.82     0.6
 * master (synced), # master (unsynced), + selected, - candidate, ~ configured

Ну вот вроде и все, настройка вроде не сложная, но пришлось искать эту информацию на сайте циско, по-этому оставлю на всякий случай сслылочки:
1)Basic System Management Configuration Guide (Setting Time and Calendar Services)
2)Cisco IOS Network Management Command Reference (major rising through ntp update-calendar)
3)Cisco IOS Configuration Fundamentals Command Reference
4) Cisco IOS Network Management Command Reference (show facility-alarm through show ntp status)

суббота, 17 мая 2014 г.

access list sl_def_acl

Это функция безопасности добавлена, начиная с версии IOS 12.3(4)T Если случается brute force, направленная против маршрутизатора, то этот ACL применяется к vty, aux линии для предотвращения доступа, после того как было превышено разрешенное количество попыток залогинится.

Если настроенное количество попыток соединения, в указанный период времени, потерпело неудачу, то Cisco устройство не примет ни какого дополнительных соединений на «период затишья». Хосты, которым разрешен доступ по другим ACL не подпадают под это правило.

Этот ACL не виден в выводе sh run, его нельзя удалить и он автоматически появляется после использования команды login block-for 61 attempts 3 within 10

cisco#sh access-lists sl_def_acl
Extended IP access list sl_def_acl
    10 deny tcp any any eq telnet log
    20 deny tcp any any eq www log
    30 deny tcp any any eq 22 log (177 matches)
    40 permit ip any any log

Более подробно Login Enhancements (Login Block)в официальном руководстве Cisco



Настройка маршрутизатора Cisco для малого офиса

Имеется в наличии маршрутизатор Cisco 3825 Version 12.4(25), необходимо настроить ее для нужд малого офиса

Задаем имя устройства
hostname cisco-office
Router>en
Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#hostname cisco-office
cisco-office(config)#
Далее устанавливаем пароли на доступ к консоли
line console 0 - устанавливаем доступ к первой консольной линии
password 12345 - устанавливаем пароль 12345 на доступ к консоли
login - команда необходима, что бы перед тем как получить доступ к CLI интерфейсу устройства, пользователь вводил пароль
exec-timeout 0 0 - настройка времени не консольного или vty порта.
logging synchronous - запрещает вывод консольных сообщений, которые прерывают ввод команд в консольном режиме, это упростит чтение и ввод сообщений на устройств Cisco
cisco-office(config)#line console 0
cisco-office(config-line)#password 12345
cisco-office(config-line)#login
cisco-office(config-line)#exec-timeout 0 0
cisco-office(config-line)#logging synchronous 
cisco-office(config-line)#

Таким же образом настраивается и доступ к vty (virtual terminal line) с небольшим отличием, можно настроить доступ до 16 vty линий (0-15)
line vty 0 4 - настроили доступ для 5 vty линий login local - говорит брать логин и пароль из локальной базы
cisco-office(config)#line vty 0 4
cisco-office(config-line)#login local
cisco-office(config-line)#exec-timeout 0 0
cisco-office(config-line)#logging synchronous 
cisco-office(config-line)#

Настроим блокировку хоста при вводе неправильного пароля определенное количество раз
cisco-office(config)#login block-for 61 attempts 3 within 10
* блокировать хост на 60 секунд при неправильно вводе пароля 3 раза в течении 10 секунд

Настройка исключений из правила блокировки (исключим хост 192.168.0.98)
cisco-office(config)# access-list 10 permit 192.0.1.2
cisco-office(config)# login quiet-mode access-class 10

Логируем неудавшиеся попытки подключения
cisco-office(config)#login on-failure log

Для безопасного подключения к оборудованию настроим SSH
ip domain-name other-office.com - в качестве доменного имени можно указать любое доменное имя
crypto key generate rsa - включает SSH сервер на оборудовании и генерирует пару RSA ключей
или так crypto key generate rsa general-keys modulus 1024 (сгенерированный ключи длиной 1024 бит)
* crypto key zeroize rsa - используется для удаления ключей RSA
Аутентификацию на Cisco можно производить двумя способами: используя сервер аутентификации или использовать локальные имя пользователя и пароль.
username admin password 12345 - создает пару логин/пароль для доступа
Можно также указать максимальное количество сессий (ip ssh maxstartups 2) и максимальное время сессии при бездействии (ip ssh time-out 90)
Далее необходимо указать vty линии, на которых будит применяться SSH (вводятся в режиме конфигурирования линии)
transport input ssh - предотвращает доступ к устройству неSSH соединений (таких как telnet) и позволят доступиться до устройства только по SSH
login local - говорит, что для аутентификации брать пару логин/пароль из локальной базы
cisco-office(config)#ip domain-name other-office.com
cisco-office(config)#crypto key generate rsa
The name for the keys will be: cisco-office.other-office.com
Choose the size of the key modulus in the range of 360 to 2048 for your
  General Purpose Keys. Choosing a key modulus greater than 512 may take
  a few minutes.

How many bits in the modulus [512]: 1024
% Generating 1024 bit RSA keys, keys will be non-exportable...[OK]

cisco-office(config)#username admin password 12345
*??? 1 0:48:11.809:  %SSH-5-ENABLED: SSH 1.99 has been enabled 
cisco-office(config)#line vty 0 4
cisco-office(config-line)#transport input ssh
cisco-office(config-line)#login local

Еще немного настроек безопасности service password-encryption - чтобы пароли не хранились в открытом виде
enable secret - для безопасного доступа к привилегированному режиму

Настраиваем "внешний" интерфейс
cisco-office(config)#int g0/0
cisco-office(config-if)#ip address 185.*.*.13 255.255.255.0
cisco-office(config-if)#no shutdown 

Настроим "внутренний" интерфейс
cisco-office(config)#int g0/1
cisco-office(config-if)#ip address 192.168.0.254 255.255.255.0
cisco-office(config-if)#ip address 10.1.1.254 255.255.255.0 secondary

Настроим DNS
ip dns server - говорим, что наше устройство будит являться DNS сервером
ip host name1 192.168.0.254 - чтобы компьютеры из локальной сети могли использовать Cisco в качестве DNS сервера
ip name-server 8.8.8.8 - собственно адрес DNS сервера (в данном случае это DNS google)
cisco-office(config)#ip dns server
cisco-office(config)#ip host name1 192.168.0.254
cisco-office(config)#ip name-server 8.8.8.8

Настроим DHCP
ip dhcp pool OFFICE - задаем имя для DHCP пула
   network 192.168.0.0 255.255.255.0 - указываем IP адреса, которые будут раздаваться по DHCP
   dns-server 192.168.0.254 - указываем адрес DNS сервера, который будут получать клиенты
   default-router 192.168.0.254 - определяет шлюз по умолчанию для клиентов
   lease 1 1 1 - определяет время "жизни" выданного адреса 1 день 1 час 1 минута
ip dhcp excluded-address 192.168.0.210 192.168.0.253 - исключаем из выдачи диапазон адресов (к примеру IP телефоны)
ip dhcp excluded-address 192.168.0.222 - исключаем из выдачи один адрес (к примеру адрес принтера)
cisco-office(config)#ip dhcp pool OFFICE
cisco-office(dhcp-config)#network 192.168.0.0 255.255.255.0
cisco-office(dhcp-config)#dns-server 192.168.0.254
cisco-office(dhcp-config)#default-router 192.168.0.254
cisco-office(dhcp-config)#lease 1 1 1
cisco-office(dhcp-config)#exit
cisco-office(config)#ip dhcp excluded-address 192.168.0.210 192.168.0.253
cisco-office(config)#ip dhcp excluded-address 192.168.0.222

Настраиваем NAT, точнее будим настраивать один из его типов - PAT, который позволяет транслировать пул внутренних адресов, используя для этого один глобальный адрес
access-list 1 permit 192.168.0.0 0.0.0.255 - создаем стандартный ACL и нем указываем адреса, которые будут транслироваться
ip nat inside source list 1 interface GigabitEthernet0/0 overload - в качестве источника будит использоваться ACL 1 и в данном случае трансляция будит проходить через интерфейс GigabitEthernet0/0 (но можно узакать и IP адрес), параметр overload как и говорит использовать PAT и включает отображение один-к-одному
ip nat inside - определяет внутренний интерфейс
ip nat outside - определяет внешний интерфейс
cisco-office(config)#access-list 1 permit 192.168.0.0 0.0.0.255
cisco-office(config)#ip nat inside source list 1 interface GigabitEthernet0/0 overload
cisco-office(config)#int g0/1
cisco-office(config-if)#ip nat inside
cisco-office(config)#int g0/0
cisco-office(config-if)#ip nat outside

Настроим маршрут по умолчанию
cisco-office(config)#ip route 0.0.0.0 0.0.0.0 185.40.77.1

Ну и настраиваем логирование, чтобы знать, что и когда происходит на нашем устройстве
logging trap debugging - устанавливаем уровень логирования (debugging самый высокий, обычно используется warnings)
logging source-interface GigabitEthernet0/1 - указываем интерфейс, который будит отправлять наши лог сообщения
logging 192.168.0.98 - указываем адрес syslog сервера
cisco-office(config)#logging trap debugging 
cisco-office(config)#logging source-interface GigabitEthernet0/1
cisco-office(config)#logging 192.168.0.98
* в качестве syslog и tftp сервера можно использовать tftpd

Ну вот вроде бы и все, самое необходимое для маршрутизатора Cisco, используемого в небольшом офисе настроено. Данный материал не претендует на полноту изложения и раскрытия всех аспектов настройки маршрутизаторов Cisco. Оставляем комментарии и полезные фичи, которые могут быть полезны

понедельник, 12 мая 2014 г.

KX-NCP 500 SIP trunk через NAT

Пока выход в интернет происходил через маршрутизатор DIR-100 (решение от Dlink для домашних пользователей) SIP trunk работал с выключенным NAT Traversal на PBX. После того как сменили DIR-100 на Cisco 3825 звонки перестали проходить. Т.е. сигнализация проходит (номер набирается, слышится сигнал "ответ станции" и дальше тишина). Почему работало через DIR-100 с выключенным NAT Traversal - не знаю.

Немного теории:
NAT (в зависимости от его вида: static, dynamic или PAT) преобразует локальный IP адрес в глобальный IP адрес. Однако, маршрутизатор с включенным NAT не транслирует локальные IP адреса находящиеся в «внутри» SIP сообщения в глобальный IP адрес. Таким образом, адрес, который SIP сервер определил, как адрес назначения для ответа, в действительности локальный адрес PBX, а не глобальный адрес маршрутизатора. Т.е. если SIP сервер получает SIP сообщение от PBX и отправляет сообщение обратно PBX, используя адрес находящийся «внутри» SIP сообщения, пакет с информацией не достигнет PBX.

Решить эту проблему позволяет либо NAT Traversal либо использование STUN сервера. Буду использовать NAT Traversal.
Шаг1 Выбираем 1.Конфигурация, далее 1.Слот (1.1) Наводим курсор мыши на «Вирт. Слот IPCMPR» и выбрать «OUS» для отключения карты перед внесением настроек.

Шаг2 Затем выбираем пункт «Свойства системного блока» И выбираем Номер порта SIP-клиента - 5060; Обход NAT – Закерп. IP адрес; NAT-№ UDP порта для передачи (RTP)голос. данных - 16000; NAT-закрепленный глобальный IP-адрес - 1.2.3.4 (глобальный IP адрес маршрутизатора, смотрящего и в сторону SIP провайдера); Возможность STUN – выкл.

* Нажимаем "Применить" и "ОК" и включаем карту.

понедельник, 5 мая 2014 г.

Juniper EX3300 ограничение скорости на порту

Необходимо зарезать скорость на access коммутаторе Juniper EX3200, сделать это необходимо в рамках одного устройства. Я находил несколько способов настройки, но выбрал свой (может оно конечно и коряво вышло, но пока работает и клиент не жалуется).

В моем варианте сначала используется механизм shaping-rate, ограничивающий скорость передачи пакетов, установив максимальную ширину канала С уровня иерархии edit ограничим максимальную скорость в 4MB/s на 26 порту:
{master:0}[edit]
juniper@acc-5# set class-of-service interfaces ge-0/0/26 shaping-rate 4000000

Проверяем результат
{master:0}[edit]
juniper@acc-5# show class-of-service 
interfaces {
    ge-0/0/26 {
        shaping-rate 4m;
    }
}

Механизм shaping-rate дает примерно вот такой результат (использовалась программа Iperf и графическая оболочка для нее Jperf, на компах с двух сторон стояла Windows 7 64 bit)

Затем использовались механизм policer. Policerпозволяет контролировать максимальную скорость приема и передачи на интерфейсе, позволяет решить, как дальнейшим образом поступить с трафиком. Пакеты, которые соответствуют ограничению или отбрасываются, или с другим классом передачи.
{master:0}[edit]
juniper@acc-5# set firewall policer 4m if-exceeding bandwidth-limit 4m burst-size-limit 250000
{master:0}[edit]
juniper@acc-5# set firewall policer 4m then discard

policer 4m - задается имя для policer-а, будит использоваться в дальнейшем.
Проверяем результат
{master:0}[edit]
juniper@acc-5#show firewall
...................
policer 4m {
    if-exceeding {
        bandwidth-limit 4m;
        burst-size-limit 250000;
    }
    then discard;
}
.................

Используем механизм firewall filters - позволяет управлять пакетами, проходящими через устройство к сети назначения, а также принятыми и переданными пакетами на самом устройстве.
{master:0}[edit]
juniper@acc-5#set firewall family ethernet-switching filter 4m 
term limit4m then accept policer 4m

Посмотрим результат
{master:0}[edit]
juniper@acc-5#show firewall 
.............................
family ethernet-switching {
        filter shaping {
        term limit4m {
            then {
                accept;
                policer 4m;
            }
        }
    }
}

policer 4m {
    if-exceeding {
        bandwidth-limit 4m;
        burst-size-limit 250000;
    }
    then discard;
}
.......................

Осталось применить это правило к интерфейсу
{master:0}[edit interfaces ge-0/0/26]
juniper@acc-5#set unit 0 family ethernet-switching filter input 4m

Посмотрим результат
{master:0}[edit ]
juniper@acc-5#show interfaces ge-0/0/   26 
unit 0 {
    family ethernet-switching {
        filter {
            input 4m;
        }
    }
}

Механизм shaping-rate дает примерно вот такой результат (использовалась программа Iperf и графическая оболочка для нее Jperf, на компах с двух сторон стояла Windows 7 64 bit)

Получается, что shaping-rate отвечает за ограничение скорости принятых пакетов, а policer - отвечает за ограничение скорости отправленных пакетов, если смотреть со стороны клиента.

Самая сложная вещь была для меня это расчет burst-size-limit. Я так до конца и не понял, что это за механизм и для чего он нужен. Если считать по формуле, приведенной на официальном сайте, то скорость у меня не поднималась выше 300Kb/s. Как я понял, каждый ее подбирает эмпирическим путем. Я для расчета брал вот такую формулу (4000000*0,5)/8 = 250000



вторник, 22 апреля 2014 г.

Настройка ICD group на KX-NCP 500

Для распределения вызовов, как для внешних, так и для внутренних вызовов,настраивается - incoming call distribution group (ICD group)

Шаг1
Нажмите 3.Группа, затем 5.Группа распределения вх. вызовов, 1.Настройка группы (3.5.1) Представлены ICD группы по умолчанию НА вкладке "Главное" можно задать имя, конкретной группе вы ставить метод распределения вызова в группе ("Метод распределения")


Шаг2
Далее нажмите на вкладку Переполнение при отсутствии ответа, указывается внутренний номер телефона, который будит звонить, если в группе вызов остался без ответа. И указывается время по истечении, которого вызов в группе считается не отвеченным (колонка Время переполнения).


Шаг3
В пункте 3.5.1 нажимаем Абоненты группы (М), для добавления членов к группе


  • Номер группы ICD должен соответствовать, номеру группы, выбранном в первом шаге.

  • Шаг4
    Назначить входящей линии в соответствие ICD группу. 10.СО линии & входящие вызовы, затем 2. Таблица DIL & настройка порта (10.2). Здесь указывается внутренний номер телефона для каждого периода времени

    На данном этапе настроена ICD группа, но она пока не участвует в распределении входящих вызовов.

    Шаг5
    Для распределения вызовов по номерам, представленным в ICD группе, необходимо указать для нее нужный номер. Заходим 10.СО линии & входящие вызовы, затем 3.Таблица DDI/DID (10.3)

    * Нажимаем во всех окнах "Применить" и "ОК"

    Для перехвата вызова, пришедшего на другой внутренний номер необходимо набрать *41внутрен._номер_телефона. Например: входящий звонок поступил на номер 101, то необходимо набрать *41101 и поднять трубку.

    Я не являюсь специалистом по АТС Panasonik (просто после покупки данной АТС пришлось ее настраивать) и представленная здесь инструкция получена методом "проб и ошибок", и чтением форумов (в основном иностранных), возможно здесь есть какие-то неточности, что-то сделано не "best practices", однако телефоны звонят.

    пятница, 18 апреля 2014 г.

    Настройка SIP trunk на KX-NCP 500

    Шаг1
    Выбираем 1.Конфигурация, далее 1.Слот (1.1) Наводим курсор мыши на «Вирт. Слот IPCMPR» и выбрать «OUS» для отключения карты перед внесением настроек.


    Шаг2
    Затем таким же образом выбираем пункт «Свойства системного блока» И выбираем Номер порта SIP-клиента - 5060; Обход NAT – выкл; Возможность STUN – выкл


    Шаг3
    Затем таким же образом выбираем пункт «Свойства платы» Нажимаем «Общие параметры»: Метод назначения DNS-сервера – Вручную; указать предпочитаемый и альтернативный (если необходимо) DNS-сервер


    Шаг4
    Затем таким же образом выбираем пункт «Свойства порта» На вкладке «Основное» выбираем, к примеру, слот1-порт1:
    1. в поле «Атрибуты канала» выбираем Основной канал
    2. по желанию заполняем «Имя провадера»
    3. в поле «Адрес SIP-сервера» указываем либо доменное имя SIP-сервера провайдера либо его IP-адрес
    4. в поле «Номер порта SIP-сервера» указываем 5060
    5. в поле «Домен услуг SIP» указываем доменное имя SIP-сервера провайдера



    Щаг5
    Затем выбираем вкладку «Номер счета» и заполняем соответствующие поля


    Шаг6
    Затем выбираем вкладку «Регистрация» В поле «Возможность регистрации» выбираем «Включить»


    * После завершения настройки и применения всех настроек поле «Соединение» перейдет в состояние «INS»

    Шаг7
    Выбираем вкладку «Вызывающая сторона» В поле «Из заголовка» указываем «PBX-CLIP» для наших линий. Эта настройка сообщает PBX использовать «CLIP ID» в качестве caller ID при исходящем вызове.


    Шаг 8
    Выбираем 10.СО линии & Входящие вызовы, 3.Таблица DDI/DID (10.3) В поле «Номер DDI/DID» пишем городской номер, а в поле «Адресат DDI/DID» указываем внутренний номер абонента или ICD группу.


    Шаг9
    Выбираем 4.Внутренняя линия, 1.Настройка внутр. линии (4.1) и выбираем вкладку «ISDN CLIP» для назначения CLIP ID (Caller ID) каждой внутренней линии, при необходимости присваиваем имя. В поле «CLIP ID» указываем внешний номер для
    исх. звонков.


    Шаг10
    Выбираем 10.СО линии & Входящие вызовы,1.Настройки СО (10.1) для набора «9» для доступа к SIP trunk (к внешней линни)


    Шаг11
    Выбираем 3.Группа, 1.Группа СО и 2.Приоритет прямого доступа (3.1.2) для настройки «9» для доступа только к SIP trunk. Поле «Имя & номер группы СО» оставляем пустым для линии, которой нужен доступ к SIP trunk.


    Шаг12
    Выбираем 3.Группа, 4.План набора номера (3.4) Записываем шаблон плана нумерации.


    * Нажимаем во всех окнах "Применить" и "ОК"

    Я не являюсь специалистом по АТС Panasonik (просто после покупки данной АТС пришлось ее настраивать) и представленная здесь инструкция получена методом "проб и ошибок", и чтением форумов (в основном иностранных), возможно здесь есть какие-то неточности, что-то сделано не "best practices", однако телефоны звонят.