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

понедельник, 6 августа 2018 г.

Смена ip адреса на CUCM, UCCX, CPLM 11 версии

Имеем: развернутую инфраструктуру Cisco unified communication manager, Cisco Unified Contact Center Express, Cisco Prime License manager 11 версии. Всё это добро развернуто на ESXi v6,5 с лицензией Enterprise +

Требуется перевести дествующую систему в новую подсеть. На CUCM и UCCX операцию будем проводить с помощью инструментария Cisco prime collaboration deployment (CPCD), который специально разработан для управления приложениями Unified Communications (UC). CPCD позворляет производить установку, миграцию на новую версию, смену ip адреса и имени (перед работами обязательно уточнить поддерживаемые операции для различных версий UC).

Для начала заходим на CPCD и заводим ESXi хост(ы), где располагаются требуемые UC приложения. Меню Inventory, затем нажимаем Add new ESXi host

Добавляем кластеры UC над которыми планируем проводить работы, Inventory-Clusters, затем Define new cluster.
*Имя ни на что не влияет, будет использоваться внутри CPCD

Нажимаем Далее, если в следующем окне ничего не покано, нажимаем Add node.
Заполняем поля в зависимости от типа продукта, над которым будут происходить мануляции.
Нажимаем Далее и делаем то что от нас требует CPCD.

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


Приступаем к созданию требуемого задания для CPCD, меню Tasks-Readdress.
  • В первом шаге выбираем кластер с UC приложениями
  • Во втором указываем указываем новые ip адреса и т.д.
  • В третьем выбираем время запуска задачи. Можно запланировать выполнения задачи на определенной время, а можно выбрать Start task manualy, задача успешно добавиться, но будет ждать пока ее не запустят вручную.
  • Нажимаем Далее, в последнем шаге можно еще раз все проверить, так же обащаем внимание на цвет галочки.


Теперь для запуска процесса осталось перейти в Monitoring, выбрать нашу задачу и нажать Start. Итог выполнения тасков ниже.


Продолжеине следует......

вторник, 3 апреля 2018 г.

Смена пароля через RDP

Как изменить пароль пользователя Windows?

    1. Для локальной машине ctrl+alt+del
    2. Для rdp сессии cntl+alt+end
    3.1 Для двойной rdp сессии cntrl+shift+alt+end
    3.2 Если предыдущая комбинация не сработала можно попробовать так:
    Нажимаем Start -> пишем osk (вызов виртуальной клавиатуры). После того, как виртуальная клавиатура откроется, нажимаем ctrl+alt на физической клавиатуре и del на виртуальной.
    И нажимаем Change password.

понедельник, 2 апреля 2018 г.

Loopback interface and Policy Base Routing

Дано: есть две локации соединенных независимыми l2vpn линками, маршрутизация осуществляетсяна основе OSPF. Как настроена маршрутизация через балансинг или приоритет одному из каналов - не важно.
Необходимо:Что бы трафик от одного Loopback адреса гарантировано шел через одного провайдера, а трафик с другого Loopback адреса - шел через другого провайдера. Нужно в целях мониторинга каналов, что бы исключить ложные срабатывания (хотя вероятность этого весьма мала) при нестабильности одного из провайдеров.

Маршрутизация на основе адреса источника достаточно широко освещена в интернете и делается через Policy-based routing и Route-map.
Policy-based routing представляет собой инструмент для передачи и маршрутизации трафика основываясь на заданных политиках. PBR позволяет строить политики основываясь на ACL, размере пакета и т.д.
Route-map это объект в конфигурационном файле с помощью которого можно настраивать различный функционал PBR, BGP апдейты и т.д. Route-map всегда используется на входящем интерфейсе и не имеет никакого влияния на трафик на исходящем интерфесе.

Ниже незамысловатая схема и настройки для требуемой задачи, без маршрутизации и прочего.
Тестовый стенд
R1R3
interface Loopback0
 ip address 10.1.1.1 255.255.255.255
 ip policy route-map PBRtest
!
interface Loopback1
 ip address 10.1.1.2 255.255.255.255
 ip policy route-map PBRtest
!
interface FastEthernet0/0
 ip address 1.1.1.1 255.255.255.0
 !
interface FastEthernet0/1
 ip address 6.6.6.1 255.255.255.0 secondary
 ip address 5.5.5.1 255.255.255.0
 !
access-list 10 permit 10.1.1.1
access-list 20 permit 10.1.1.2
!
route-map PBRtest permit 10
 match ip address 10
 set ip next-hop 5.5.5.2
!
route-map PBRtest permit 20
 match ip address 20
 set ip next-hop 1.1.1.2
!
 ip local policy route-map PBRtest
!
interface Loopback0
 ip address 7.7.7.7 255.255.255.255
!
interface FastEthernet0/1
 ip address 2.2.2.3 255.255.255.0



Route-map по логике работы чем-то напоминает ACL. Как и ACL имеют порядковые номера (для удобства использования); производят оценку по списку до тех пор, пока не найдено совпадение первого оператора и затем выполняется соответствующее действие.

route-map PBRtest permit 10название карты действие порядковый номер
match ip address 20правило сравнения: соответствует всем ip адресам из ACL 20
set ip next-hop 1.1.1.2устанавливает действия: следующий хоп для пакетов из ACL 20
ip policy route-map PBRtestприменяем нашу карту на требуемых интерфейсах


Route-map работает только с входящим трафиком, и трафик от Loopback интерфеса не будет обрабатываться route-map'ом, так как является локально сгенерированным.
Чтобы заставить route-map работать с локально сгенерированным трафиком (loopback interface, gre и т.д.) требуется глобально включить ip local policy route-map PBRtest. ip local policy позволяет указать только одну карту маршрутизации, поэтому правила соответствия Loopback интерфейсов записаны в одну route-map, с разными порядковыми номерами.

Проверим корректность настроек. Т.к. стенд можно себе позволить включить дебуг
R1#debug ip policy
Policy routing debugging is one
*Mar  1 00:16:32.275: IP: s=10.1.1.1 (local), d=2.2.2.3, len 100, policy match
*Mar  1 00:16:32.275: IP: route map PBRtest, item 10, permit
*Mar  1 00:16:32.275: IP: s=10.1.1.1 (local), d=2.2.2.3 (FastEthernet0/1), len 100, policy routed
*Mar  1 00:16:32.279: IP: local to FastEthernet0/1 5.5.5.2
*Mar  1 00:16:32.307: IP: s=10.1.1.1 (local), d=2.2.2.3, len 100, policy match
*Mar  1 00:16:32.307: IP: route map PBRtest, item 10, permit
*Mar  1 00:16:36.647: IP: s=10.1.1.2 (local), d=2.2.2.3, len 100, policy match
*Mar  1 00:16:36.647: IP: route map PBRtest, item 20, permit
*Mar  1 00:16:36.647: IP: s=10.1.1.2 (local), d=2.2.2.3 (FastEthernet0/0), len 100, policy routed
*Mar  1 00:16:36.651: IP: local to FastEthernet0/0 1.1.1.2
*Mar  1 00:16:36.835: IP: s=10.1.1.2 (local), d=2.2.2.3, len 100, policy match
*Mar  1 00:16:36.835: IP: route map PBRtest, item 20, permit
policy routed значит что пакет ушел согласно нашей карты, policy rejected — normal forwarding значит, что пакет пошел согласно глобальной таблицы, т.е. наше правило не работает.
Можно проверить классически через команду show.
R1#sh route-map PBRtest
route-map PBRtest, permit, sequence 10
  Match clauses:
    ip address (access-lists): 10
  Set clauses:
    ip next-hop 5.5.5.2
  Policy routing matches: 5 packets, 570 bytes
route-map PBRtest, permit, sequence 20
  Match clauses:
    ip address (access-lists): 20
  Set clauses:
    ip next-hop 1.1.1.2
  Policy routing matches: 5 packets, 570 bytes

И в том и в другом случае видно, что пакеты идут как нам нужно, карта работает.

Для лучшего понимания мехнизма работы PBR и Route-map, следует ознакомиться с документацией: Understanding Policy Routing Route-Maps for IP Routing Protocol Redistribution Configuration

P.S. для правильной работы сети и понимания работы применяемых механизмов, лучше всего подходят официальные документы.

вторник, 16 января 2018 г.

VMware player 12 static NAT (PAT)

Потребовалось для тестовых целей развернуть виртуалку (используется VMware Workstation Player 12.5.9 бесплатноая версия), так как предполагается использовать данную VM из разных подсетей, режим Bridge VMplayer`а не хотелось бы использовать, решил попробовать NAT: Used to share the host`s IP address

За настройку NAT в VMplayer отвечает файл C:\ProgramData\VMware\vmnetnat.conf (справедливо для Windows 7). Ручное редактирование данного файла результата не дало (вероятно виновата конфигурация рук), вероятно бесплатная версия VMplayer не позволяет из внешней сети устанавливать подключение к сети VM. Это позволяет сделать virtual network editor, но он доступен в версии PRO. Попробуем его запустить.

Качаем PRO версию либо 14 либо 12, кому что. Если используется VMplayer 12 версии то соответсвенно качаем PRO 12 версии, ну и т.д. Извлекаем содержимое .exe файла, для этого можно использовать 7zip или почитать тут. Находим файл Core.cab, откываем его и находим файл vmnetcfg.exe и копируем его в установочную папку VMplayer`а (для Windows 7 это C:\Program Files (x86)\VMware\VMware Player)

Открываем файл vmnetcfg.exe от администратора и видим окно редактора (если с первого раза не откроется и выскочит ошибка о каком-нибудь файле, то соответственно копируем его тоже). Выбираем нужные настройки сети (NAT: Used to share the host`s IP address), жмем NAT Settings, далее Add ну и заполняем интересующие нас поля.
Проверяем наше ssh соединение из командной строки windows telnet 192.168.1.66 2222, ну или через putty и видим, что соединение успешно утсновлено.
 Со стороны host машины
C:\Users\TEST\Downloads>netstat -an

Active Connections

  Proto  Local Address          Foreign Address        State
............................................................
  TCP    192.168.1.66:2222      192.168.1.66:61270     ESTABLISHED


Со стороны виртуальной машины
root@debian-921:~# netstat -an | grep 22
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN
tcp        0      0 192.168.43.136:22       192.168.1.66:61270      ESTABLISHED
Полезные ссылки:

Accessing External Networks from a NAT Network

воскресенье, 14 января 2018 г.

Cisco not boot automatically

Установили новую cisco 3850 (конкретно WS-C3850-24S 03.06.05E), сохранили конфиг, установили переменную загрузки, все работало месяца 3 без проблем. При замене ИБП пришлось ее выключить, но вот загрузить снова она не захотела.

Подключаемся по консоли и видим следующее сообщение:
Booting...(use DDR clock 667 MHz)
Interface GE 0 link down***ERROR: PHY link is down

The system is not configured to boot automatically.  The
following command will finish loading the operating system
software:

    boot


switch:
POST прошел, но вот найти загрузочную запись не получается, кажется отсутствует переменная загрузки (с переменной загрузки точно все было в порядке, т.к. свич настраивался на рабочем месте, а потом отправлен на локацию).
Делаем то, что просит cisco, пишем boot, но команда почему-то не сработала (может проблем какой-нибудь вклинился)
switch: boot
Unknown cmd: boot
Еще раз пишем boot, в этот раз все получилось, пошла загрузка
switch: boot
 
Getting rest of image
Reading full image into memory...Check base package header ...: done = 16384
Getting rest of image 
После загрузки смотрим на состояние переменной загрузки
sw-core1#sh boot
---------------------------
Switch 1
---------------------------
Current Boot Variables:
BOOT variable does not exist

Boot Variables on next reload:
BOOT variable = flash:packages.conf
Allow Dev Key = yes
Manual Boot = no
Enable Break = no

Действительно переменная загрузки слетела. Ну что же установим ее повторно
sw-core1(config)#boot system switch all flash:packages.conf
Проверяем
sw-core1#show boot
---------------------------
Switch 1
---------------------------
Current Boot Variables:
BOOT variable = flash:packages.conf;

Boot Variables on next reload:
BOOT variable = flash:packages.conf
Allow Dev Key = yes
Manual Boot = no
Enable Break = no

sw-core1#sh ver | i register
Configuration register is 0x102
Вроде все нормально. Сохраняем конфиг и перезагружаемся.
Перезагрузка произошла успешно, все сервисы поднялись.

Иследование всемирной паутины нашло похожий цисковский баг Cisco Bug: CSCue76684 - 3850 switch or 5760 controller fails boot after configuration is saved P.S. У cisco 3850 предусмотено два режима установки ПО, это INSTALL mode и BUNDLE mode. INSTALL это режим по умолчанию и cisco рекомендует использовать его, т.к. требуется меньше ресурсов при загрузке и позволяет получить более полный набор функций (меньше телодвижений при обновлении).
INSTALL использует специальный пакетный файл packages.conf для загрузки свича. Во flash памяти будет куча .pkg файлов.
BUNDLE для тех кто привык работать по-старинке с использованием традиционных IOS образов. BUNDLE режим предполагает использование больше количества памяти, чем INSTALL.
Проверить режим установки можно посмотреть командой show version (в данном случае режим INSTALL)
sw-core1#sh ver
................................................
Switch Ports Model              SW Version        SW Image              Mode
------ ----- -----              ----------        ----------            ----
*    1 32    WS-C3850-24S       03.06.05E         cat3k_caa-universalk9 INSTALL
Полезные ссылки:
Catalyst 3850 Series Switch Upgrade, Management, and Recovery Techniques
Cisco IOS File System, Configuration Files, and Bundle Files Appendix, Cisco IOS XE Release 3SE

четверг, 14 декабря 2017 г.

CCNA интересные вопросы

Во время подготовке к CCNA (номер экзамена 200-125) столкнулся с несколькими интересными для меня вопросами. При подготовке использовал оффициальный гайд и естественно дамны (куда же без них ). Далее собствено сами вопросы и объяснение того как я их понимаю.

Вопросы по DTP

Для понимания сути вопроса мне помогла следующая таблица
Dynamic AutoDynamic DesirableTrunkAccess
Dynamic Auto AccessTrunkTrunkAccess
Dynamic DesirableTrunkTrunkTrunkAccess
TrunkTrunkTrunkTrunkLimited Connectivity
AccessAccessAccessLimited ConnectivityAccess

Собственно cами вопросы
Which DTP switch port mode allows the port to create a trunk link if
the neighboring port is in trunk mode,dynamic desirable mode, or desirable auto mode?
A. Dynamic Auto
B. Dynamic Desirable
C. Access
D. Trunk
Correct Answer: B
Мое понимание: Имеется ввиду, при каких режимах работы порты смогут согласовать транк. Если установлен режим dynamic auto с обоих сторон, то порты согласуются в access (некорректно). Если с одной стороны установлен Dynamic Desirable то порты согласуются с указанными режимами. Поэтому ответ B. Второй вопрос менее понятен и логичен, ниже мое понимание после некоторых изысканий.
Which mode is compatible with Trunk, Access, and desirable ports?
A. Trunk Ports
B. Access Ports
C. Dynamic Auto
D. Dynamic Desirable
Correct Answer: C
Мое понимание: Возможно имеется ввиду следующее "если соседний порт настроен в trunk/access/desirable режиме", то при каком режиме соединение между портами будет работать. Разница между этими режимами в том, что dynamic auto пассивно ожидает запроса от соседнего порта для формирования транка, в то время как dynamic desirable активно пытается сделать порт транковым . Поэтому ответ С.


Вопросы по маршрутизации

Еще два вопроса с "подвохом" для ответа на которые пришлось погуглить. Они касаются понимания таблицы маршрутизации.

Для начала цитата из цисковского официального гайда для подготовки к экзамену 200-125
"When a router tries to route a packet, the router might not match the packet’s destination IP address with any route. When that happens, the router normally just discards the packet. Routers can be configured so that they use either a statically configured or dynamically learned default route. The default route matches all packets, so that if a packet does not match any other more specific route in the routing table, the router can at least forward the packet based on the default route."
How does a router handle an incoming packet whose destination network is missing from the 
Routing table?
A. it discards the packet.
B. it broadcasts the packet to each network on the router.
C. it routes the packet to the default route.
D. it broadcasts the packet to each interface on the router
Correct Answer: C
Мое понимание: Тут вроде все просто, что маршрутизатор делает с пакетом, если адрес назначения отсутствует в таблице маршрутизации, очевидно, что маршрутизатор отправляет пакет по маршруту по умолчанию. Ответ C.
When a router is unable to find a known route in the routing table,how dose it handle 
the pacet?
A. It sends the packet to the next hop address
B. It sends the packet to the gateway of last resort
C. It discards the packet
D. It sends the packet over the route with the best metric
Correct Answer: C
Мое понимание: Этот вопрос на первый взгляд кажется похожим на предыдущий и напрашивается ответ B (ну по крайней мере для меня). Но если внимательно прочитать вопрос "как маршрутизатор будет обрабатывать пакет, если маршрутизатор не в состоянии найти маршрут в таблице маршрутизации". Так как маршрут по умолчанию тоже тоже является маршрутом и, соответсвенно, он тоже должен присутствовать в таблице маршрутизации иначе пакет будет отброшен. Ответ C.

Вопросы по STP

Вопросы по STP впринципе не сложные, но вот сама формулировка вопроса порой с "изюминкой". Для ответа на вопросы по STP, если не углубляться в протоколы, достаточно простой таблички.
STPRSTP
blocking
listening
learning
forwarding
disabled
discarding
learning
forwarding


Which of the port is not part of STP protocol.
A. Listening
B. Learning
C. Forwarding
D. Discarding Correct Answer: D
Какое состояние порта не является частью STP? В протоколе STP отсутствует состояние discarding. Ответ D.
Which two spanning-tree port states does RSTP combine to allow faster convergence?
(Choose two.)
A. blocking
B. listening
C. learning
D. forwarding
E. discarding Correct Answer: AB 
Какие два состояния объединяет RSTP для обеспечения более быстрой сходимости? Если совсем упростить то в RSTP отсутствуют состояния blocking и listening. Ответ AB.
Which two states are the port states when RSTP has converged?(choose two)
A. blocking
B. learning
C. discarding
D. forwarding
E. listening
Correct Answer: CD 
В какие два состояния переводится порт, после того как RSTP сошлось? Blocking и listening отсуствуют в RSTP, а learning не является конечным состоянием порт. Ответ CD.
Which port state is introduced by Rapid-PVST? 
A. learning 
B. listening 
C. discarding 
D. forwarding 
Correct Answer: C
Какое новое состояние порта вводится в Rapid-PVST? Ответ C.



Здесь представлено сугубо мое мнение, оно может быть ошибочным, поэтому лучше пользововаться официальной литературой. В комментариях приветствуется актвное обсуждение и обмен опытом.

суббота, 15 октября 2016 г.

Cisco не удаляется vty сессия

Все началось с того, что не получилось сохранить конфиг. Плучаю ошибку
sw-ru-3#wr mem 
startup-config file open failed (Device or resource busy) 
Начал капаться, увидел странную vty сессию
sw-ru-3#sh users 
    Line       User       Host(s)              Idle       Location 
   1 vty 0     NCMuser    idle                 10w6d     192.168.0.33 
*  2 vty 1     admin      idle                 00:00:00  192.168.0.83 
Висит аж 10 недель да, давненьк не заходил
Перезагружать устройство не охото в середине рабочего дня, да и локация достаточно крупная и находится далеко. Пробуем очистить сессию через clear
sw-ru-3#clear line vty 0 
[confirm] 
[OK] 

Проверяем, но сессия все равно почему-то висит
sw-ru-3#sh users 
    Line       User       Host(s)              Idle       Location 
   1 vty 0     NCMuser    idle                 10w6d     192.168.0.33 
*  2 vty 1     admin      idle                 00:00:00  192.168.0.83 
Заглянем со стороны TCP на эту ситуацию
sw-ru-3#sh tcp brief 
TCB       Local Address           Foreign Address        (state) 
0031FEDC  192.168.0.247.22      192.168.0.83.53238        ESTAB
Тут почему-то одно наше лигитимное соединение.
Исследование cisco`s help на предмет clear, delete, no и т.п. команд натолкнуло на одну команду
sw-ru-3#disconnect ssh vty 0
После ее применения моя ssh сессия тут же закрылась (хотя она была на 1-ой линии), и перестало пинговаться устройство, что заставило немного напречься. Через некоторое время пинг и доступ к устройству восстановился. Аптайм не изменился. Пресловутая сессия пропала и коннфиг успешно сохранен.
sw-ru-3#sh ver | i uptime
sw-ru-3 uptime is 20 weeks, 4 days, 21 hours, 20 minutes
sw-ru-3#sh ver
Cisco IOS Software, C3750 Software (C3750-IPBASEK9-M), Version 12.2(55)SE8, RELEASE SOFTWARE (fc2)

Гугление по этому вопросу показало, что удаление vty сессия можно осуществить через ее TCB (Transmission Control Block). TCB представляет собой некую структуру которая содержит различные части данных, необходимых для установления соединения. Она содержит инфрмацию: о IP адресе, о порте, о состоянии соединения, о сокетах и т.д. Команда sh tcp brief предоставляет информацию о номере TCB (в моем случае это 0031FEDC). Удалить соединение по его TCB можно командой clear tcp tcb 0031FEDC.

Полезная инфрмация:
  • TCP Show Extension
  • Cisco IOS Configuration Fundamentals Command Reference
  • Clearing hung TCP session
  • Won’t Clear VTY session
  • RFC793 Протокол управления пересылкой - TCP
  • пятница, 9 сентября 2016 г.

    Syslog per host

    Дано:
    Имеется порядко 150 устройств (коммутаторы, файерволы, сервера, оптимизаторы трафика и т.д.), необходимо собирать с них логи по-хостово. Логи будут складываться в папку с текущей датой, храниться 100 дней и папки старше 100 дней удалаться. В качестве имен файлов должны выступать hostname устройств. Два дня "сегодня" и "вчера" файлы не архивированы, остальные в архивированном виде, причем каждый лог-файл архивируется отдельно. Web-морды нет.

    Решение:
    Сервер будем разворачивать на VMware, для него выделены ресурсы:
  • CPU - 1 процессор Intel(R) Xeon(R) CPU E5606 @ 2.13GHz
  • Memory -2GB
  • HDD - 90GB

  • В качестве ОС будет использоваться Debian 8.2, а качетсве самого сборщика будет выступать штатный rsyslog (версия - 8.4.2). Диск размечен: 15GB выделено под корень и 75 GB под сами логи и примонтированы к /var.

    Необходимые настройки:
    # provides UDP syslog reception
    $ModLoad imudp
    $UDPServerRun 514

    ..........
    $FileOwner root
    $FileGroup root
    $FileCreateMode 0644 -> чтобы файл могли читать все пользователи
    $Umask 0022

    ..........
    #for dynamic create file per host
    $template DynFile,"/var/log/devices_logs/%$now%/%HOSTNAME%.log"

    ..........
    #for dynamic create file per host
    *.* ?DynFile


    Сам скрипт
    #!/bin/bash
    #определяем дату вчера и директорию "вчера"
    ydate=`date +%Y-%m-%d -d "yesterday"`
    #Запускаемархиватор. Каждый лог-файл в директории станет архивом.
    /usr/bin/find $1 /var/log/devices_logs/$ydate/ -exec /bin/gzip -9 {} \;
    #удаляем папки старше N дней (100)
    find /var/log/devices_logs -type d -mtime +100 -exec rm -rf {} \;

    Добавляем этот скрипт в крон, будем запускать его каждый день в 23:59
    59 23 * * * root /root/rotetion_log
    Если в качетсве имен фалов будут не hostname, а ip адрес, то в файле /etc/host необходимо создать запись вида ip address          hostname

    P.S. в день валится порядка 500-700МБ логов, сжимается все это дело где-то до 30-50МБ.
    P.P.S. здесь нет никакого секретного знания, просто заметка для себя. Оставляйте свои дополнения в комментариях, если где-то ошибся поправлю.

    Cisco Ironport невозможно установить соединение на HTTPS порт

    Используя в сети, в качестве прокси, Cisco IronPort столкнулся с такой проблемой.
    Обращаясь на порт 8888, в браузере получаем такую ошибку ERR_BAD_SSL_CLIENT_AUTH_CERT.

    В логах прокси она выгляди так:
    1471205494.766 0 136.y.x.18 TCP_DENIED/407 516 CONNECT tunnel://z.x.y.kz:8888/ - NONE/- - OTHER-NONE-Cusctomer_Identities_name-NONE-NONE-NONE-NONE <-> -

    В Web Tracking это выглядело так:

    Идем в Web Security Manager - Access Policies находим Global Policy


    Нажимаем на No blocked items и в поле HTTP Connect Ports дописываем требуемый нам порт, конкретно 8888

    После добавления порта, результат в Web Tracking изменился и сайт соответственно успешно открывается. На рисунке можно заметить, что в поле policy теперь стоит Allow, да и трафик уже не нулевой.



    вторник, 19 июля 2016 г.

    Juniper настройка dot1x authentication

    protocols {
        igmp-snooping {
            vlan all;
        }
        dot1x {
            authenticator {
                authentication-profile-name dot1x-profile;
                no-mac-table-binding;
                interface {
                    dot1x-interface {
                        supplicant multiple;
                        quiet-period 3;
                        transmit-period 3;
                        mac-radius;
                        reauthentication 3600;
                        supplicant-timeout 5;
                        server-timeout 1;
                        maximum-requests 3;
                    }
                }
            }
        }
    }
    ..........
    access {
        radius-server {
            10.10.10.1 {
                port 1812;
                secret "secret password"; ## SECRET-DATA
            }
            10.10.10.2 {
                port 1812;
                secret "secret password"; ## SECRET-DATA
            }
        }
        profile dot1x-profile {
            authentication-order radius;
            radius {
                authentication-server [ 10.10.10.1 10.10.10.2 ];
            }
        }
    }

    http://www.juniper.net/techpubs/en_US/junos15.1/topics/example/802-1x-pnac-ex-series-connecting-server-configuring.html
    http://www.juniper.net/techpubs/en_US/junos15.1/topics/example/802-1x-pnac-single-supplicant-multiple-supplicant-configuring.html
    https://www.juniper.net/techpubs/en_US/junos16.1/topics/task/configuration/802-1x-interface-settings-ex-series-cli.html
    http://www.juniper.net/documentation/en_US/junos15.1/topics/task/configuration/802-1x-accounting-cli.html
    http://www.juniper.net/techpubs/en_US/junos15.1/topics/example/802-1x-pnac-radius-attribute-ex-series.html
    http://www.juniper.net/documentation/en_US/junos14.1/topics/task/configuration/802-1x-authentication-j-web.html

    пятница, 10 июня 2016 г.

    cat выявление "неправильных" символов

    Вобщем-то ничего нового, все описанов man`е.
    Итак необходимо в текстовом файле выловить скрытые CR/LF, наличие русских букв и т.д.

    cat -AEeTt показывает непечатные символы, символы конца строки и табуляции

    Немного подробнее по опциям:
  • A - показывает все невидимые символы
  • E - показывает символы конца строки
  • e - показывает непечатаемые символы плюс символ конца строки
  • T - показывает символ табуляции
  • t - показывает непечатаемые символы плюс символ табуляции


  • Дополнительно полезно так же будет испльзовать:
  • b - нумерует непустые строки
  • n - нумерует все строки


  • Выловить русскиме фимволы поможет такая команда cat <файл> | grep -ce [а-Я], если больше 0 значит есть кирилица
  • c - выдает только количество строк, содержащих образец
  • e - может использоваться для указания нескольких критериве поиска, или для защиты шаблона начинающего на -

  • Если необходимо узнать наличие кириллических символов в linux системе, в которой отсутствует поддержка сооветсвующей локали, то можно использолвать следующую команду cat <файл> | grep -ce [^a-zA-Z0-9] . P.S. хотя они будут отображаться знаками ? или другими некорректными символами.

    Полезные ссылки:
    man grep
    man cat
    grep на русском
    cat на русском
    полезно и интересно про grep
    полезно и интересно про cat

    суббота, 4 июня 2016 г.

    Cisco/Juniper Commands


    Cisco CommandJuniper CommandОписание
    show runsh configurationПоказывает рабочую конфигурацию 
    sh versh verПоказывает версию
    show ip interface briefshow interface terseпоказывает кратко статус интерфейсов
    show interface [type slot/port]show interfaces [type slot/port] detailпоказывает статус и статистику по интерфейсам
    show controller show interfaces intfc extensiveОтображает информацию о физических портах устройства
    show interface descriptionshow interfaces descriptionотображает настройки интерфейса, статус 
    show ip routeshow routeОтображает общую информацию о содержании роутинг таблицы
    show ip bgp summaryshow bgp summaryотобраает информацию о всех BGP соединениях
    show ip bgp net maskshow route protocol bgp prefixПокажет как этот  маршрут рекламируется
    show ip bgp net mask longer-prefixesshow route range prefixПокажет как этот  маршрут рекламируется
    show ip bgp regexp AS-regexpshow route aspath-regexp "AS-regexp"отображает маршруты соответствующие выражению AS path
    show ip bgp neighbors neigh received-routesshow route receive-protocol bgp neigh

    show route source-gateway neigh protocol bgp
    Показывает, поддерживает ли сосед возможность обновления маршрута
    show ip bgp neighbor neigh advertised-routesshow route advertising-protocol bgp neighПоказывает, поддерживает ли сосед возможность обновления маршрута
    show clns neighborsshow isis adjacencyотображает ES и IS соседов
    show clns interfaceshow isis interfaceshows specific information about each interface
    show ip route isisshow isis routesотображает текущее состояние таблицы маршрутизации
    show isis topologyshow isis spfотображает список всех подключенных маршрутизаторов во всех областях
    show ip ospf interfaceshow ospf neighborпоказывает ID  соседа, приоритет, IP
    show ip ospf databaseshow ospf databaseОтображение списка информации, относящейся к базе данных OSPF для конкретного  сервера
    show versionshow version, show system uptimedisplay the system hardware config., software version, and name and source of configuration files and boot images
    show diagsshow chasis hardwareотображает диагностическую информацию
    show processes cpushow system processотображает загрузку
    show tech-supportrequest support infoотображает текущий образ ОС, память, буферы и различную системную информацию
    show loggingshow log messagesотображает состояние системы логирования
    show route-map nameshow policy nameотображает настроенные route-maps
    show ip prefix-list nameshow policy nameотображает информацию о префиксах
    show ip community-list listconfigure,
    show policy-options community name
    отображает маршруты, разрешенные в BGP
    show environment allshow chassis  environmentотображает информацию по температуре и вольтажу
    ping destping dest rapid (for cisco like output)
    ping dest (for unix like output)
    ping
    ping (setting source int)ping dest bypass-routingеще ping
    terminal monitormonitor start messagesПозволяет отображать сообщения системы логирования в консоли
    terminal no monitormonitor stopотменяет прдыдущее
    terminal length 0set cli screen-length 0sets the length for displaying command output


    Полезные ссылки:
    Cisco show commands
    Cisco Tech-Support Commands
    Juniper show configuration
    Junos OS CLI Operational Mode Commands
    Juniper CLI User Guide

    Junos: директории, конфигурационные файлы и работа с ними

    Когда вы редактируете конфигурацию, вы работаете с candidate конфигурацией, которая является копией вашей текущей конфигурацией. Все изменения, сделанные в candidate конфигурации можно увидеть в непосредственно в CLI (необходимо в верхнем уровне иерархии использовать команду show). ( В Junos OS с конфигурацией могут одновременно работать несколько пользователей, в данном случае разговор идет одного пользователя).

    Для того, чтобы candidate конфигурация "заработала" ее необходимо зафиксировать (команда commit). В этот момент происходит проверка правельности синтаксиса, если ошибок в синтаксисе нету, то файл активируется и помечается текущий (рабочий) конфигурационный файл операционной системы. Дополнительно к текущему конфигурационному файлу (version 0) хранит еще 49 ранее сохраненных конфигурационных файлов.

    По умолчанию Juniper хранит текущую и 3-и предыдущие конфигурации в CompactFlash, текущая конфигурация хранится в файле juniper.conf.gz в директории /config. Оставшиеся 46 конфигураций (с 4 по 49) хранятся в директории /var/db/config в основной памяти.

    Во время загрузки Juniper работает с предопределенным конфигурационным файлом. Устройство выбирает конфигурационный файл используя Configuration Selection Sequence




  • /config/juniper.conf - Активная конфигурация
  • /config/rescue.conf — "Спасательная" конфигурация. Создается вручную
  • /config/juniper.conf.1 — Первая запасная конфигурация
  • /etc/config/factory.conf — Конфигурация по умолчанию (заводская). После загрузки с заводской конфигурацией, доступ к устройству возможен только через консоль.


  • Небольшой список что и где хранится в Junos OS (относительно конфигурационных файлов):

  • директория: /config - файл juniper.db храни общую candidate database
    файл rescue.gz - спасательная конфигурация
    файлы с juniper.conf.1.gz по juniper.conf.3.gz - предыдущие конфигурации
  • директория: /var/run/db - файл juniper.data закоммиченный config database(т.е. активная конфигурация)
    файл juniper.data+ - копия candidate db, используется во время проверки корректности конфига (commit check), затем становится juniper.data
    файл juniper.conf+.gz - это candidate конфигурация, существует только во время commit
    файлы с juniper.conf.4.gz по juniper.conf.49.gz - предыдущие конфигурации


  • Копировать файлы (лог-файлы, файлы конфигурации, обновления прошивки и т.д.) с/на джунипер извне можно использую ftp, scp. На джунипере можно включить ftp сервер командой set system service ftp, после этого к нему можно подключаться любым ftp клиентом (к примеру WinSCP, FileZilla и т.д.). Можно работать с файлами и через командную сторку из операционного режима.

    Просмотр содержания директорий используется команда list, копировать файлы можно командой file copy <источник> <назначение> (file copy /config/juniper.conf ftp://user@hostname/juniper.conf), просмотреть, к примеру, логи можно show log <имя файла> (все команды выполняются из оперативного режима)
    - в деректории пользователя
    user@host> file list
    .ssh/
    common
    - в директории /config/db/config
    user@host> file list /config/db/config
    juniper.conf.4.gz
    .....
    juniper.conf.49.gz
    - получение контекстной помощи
    user@host> file list /?
    Possible completions:
    <[Enter]> Execute this command
    Path to list
    /COPYRIGHT Size: 6355, Last changed: Feb 13 2005
    /altconfig/ Last changed: Aug 07 2007
    /altroot/ Last changed: Aug 07 2007
    /bin/ Last changed: Apr 09 22:31:35
    /boot/ Last changed: Apr 09 23:28:39
    /config/ Last changed: Apr 16 22:35:35
    /data/ Last changed: Aug 07 2007
    /dev/ Last changed: Apr 09 22:36:21
    /etc/ Last changed: Apr 11 03:14:22
    /kernel Size: 27823246, Last changed: Aug 07 2007
    /mfs/ Last changed: Apr 09 22:36:49
    /mnt/ Last changed: Jan 11 2007
    /modules/ Last changed: Apr 09 22:33:54
    /opt/ Last changed: Apr 09 22:31:00
    /packages/ Last changed: Apr 09 22:34:38
    /proc/ Last changed: May 07 20:25:46
    /rdm.taf Size: 498, Last changed: Apr 09 22:37:31
    /root/ Last changed: Apr 10 02:19:45
    /sbin/ Last changed: Apr 09 22:33:55
    /staging/ Last changed: Apr 09 23:28:41
    /tmp/ Last changed: Apr 11 03:14:49
    /usr/ Last changed: Apr 09 22:31:34
    /var/ Last changed: Apr 09 22:37:30




    Стандартные директории в Junos OS

    Директория
    Описание
    /config
    Эта директория распалагается во внутренные flash памяти. В ней хранится текущая конфигурация и три предыдущие (1,2,3)
    /var/db/config
    Эта директория хранится в основной памяти и содержит конфигурационные файлы с 4 по 49
    /var/tmp
    Эта директория располагается в основной памяти. Содержит файлы, генерируемые  различными  процессами  Routing Engines.  Они генерируются когда процесс крашится и могут использоваться для диагностики неполадок.
    /var/log
    Эта директория располагается в основной памяти. Содержит файлы сгенерированные функцией логирования (команда traceoptions)
    /var/home
    Эта директория располагается в основной памяти. Домашняя директория по умолчания для каждого нового пользователя
    /altroot
    Эта директория располагается в основной памяти. Содержит копию корневой файловой структуры из  flash памяти. Используется в режиме аварийного восстановления, когда flash память не работает.
    /altconfig
    Эта директория располагается в основной памяти. Содержит копию /config файловой структуры.  Используется в режиме аварийного восстановления, когда flash память не работает.


    Полезные ссылки:
    Understanding How the Junos OS Configuration Is Stored
    Configuration File Selection Sequence
    Viewing Files and Directories on a Device Running Junos OS
    Default Directories for Junos OS File Storage on the Router or Switch
    Syntax file copy

    четверг, 31 декабря 2015 г.

    горячие клавиши MC

    Клавиатурные сочетания выбираются модификаторами. В mc используются модификаторы:
    Ctrl - Клавиша "Ctrl";
    Meta - Клавиша ""Alt", или "Meta", такде может быть заменена однократным нажатием "Esc"
    Shift - Клавиша "Shift",


    Горячие клавиши для файловых панелей


    Insert
    Выделение текущего объекта
    +
    вызывает окно для выделения группы файлов (можно использовать регулярные выражения)
    \
    снимает отметку с группы файлов (действие, обратное тому, которое вызывается по клавише +)
    Meta+.
    не показывать или показать скрытые файлы или каталоги (начинаются на точку '.')
    Meta+,
    Переключить режим отображения панелей (вертикально/горизонтально)2
    Meta+a
    Посылает в командную строку полный путь в текущей активной панели
    Meta+c
    Вызывается меню быстрой смены текущего каталога на активной панели
    Meta+h
    Вызов меню последних выполненных команд (также историю вызванных команд можно посмотреть в файле /root/.local/share/mc/history)
    Meta+i
    Смена текущего каталога на неактивной панели, на каталог в котором вы находитесь в активной панели
    Meta+j
    отмечает последний файл или каталог в отображаемом списке на панели
    Meta+o
    неактивная панель переходит в каталог на который указывает активная панель
    Meta+p
    Вернуть предыдущую выполненную командную строку
    Meta+t
    Смена режима работы панели ('Стандартный','Укороченный','Расширенный')
    Meta+Shift+?
    Вызывается меню расширенного поиска файлов
    Meta+Shift+A
    Посылает в командную строку полный путь в нективной панели
    Meta+Shift+H
    Отобразить историю каталогов
    Ctrl+\
    Вызывается меню часто используемых каталогов
    Ctrl+o
    Скрытие/показ панелей
    Ctrl+r
    перечитать содержимое каталога
    Ctrl+s
    Быстрый поиск файла или каталога
    Ctrl+Space
    Показать размер текущего каталога
    Shift+F3
    Просмотр файла raw без учета расширения
    Shift+F4
    Создает новый файл
    Ctrl+Space
    Показывает размер папки











    Горячие клавиши для редактора


    F3
    Начать выделение текста. Повторное нажатие F3 закончит выделение
    Shift+F3
    Вертикальное выделение текста
    F5
    Скопировать выделенный текст (в этом же файле)
    F6
    Переместить выделенный текст (в этом же файле)
    F8
    Удалить выделенный текст
    Meta+l
    Переход к строке по её номеру
    Meta+t
    Сортировка строк выделенного текста
    Meta+u
    Выполнить внешнюю команду и вставить в позицию под курсором её вывод
    Ctrl+f
    Занести выделенный фрагмент во внутренний буфер обмена mc (для копирования в другие файлы) (содержимое буфера обмена можно посмотреть /root/.local/share/mc/mcedit/mcedit.clip)
    Ctrl+k
    Удалить часть строки до конца строки
    Ctrl+s
    Включить или выключить подсветку синтаксиса
    Ctrl+t
    Выбрать кодировку текста
    Ctrl+u
    Отменить действия
    Ctrl+x
    Перейти в конец следующего
    Ctrl+y
    Удалить строку
    Ctrl+z
    Перейти на начало предыдущего слова
    Shift+F5
    Вставка текста из внутреннего буфера обмена mc
    Meta+Enter
    Диалог перехода к определению функции
    Meta+n
    Включение/отключение отображения номеров строк
    Meta+Shift+-
    Переключение режима отображения табуляций и пробелов


    За более подробной информацией обращайтесь на официальный сайт midnight-commander.org