Особенности и глюки APC NMC (Network Management Card)

Есть такие карты как APC NMC (Network Management Card), весьма распространенные и весьма проблемные при этом. Причины их глюкавости кроются в том, что компания APC всегда была слаба в области разработки ПО, но решила к этому своему «навыку» добавить еще и железо 15-летней давности (следы разработки этих устройств ведут в начало нулевых). И на этом старье начала писать сервисы, такие как telnet, FTP, HTTP, HTTPS, SNMP и SSH. По информации от корифеев форума APC, железо не потянуло современную крипту, которая жизненно необходима для HTTP и SSH, и компания-производитель бросила поддержку карт первого поколения в 2010 году (последняя прошивка с бинарниками версии 372/373 датирована февралем 2010 года). А с тех пор в алгоритмах шифрования, применяемых в SSH и SSL нашли кучу багов, и все цивильные производители ПО запретили работу своих продуктов с использованием «дырявых» протоколов. С этого момента начинаются новые проблемы, которых изначально у карт первого поколения не было. Кстати, первое поколение карт APC — это AP9617, AP9618 и AP9619 (далее по тексту заметки просто NMC 1). Внешний вид AP 9617 для общего развития:

Карта APC AP9617

Эти карты очень долго продавались после того как их поддержка была прекращена, что позволило «счастливым владельцам» этих карт хапнуть немало горя в процессе их эксплуатации. Карты первого поколения до сих пор встречаются тоннами на eBay и Авито, в том числе, новые в заводской упаковке.

Далее привожу свои наработки по борьбе с особенностями и глюками карт APC NMC 1:

#1. У карт первого поколения (NMC 1) нет разъема Jack 3.5 мм, а значит, нет консольного порта. То есть, при любой критической ошибке конфигурирования вы будете вынуждены делать сброс карты и начинать ее настройку с нуля. Это было бы не так больно, если бы карта желала делать DHCP client с обычного DHCP-сервера (а она не желает, см. ниже).

#2. Вся техника APC, включая PDU, ATS, и, конечно же, карты NMC 1, не умеет грузиться по DHCP в конфигурации по умолчанию. Дело в том, что в APC посчитали, что грузиться по DHCP в любой сети — это глупость и разгильдяйство, а грузиться можно только в сети, где есть должным образом настроенная DHCP Option 43 (если вкратце, то устройство APC при получении IP-конфигурации от сервера делает вывод «годный» он или нет). Поэтому карта, которую вы сбросите в дефолт, в 99% сетей будет недоступна через telnet и веб. А так как у нее нет консольного порта, дело пахнет легким геморроем. По слухам, в NMC 2 этот идиотизм отключили.

#3. Легкий геморрой. Как вы знаете, в APC решили, что грузиться по DHCP в абы какой сети не кошерно, но и IP-адрес по умолчанию задавать тоже не стали. Хотелось бы посмотреть в лицо этому человеку из APC, а потом плюнуть в него же. Потому, что такого извращения я не встречал за свой 16-летней опыт работы с сетевухой. По версии APC, первым делом я должен воспользоваться утилитой Network Management Device IP Configuration Wizard v5.0.2, которая методом сканирования всей моей сети найдет нужное устройство (находит) и установит на нем желанные параметры TCP/IP (не устанавливает). Эта утилита сыпет одной и той же ошибкой, ссылаясь на ARP-кэш и необходимость перезагрузить систему (какую именно — ОС или NMC 1 не уточняется, но перезагрузка вообще всего, ровно как и ручная очистка кэша ARP, не помогают). Я перегружался и пробовал раз 5-6, пока не стало очевидно, что это бесполезно. Дело в том, что NMC 1 стоит в режиме DHCP & BOOTP, и фирменная утилита в принципе не может задать ей IP-параметры, так как для этого нужно выставить интерфейс в режим Manual. Осознанно или неосознанно, Network Management Device IP Configuration Wizard этого сделать не смогла. После понимания причин произошедшего, мне захотелось не только плюнуть в рожу разработчикам, но и обоссать их несколько раз.

Теперь о том, как все же задать IP-конфигурацию при первом использовании карты или после ее ресета, который, кстати, делается установкой и удержанием скрепки в соотв. отверстии NMC. Из командной строки Windows нужно дать команды:

arp -s 192.168.1.5 00-00-00-00-00-00
ping 192.168.1.5 -l 113

Где 00-00-00-00-00-00 — MAC-адрес NMC, который можно узнать, сканируя вашу сеть все той же утилитой Network Management Device IP Configuration Wizard (с этой задачей она справляется), или из наклейки на NMC (для того, чтобы люди окончательно заебались, в APC решили не печатать MAC-адрес на наклейке на самой коробке). А 192.168.1.5 — желаемый IP-адрес NMC. После этого к карте можно будет подключиться по telnet, используя «apc» в качестве логина и пароля.

#4. Не включайте на NMC 1 протокол SSH, так как он вырубит вам единственно работающий в данном случае протокол удаленного доступа — telnet (они одновременно не «живут»). А если все-таки включили, и больше не можете прицепиться, ищите Putty версии ниже, чем 0.63. Например, Putty 0.62 будет работать. При этом текущая версия Putty (0.73) мгновенно посылает нафиг закрытием коннекта (попытки принудительно разрешить SSHv1 и прочее небезопасное старье успехом не увенчались).

#5. Не включайте на NMC 1 протокол HTTPS! Вы просто потеряете доступ к NMC 1 через веб. В ряде источников указано, что это можно побороть, включив поддержку небезопасного протокола SSLv3, однако мне это не помогло. Браузеры продолжили показывать сообщения об отсутствии совместимого алгоритма шифрования (пробовал Firefox и Internet Explorer). В FF это делается правкой реестра браузера (страница about:config, поиск ключа security.tls.version.min и изменение его значения в 0; после чего перезапустить FF). В IE достаточно поставить соотв. галку в Tools — Internet Options — Advanced, скроллить в самый низ до опций Use SSL 2.0, Use SSL 3.0. Но еще раз — в моем случае это не сработало!

#6. Если вы решили обновить свою карту, думая, что спасение где-то там, то вы ошибаетесь. Во-первых, в последней версии AOS (APC OS) 3.7.3 никакие из этих проблем не решены. Во-вторых, скорее всего, вы увеличите количество проблем на единицу. А именно, при обновлении прошивки через apc_hw02_aos373_sumx372 софтина сообщит вам следующее: Not all Network Management Cards were upgraded successfully / Could not log into the Management Card’s FTP server / Encountered 1 failures during upgrade. Анализ текстового лога (results.txt) показывает, что ОС залилась успешно, а дальше, после 2-минутного ожидания устройства, утилите удалось залогиниться, но дальше что-то сбойнуло Сначала непонятно что именно пошло не так (разработчикам софта было впадлу сделать вывод осмысленного сообщения), но потом вы понимаете, что даже если зашли в девайс по telnet и вырубили HTTPS, вы не можете попасть в девайс по HTTP: Error: The application was not able to load. / You are attempting to access an APC device. / There was a problem loading the application. Please login to the device via telnet for more details.

APC Error: The application was not able to load. You are attempting to access an APC device. There was a problem loading the application. Please login to the device via telnet for more details.

Попахивает пиздецом, конечно. Куда не сунься, везде что-то недоделано, недопилено. И это не только у меня — Google показывает множественные мучения других пользователей. Но поисковики, RTFM и раскидывание мозгами дали результат — оказывается, дело в том, что при старте NMC 1 через telnet можно увидеть некий Stat, а выше его — версию APP.

APC APP version and Stat

Так вот, по всей видимости, «A» — это и есть APP, и под этим термином в APC подразумевают и веб-сервер. Если вы не видите строки Smart-UPS & Matrix-UPS APP v3.7.2 (или иной версии), а в Stat вы видите «A минус», то ничего хорошего не ждите, веб-сервер не заработает. Если вы видите «A?», то просто подождите, приложение загружается. В моем случае там был «A минус», что означает отсутствие приложений.

Я прицепился к APC NMC 1 при помощи FTP-клиента, предварительно выставив в нем режим передачи файлов как binary. И влил в корневую директорию файл apc_hw02_sumx_372.bin

APC FTP root directory listing

После заливки файла карта автоматически перегрузилась, как и задумано разработчиком (именно поэтому за раз нельзя залить более 1 файла). После перезагрузки карты я увидел статус «A?», который после недолгого ожидания и рефреша картинки сменился на «A плюс».

APC Good APP Status

Ну и как вы уже догадались, обращение через браузер показало желанную форму ввода логина и пароля. Ура! Карта побеждена и работает. Подумаешь, что на все это потрачено 2 вечера :(

И еще один момент — обратите внимание на название архива с прошивкой, где sumx в названии указывает на то, что это прошивка для SmartUPS & MatrixUPS. Это важно потому, что существует еще минимум 2 других прошивки для NMC 1 для работы совместно с другими UPS. Другая прошивка не убьет вашу карту, но не позволит ей правильно работать с вашим устройством.

Вывод

В общем, ребята, софты APC — это лютый пиздец, и образец идиотизма с налетом олдскула одновременно. Те, кто работал над этом ПО, точно занимались не своим делом. Это я уже молчу про то, что все Windown ПО APC использует Java, имеет огромные дистрибутивы, долго ставится, и при этом обладает скудной функциональностью и интерфейсами «назад в 2003-й».

P.S.

Несколько улучшить ситуацию можно перейдя на NMC 2, то есть, на карты с номерами AP9630, AP9631 или AP9635 и логотипом Schneider Electric на них. Я лично с ними не работал, но согласно найденной в сети информации, с ними меньше проблем в плане HTTPS, ну и как говорилось выше, они могут грузиться с обычного DHCP-сервера без всяких опций. Также у APC хватило ума оснастить их консольным портом, что позволяет настраивать эти карты без подключения по TCP/IP. Ну и для этих карт существует утилита для обновления с Win32 GUI вместо command line (в 2011-12 годах в APC заметили, что люди больше не работают в командной строке). Но в целом это аналогичный по функциям и качеству продукт, как и NMC 1, и не следует ожидать от них чудес.

Поделиться
Отправить
Запинить
12 комментариев
Nick

Лютая правда. Мужик дело говорит

Lanky

Замечу, что не компания бросила поддержку, а в 2010 году погиб в автокатастрофе владелец APC, и его жена продала компанию конкуренту — Фирме Шнайдер. Теперь мы имеем красивый GUI и отстойную аппаратную часть. Впрочем, как и везде. Тенденция такая.
Если есть возможность взять устройства до 2010 гв — берите, там схемотехника сделана на заводе в Ирландии.
По поводу обновления — а нахуа? Настраиваем из командной строки в выделенной сети, чтобы была возможность либо данные по snmp брать либо по ftp. И все дела. PCNS — совместим со всеми известными мне картами. Сервера благополучно даунятся и  включаются после перезагрузки. Софт есть под все ОС.
Зачем там вообще вебморда нужна — не понятно, да еще и по хттпс и ссл3.

APTEM.ru

Причем тут владелец? Компания насчитывает 5000 сотрудников во всем мире, включая Индию, где полно программистов. От жизни и смерти владельца не зависит как компания поддерживает свои продукты. Тем более, что и до 2010 года в плане софта было все крайне ужасно, уровень развития остановился на 1999 году. Это касается всех устройств, включая PDU, ATS и другое мегадорогое оборудование класса Enterprise. Ну не сильны они в ПО, не сильны...

Mike2140

добавлю, что версия софта 3.5.5 для карты AP9619 по умолчанию переводит ftp сессию в passive mode, а клиент об этом ничего не знает.
удалось залить фалы со свежей прошивой только после указания passive на клиенте....

APTEM.ru

Ну active и passive легко проверить методом тыка. Коннект есть, но листинг директории отдается с задержкой или не отдается вообще. Переключаешь режим в противоположный, и поехали!

Константин

Для nmc1 если потерян пароль, он лежит с логином в открытом виде в 24с128 Я вечер пробовал получить доступ через консоль ap7722, безуспешно или кабель не тот (ATS видится на 19200) толи ещё что.. плюнул и решил через EEPROM. Всем удачи)
PS: IP получить можно программами сканерами ARP

APTEM.ru

Проще сбросить карту, чем паять память.

Alexey Kuznetsov

Ну, пароль в открытом виде не лежит.
Во всяком случае в версии 2,3
Была неудачная попытка поднять одну 9617 заменой дампа 24с128 с одной платы на другую.
Но, походу, навернулась прошивка в самой флешке: терминал выдает знак вопроса.
Попробуем перешить флешку.

Константин

На прошивках с завода в открытом лежит, если надо посмотрю адреса, но дней через 10.. Там явно прослеживается три логина и три пароля

Alexey Kuznietsov

Константин, а гляньте, если не сложно.

Что-то ничего не вышло у нас с 9617. Перешить флешку сервис не смог.
Вроде грузиться но не более того.
На 750 ИБП с com порта только знак вопроса при загрузке.

Поищу другой APC, киловатник какой-то. Может на нем заведеться. Как раз и пароль пригодиться.

Я нашел только 2 записи:
326 (64Е) — логин
336 (659) — вроде пароль.
Но это для прошивки 03/11/2003

В дампе для 11/21/2005 только в одном месте:
1cf4 — только логин.

Константин

посмотрел, у меня 08AE начало рутового логина и 08B9 начало рутового пароля.

Константин

начиная с адреса 0102 лежит вот это: 12/16/2005 AP9617

Luminous2005

Да, пришлось и мне помучиться над этой железкой. Статья написана хорошо, эмоционально, а по другому и не получится, поскольку танцы с бубном, да с каким бубном предстоят тем кому попалась это Чудо карта. Тем кому эта карта попалась не новой и с уже прописанным в ней статическим IP, фокус с arp уже не прокатит. Долгие попытки сбросить карту в настройки по умолчанию, тем самым ввести её в режим DHCP, не увенчались успехом.
Но было найдено 2 лайФака к этому чудо зверьку.

  1. Если вам нужно выципить IP который уже стоит в карте, то нам поможет любой компьютер (роутер) с Любым Unix-ом (MacOS то же Юникс). Нужно будет подключить к карту в хаб (роутер) и туда же подключить комп.
    Далее поможет утилита TcpDump, нужно в консоли вбить команду tcpdump -i eth0 ether host 00:c0:b7:xx:xx:xx.
    Где eth0 интерфейс вашей сетевой карты, можно посмотреть через команду ifconfig, и 00:c0:b7:xx:xx:xx MAC вашей карточки, который написан на наклейки сверху карты. После этого ждем. все пакеты которые будет отправлять карта, а она их по любому будет отправлять, в том числе и к кому мы будем видеть на экране.
  2. Если какой-то умник поменял пароль и вы не можете зайти, то нужно нажать на кнопку сброса карты, и держать 30 секунд, секунды можно считать по миганиям светодиода на сетевухе. Далее отпускаем, начнет моргать другой светодиод зеленым-красным, в этот момент ещё раз нажимаем на кнопку сброса (пауза после отпускания и вторым нажатием не больше 2 секунд). Карта запустится с логином и паролем по умолчанию apc/apc, после чего заходим на карту и меняем на свой пароль.
Luminous2005

Ну и ещё на закуску способ для совсем отчаявшихся. Если у вас есть кабель Com для подключения ИБП APC к компьютеру (может и с USB сработает, не пробовал), то вам поможет режим терминала в утилите UPSDiag, UPSDiag2, APCUPSD. Запускаете утилиты, после того как они нашли ваш ИБП, переходим на вклатку Терминал. В нем нажимаем 3 раза Enter и у вас появляется Надпись User:, после чего вводите apc, Enter, Далее ввод пароля apc и вуаля, вы в терминальном окне настроек вашей карты, где включаем нужный нам режим, и прописываем нужный нам IP адрес. Надеюсь данный текст будет полезен.

Designman

В картах AP9630-31 с последними версиями прошивки обнаружился новый баг: карта пингуется, но зайти через WEB интерфейс не удается — т. к. страница упорно не хочет грузится... Решение проблемы, неожиданно было найдено в юзермануале последнего релиза:
ПРИМЕЧАНИЕ. В микропрограммах версии 6.8.0 и выше протокол
HTTP по умолчанию отключен.
Первый вход в веб-интерфейс пользователя должен осуществляться с
помощью протокола HTTPS.

Популярное