среда, 31 октября 2018 г.

OpenSSL готовим сертификат и закрытый ключ для импорта на Cisco ASA

Допустим у нас есть сертификат и закрытый ключ, оба в формате PEM
Нам нужен PCKS12 в BASE64

Но у меня тестовый уже в pfx (mycertandkey.pfx) но без промежуточного внутри, так что сначала получим из pfx - pem:

openssl pkcs12 -in mycertandkey.pfx -nocerts -out mycert.key

Вводим пароль на pfx, потом вводим пароль  на новый файл
Получаем файл с ключом но зашифрованный

openssl pkcs12 -in mycertandkey.pfx  -clcerts -nokeys -out mycert.pem
Получаем наш сертификат без корневого и промежуточного

openssl rsa -in mycert.key -out mycert.npkey 
Делаем закрытый сертификат без пароля (не зашифрованный).

Проверка соответствия закрытого ключа сертификату:

openssl rsa -noout -modulus -in mycert.npk | openssl md5

openssl x509 -noout -modulus -in mycert.pem | openssl md5

Хэши должны совпадать.

Далее нам нужен сертификат + промежуточный + корневой + закрытый ключ в base64

Сначала собираем все в pfx (потребуется создать пароль)
openssl pkcs12 -export -out certandinterandcaandkey.pfx -inkey mycert.npkey -in mycert.pem -certfile CaAndIntermediate.pem

CaAndIntermediate.pem - этофайл где лежат один за одним промежуточный сверху и корневой снизу (просто в notepad копируем в один файл эти два сертификата в формате pem)

И теперь получаем это все в Base64:
openssl base64 -in certandinterandcaandkey.pfx -out certandinterandcaandkey.base64

Теперь на Cisco ASA можно его импортировать:

crypto ca trustpoint TESTCAT
  enrollment terminal
  exit

crypto ca  import  TESTCAT pkcs12 и тут пароль на тот самый base64 файл
Вставляем сюда текст из файла
потом набираем quit


понедельник, 3 сентября 2018 г.

ACTi ACD-2100 multicast sdp файл

При настройках:
RTP over multicast
Порт Multicast Video 5000
IP вещания 239.10.6.10
И MPEG4 видео,
SDP файл выглядит примерно так (делается путем сначала включения режима RTP over UDP в unicast режиме, открытия потока через rtsp и выдергивания SDP данных WireShark'ом):

v=0
c=IN IP4 239.10.6.10
m=video 5000 RTP/AVP 96
a=rtpmap:96 MP4V-ES/90000
a=fmtp:96 profile-level-id=245;config=000001B003000001B50900000100000001200086C400670C5A1120518F


среда, 11 июля 2018 г.

Простое получение соседей по CDP таблицей с IP адресами и всем необходимым

Исполняемый файл под Windows и readme.txt тут
https://1drv.ms/u/s!AgUTm7x5KvPAkSE1Yd5xw9N7LpLQ

Исходники тут:
https://github.com/OlegPowerC/cdpn

Утилита для быстрого просмотра соседей по протоколу CDP.
Заменяет набор комманд в консоли, выводит сразу все необходимое.
Использует протокол SNMP для получения информации 
(Библиотека от Zoho WebNMS)

Пример вывода:
cdpn -v v3 -u SNMPUSER1-U -a SHA -w testpass123 -pp AES-128 
-s testpass123 192.168.1.10
Host IP: 192.168.1.10
Hostname: Switch.powerc.local
Platform: Cisco IOS Software, C2960 Software (C2960-LANBASEK9-M), 
Version 12.2(55)SE10, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2015 by Cisco Systems, Inc.
Compiled Wed 11-Feb-15 11:46 by prod_rel_team


Local Port        Neighbor ID                     Neighbor Port          
---------------   ---------------                 ---------------       
Gi0/5             esxi1.powerc.local              vmnic1                
Gi0/6             WLCv                            GigabitEthernet0/0/1
Gi0/44            APc471.feb3.ce22.POWERC.LOCAL   GigabitEthernet0.1
Gi0/45            SEP002290BAD777                 Port 1             
Правее будет (тут не влазит :- ) 
и в windows надо сделать пошире окно CMD):
Neighbor Platform          Neighbor IP
--------------------       ---------------
VMware ESX                 0.0.0.0
AIR-CTVM-K9                192.168.1.192
GigabitEthernet0.1     cisco AIR-LAP1252AG-E-K9   192.168.1.164
Port 1                 Cisco IP Phone 7906        192.168.1.168
Принимает параметры: -v версия, если v3 то нужно указать -u имя пользователя
-a тип хэша -w пароль на хэширование -pp протокол шифрования
-s пароль на шифрование
обязательный параметр: IP адрес коммутатора.

Работает с коммутаторами Cisco включая Nexus

Парсер логов Cisco WSA (ACL Log)

WSA при экспорте в PDF или CSV не показывает длинные URL (точнее их обрезает)
Иногда бывает нужно их посмотреть.
Это можно сделать заглянув в ACL log но вот он обычно мегабайт 100 и что то там найти не так то просто.
Да плюс еще и время в формате Unix.
Пришлось быстро сделать примитивную Cli утилиту на Go, которая разбирает файл ACL log и ищет там нужное а именно:
1. Можно указать время начали и конца поиска
2. можно указать имя пользователя
3. или IP адрес ПК
4. и например часть URL
5. Обязательным параметром является -f имя файла ACL log

В целом в Readme все расписано.

Исходники тут:
https://github.com/OlegPowerC/wsalogparcer

Архив с исполняемым файлом и readme тут:
https://1drv.ms/u/s!AgUTm7x5KvPAkSA4_QX_kbmnK9iS

вторник, 10 июля 2018 г.

Python и Go как средство автоматизации

Добрый день коллеги.
Сегодня поговорим о том что сетевому инженеру в современных реалиях, придется изучать питон.
Во первых он теперь даже на IOS, но даже там где его нет - он может помочь.
1. Мы можем писать всякие скрипты для работы по SSH с железом.
2. Мы можем что то собирать по SNMP.

Так что я задумал цикл статей: "Python для CCNA"
Буду стараться рассказывать про сам язык и сопутствующие вещи, ну и приводить примеры использования.

Что касается Go:
Крайне простой язык, много библиотек и в обще много вкусного.
Но во первых он компилируется в исполняемый файл что и хорошо и плохо, а во вторых мне после Python C++ и ADA как то ужасно непривычно с ним работать но кое что уже сделал.

Про него буду стараться тоже что то написать.

Спасибо за внимание.
PS:
Не забывайте читать cisco support community - там тоже много интересного.