Skip to content

Choose a tag to compare

@dsamsonov dsamsonov released this 08 Jun 21:13

Release Notes

v2.4

Поддержка консоль-серверов (Moxa и аналоги)

Режим -M позволяет работать через консоль-серверы, где подключение двухстадийное: сначала авторизация на самом консоль-сервере, затем логин на устройстве за ним. Для устройства можно задать отдельные логин и пароль через --login-user / --login-pass. Megaconf сам будит «тихую» serial-линию, которая молчит до первого символа, и немедленно прекращает попытки при неверном логине — важно для портов, где повторный вход блокирует учётку.

Парольная SSH-аутентификация на всех версиях OpenSSH

Раньше автоматический ввод пароля требовал OpenSSH ≥ 8.4. Теперь работает на любой версии, включая OpenSSH 7.4 на RHEL/CentOS 7.

Порт на устройство в devices.db

Можно указать порт прямо в списке устройств: host:port, [ipv6]:port. Удобно когда разные устройства доступны на разных портах — например консоль-серверные порты (moxa:4001, moxa:4002).

Live-вывод

--live транслирует вывод сессии в реальном времени вместо одного блока в конце. Включается автоматически в режиме -M — при работе через консоль-сервер это особенно удобно.

Медленная вставка для serial-линий

-S / --slow отправляет ввод посимвольно с задержкой. Нужно для медленных консоль-серверов (Moxa на 9600 бод), где символы теряются при быстрой отправке.

Исправлено

Длинный вывод на JunOS (show version и т.п.) перестал зависать после первой страницы — пагинатор ---(more NN%)--- теперь распознаётся корректно. При подключении к устройству после обновления прошивки (изменился SSH host key) больше не нужно чистить known_hosts.


v2.5

Исправлен критический баг: команды терялись при push конфигурации

При работе через PTY (с v2.4) каждая команда вызывала два промпта вместо одного. Второй промпт оставался в буфере и немедленно «срабатывал» на следующей команде — megaconf отправлял команды быстрее, чем железо успевало их обрабатывать. Результат рапортовался как success, хотя часть команд просто не доходила. Особенно проявлялось при пуше конфигов с длинными строками — хэши паролей, SSH-ключи.

Пароли в debug-режиме

-d больше не печатает пароли открытым текстом в консоль. Вместо содержимого выводится <protected>. Актуально для всех режимов: SSH, Telnet, -M с двухстадийной аутентификацией.

Права на лог-файлы

Файлы -l, -J, -D теперь создаются закрытыми для других пользователей системы. Важно: вывод сессии нередко содержит секреты — хэши паролей, ключи из show running-config.

Выбор конца строки

--eol позволяет явно задать символ конца строки: lf (дефолт для SSH/Telnet), cr (дефолт для -M), crlf (с предупреждением — на большинстве устройств вызывает проблемы), auto (дефолт, выбирает сам по режиму). Полезно когда конкретное железо ведёт себя нестандартно.