IVA Mail Studio. Руководство оператора
Введение
Пошаговое руководство по работе с программой — клиентом протокола CMD сервера IVA Mail, который раньше использовался через telnet или nc. Предполагается, что у вас есть административная учётная запись на сервере и вы знаете, какую команду хотите выполнить; опыт работы именно с этим клиентом не требуется.
Установка
Установка не требуется. Скопируйте папку релиза в любое место и запустите:
IvaMailStudio.exe
В переданной вам папке находится:
| Файл | Описание |
|---|---|
|
Файл программы, больше для запуска ничего не нужно. |
|
Краткое руководство на английском. |
|
Краткое руководство на русском. |
|
Пример заполненного файла конфигурации. |
|
Заготовка для раздела "Выполнить сценарий". |
|
Описание возможностей программы. |
|
Руководство оператора. |
|
Описание возможностей программы на английском языке. |
|
Руководство оператора на английском языке. |
При первом запуске список серверов пуст, о чём программа и сообщает:
Добавление сервера
-
Нажмите Добавить сервер.
-
Заполните форму.
-
Нажмите Сохранить.
| Поле | Что указывать |
|---|---|
Отображаемое имя |
Название, под которым сервер будет виден в боковой панели. На сервер не передаётся. |
Узел |
Имя или адрес сервера. |
Порт |
|
Пользователь, Пароль |
Административная учётная запись. Пароль хранится в зашифрованном виде см. Файлы и переносимость. |
Использовать TLS |
Неявный TLS, устанавливается до приветствия сервера. Рекомендуется оставлять включённым, если нет причин отказываться от него. |
Проверять сертификат сервера |
При открытии формы выключено: в кластерах IVA Mail обычно используются самоподписанные сертификаты. Включите для сервера с сертификатом, проверяемым по цепочке. Пока проверка отключена, боковая панель будет специально об этом напоминать. |
Аутентификация |
См. ниже. |
Отправлять NOTIMEOUT |
При открытии формы включено. Запрашивает у сервера тайм-аут чтения на 365 дней, чтобы сеанс, оставленный открытым на ночь, не разрывался. |
Показывать рукопожатие |
По умолчанию выключено — при подключении выводится одна итоговая строка. В журнал сеанса рукопожатие записывается полностью в любом случае. |
Отображение |
Начальные настройки отображения для этого сервера: компактный вывод (действует в режиме «Текст», поэтому не виден, пока результат не переключён в него), сырые данные, подсветка, приходят ли результаты свёрнутыми и открывается ли каждый результат текстом, а не деревом. При открытии формы свёртывание включено. Компактный вывод, сырые данные, подсветка и свёртывание переключаются и во время сеанса — в заголовке терминала; выбор «дерево или текст» задаётся только здесь, и это то место, куда стоит зайти, если несколько следующих ответов нужны текстом, а потом снова деревом. |
Выбор способа аутентификации
| Значение | Описание |
|---|---|
LOGIN |
Пароль передаётся по сети в открытом виде, так, как набран. |
CRAM-MD5 |
По сети передаётся только хеш пароля. |
DIGEST-MD5 |
То же, а сервер дополнительно подтверждает свою подлинность. |
APOP |
По сети передаётся только хеш. |
Если подключение происходит без TLS, замените LOGIN на один из этих способов. Они защищают только пароль, а не весь остальной сеанс, и потому не заменяют TLS, но сделать это стоит. Сервер поддерживает все четыре способа.
| Программа не переключается на другой механизм аутентификации самостоятельно. Если выбранный способ недоступен на сервере, подключение завершается с ошибкой, а не понижает защиту до передачи пароля в открытом виде. |
Подключение
Выберите сервер в боковой панели и нажмите Подключиться.
Ещё до подключения на карточке сервера видно, каким будет соединение:
Возможные варианты в зависимости от настроек профиля.:
-
TLS, сертификат проверяется;
-
TLS, сертификат НЕ проверяется;
-
без TLS — пароль передаётся открыто;
-
без TLS — пароль защищён, трафик нет.
После подключения открывается терминал с итогом того, что произошло:
| Несколько серверов одновременно. Добавьте столько серверов, сколько нужно, и подключите все. Ctrl + Tab переключает между ними, Ctrl + 1…9 — переходит к нужному. У каждого сервера свой терминал, свой журнал и своё дерево объектов. |
Профили: несколько списков адресов
Профиль — это именованный список серверов. В одной копии программы их может быть сколько угодно: продуктив, тестовый стенд, кластер заказчика. Открыт всегда ровно один. Выбор профиля находится вверху панели серверов, над тем списком, который он называет.
| При переключении серверы прежнего профиля отключаются. Сервер доступен только из того профиля, в котором он указан, поэтому его сеансы закрываются, а не остаются работать за списком, которого больше не видно. Если что-то подключено, программа сообщает, сколько сеансов будет закрыто, и ждёт подтверждения. |
| Кнопка | Что делает |
|---|---|
Создать |
Создаёт пустой профиль и открывает его. Прежние серверы остаются в своём профиле. |
Переименовать |
Меняет имя открытого профиля. На серверы внутри это не влияет. |
Удалить |
Убирает профиль и перечисленные в нём серверы из файла настроек. На самих серверах ничего не меняется. Последний профиль удалить нельзя. Один профиль всегда должен быть открыт. |
Имена профилей уникальны. Имена, различающиеся только регистром, считаются одинаковыми.
Копирование сервера в другой профиль
-
Нажмите Изменить на карточке сервера.
-
Внизу формы, в поле Скопировать этот сервер также в, выберите профиль.
-
Нажмите Сохранить.
Сервер остаётся на месте, копия переносится вместе с паролем. Повторное копирование того же сервера в тот же профиль отклоняется: это один и тот же сервер в двух списках, а не два разных. Поле появляется только тогда, когда есть куда копировать.
Профили или --data-dir
И то и другое даёт несколько наборов серверов, но отвечает на разные вопросы. Профили переключаются во время работы и используют общий файл настроек и общую папку transcripts\. Ключ --data-dir Файлы и переносимость задаётся при запуске и разделяет всё, включая журналы сеансов. Профили удобны, когда нужно «на минуту заглянуть в соседний кластер», --data-dir — когда конфигурации вообще не должны пересекаться.
Импорт серверов из файла
Кнопка Импорт из JSON под списком серверов читает файл profiles.json и добавляет описанные в нём серверы в открытый профиль. Принимаются оба формата.
| Файл | Где он обычно лежит |
|---|---|
Старого клиента |
|
Этой программы |
|
Серверы и сохранённые пароли переносятся без изменений, исходный файл не изменяется. Поэтому обе программы могут работать параллельно, пока идёт переход, а повторный импорт того же файла ничего не добавляет.
В файле этой программы может быть несколько профилей. Все серверы из него попадают в открытый профиль: ничего не создаётся и не перестраивается без вашего ведома, а в строке состояния указано, из скольких профилей они пришли.
| Файл, который не является списком серверов, отклоняется с объяснением причины. Программа сначала проверяет, что это действительно такой файл, и только потом что-либо из него читает — вместо того чтобы принять любой разбираемый JSON и показать серверы без имени и адреса. |
Две прежние настройки поменяли смысл при переходе со старого клиента. Флажки inline и noescape раньше влияли на то, что присылает сервер. Теперь это только настройки отображения на стороне клиента: соединение само согласовывает нужные ему режимы, а форматирование выполняется здесь. Функциональность при этом не теряется.
| Сохранённые пароли зашифрованы для одной машины и одной учётной записи Windows, поэтому файл, импортированный с другого компьютера, приносит список серверов, но пароли придётся ввести заново. См. Файлы и переносимость. |
Выполнение команды
Наберите команду в поле внизу и нажмите Enter.
Начните набирать — появятся подходящие команды. Список приходит с того сервера, к которому вы подключены, поэтому всегда соответствует именно его набору команд.
| Быстрые клавиши | Что делают |
|---|---|
Up Down |
Перемещение по списку либо по истории команд, когда список закрыт. |
Space |
Принять выделенное имя команды. |
Esc |
Закрыть список. |
Tab |
Перемещение по списку, пока он открыт. |
Строка подсказки
Под полем ввода отображается сигнатура команды — та, что сообщил сам сервер:
А для большинства команд ещё и краткое описание того, что она делает:
Серый текст после курсора — подсказка. Он показывает форму того, что может идти дальше, а не конкретное значение, поэтому сам по себе не подставляется.
Tab — значение аргументов
Когда список закрыт, Tab запрашивает у сервера, что может стоять в набираемом аргументе:
-
имена доменов;
-
имена объектов;
-
имена модулей;
-
ключи настроек объекта или модуля;
-
фиксированные варианты из сигнатуры самой команды, например
true,falseиnull.
Такие обращения к серверу попадают в журнал сеанса, как и любые другие команды, но в терминале не отображаются, если не включён показ рукопожатия: их отправляет программа от вашего имени, а не вы сами.
Прочитать результат
Каждый результат остаётся на строке, которая его вызвала. Отдельной панели «последний результат» нет, поэтому ничего никуда не перенаправляется и ничего нельзя случайно закрыть и потерять.
Дерево, Текст и Таблица
У каждого результата свои кнопки просмотра, поэтому переключение одного не влияет на остальные.
| Кнопка просмотра | Описание |
|---|---|
Дерево |
Сворачиваемая структура. У закрытых веток показывается превью первых полей. |
Текст |
Ответ в виде текста — отформатированный или как есть. |
Таблица |
Доступна только для набора однородных записей. Открывается в отдельном окне. |
Щелчок по корню сворачивает весь результат:
Щелчок по ветке раскрывает её на месте:
Или переключитесь на текстовый вид:
Окно таблицы
-
Щелчок по заголовку колонки сортирует по ней, повторный щелчок меняет порядок на обратный.
-
Поле фильтра сужает список; счётчик выше показывает, сколько строк отображено из скольких.
-
Закрытие окна ничего не меняет — результат по-прежнему на своей строке.
Кнопки в заголовке
| Кнопка | Описание |
|---|---|
Подсветка |
Подкрашивает коды состояния и содержимое ответов. При выключении всё отображается одним цветом. |
Свернуть |
Держит каждый результат закрытым до верхней строки — как уже полученные, так и последующие. Повторное нажатие при включённом свёртывании, если какое-то дерево было раскрыто вручную, сворачивает его и оставляет режим включённым; режим выключается только тогда, когда раскрывать уже нечего. Сервер может открываться сразу с включённым свёртыванием — Подключение. |
Форматировать/ Как есть |
Определяет вид результата в режиме Текст. На результат, показанный деревом, не влияет. |
Поиск |
Поиск по журналу — см. Поиск по журналу. |
| Ни одна из этих кнопок не перестраивает журнал. Переключение подсветки или режима «Форматировать / Как есть» не влияет на уже свёрнутые ветки и положение прокрутки: каждый результат остаётся в том виде, в который вы его поставили. |
Ошибки
Ответ 4xx или 5xx — обычный результат, а не разрыв соединения. Он отображается цветной строкой, и сеанс остаётся рабочим.
Поиск по журналу
Нажмите Ctrl + F либо кнопку Поиск.
-
Поиск идёт и по строкам статуса, и по содержимому ответов.
-
Найденный результат отображается под вызвавшей его командой — иначе несколько результатов с одинаковым
200 OKбыло бы невозможно отличить друг от друга. -
Enter/Shift + Enter либо стрелки рядом с полем переводят между совпадениями.
-
При закрытии поиска положение прокрутки сохраняется — программа не возвращается вас вниз.
Экспорт журнала
Нажмите Экспорт журнала в заголовке. Экспортируется журнал выбранного сервера. Формат определяется расширением файла:
| Расширение | Формат |
|---|---|
|
JSON. |
|
CSV — каждое поле в кавычках, с маркером порядка байтов, чтобы кириллица корректно открывалась в Excel. |
|
Обычный текст. |
Любой экспорт содержит исходный ответ сервера в том виде, в каком он был получен, независимо от того, что отображается на экране. Кроме того, журнал сеанса постоянно записывается в transcripts\ — см. Файлы и переносимость.
Просмотр объектов
Откройте вкладку Объекты.
Раскройте домен — и его объекты будут запрошены именно в этот момент, а не заранее для всех доменов сразу.
-
Фильтры Все типы / Учётные записи / Группы / Ресурсы ограничивают то, что запрашивается у сервера. Это параметр запроса, а не скрытие строк на клиенте, поэтому фильтрация большого домена происходит быстро.
-
Кнопка Обновить или клавиша F5 заново запрашивает данные с сервера.
Настройки объекта
Выберите один объект — его настройки отобразятся рядом с деревом.
| Отметка | Что означает |
|---|---|
задано здесь |
Значение задано непосредственно на этом объекте. |
наследуется |
На объекте не задано. Значение берётся с ближайшего уровня, где оно задано: домена, сервера или кластера. Какого именно, сервер не сообщает. |
не задано |
Параметр, который может быть у объектов такого типа, но у этого не задан. У групп нет значений по умолчанию, поэтому панель дополняет список схемой типа. |
только чтение |
Сервер не примет изменение этого значения. |
(чтение недоступно) |
Сервер не раскрывает значение. Так отображаются, например, пароли. |
По умолчанию панель открывается в режиме Только заданные здесь, поскольку именно это обычно и требуется при просмотре объекта. Снимите флажок, чтобы увидеть полную картину:
У доменов есть собственные настройки; они запрашиваются отдельной командой и отображаются так же:
| Панель только отображает настройки, но не изменяет их. Чтобы изменить значение, используйте веб-панель администрирования сервера либо выполните соответствующую команду в терминале — в этом случае журнал зафиксирует, что именно было отправлено и что пришло в ответ. |
Поиск объектов по имени
Введите значение в верхнем поле и нажмите Enter либо Найти.
-
Поиск ведётся по именам и псевдонимам во всех доменах.
-
Стрелки переводят между найденными, счётчик показывает "N в M доменах".
Ввод текста сам по себе ничего не меняет — каждый поиск обращается к серверу и выполняется только тогда, когда вы его запросили.
Поиск объектов по параметру
Этот поиск работает не по имени, а по значению параметра — то есть отвечает на вопросы вида «у каких объектов задан такой-то параметр и какое у него значение».
Наберите имя параметра во втором поле — например, IsAdmin, чтобы найти учётные записи с признаком администратора, — и нажмите Enter либо Найти.
При необходимости укажите значение в поле == значение, чтобы сузить выборку до объектов с этим значением.
Домены тоже участвуют в поиске — по собственному имени и по собственным настройкам: домен — такой же объект с конфигурацией, как и остальные. Найденный домен остаётся в дереве, даже если внутри него ничего не нашлось, и его можно выделить и выполнить над ним команду наравне с прочими результатами.
| Что именно находится: объекты, которые задают параметр на себе, а не те, что наследуют его с уровня выше. Параметр, который никто не задаёт, и параметр, введённый с опечаткой, дают одинаково пустой результат. Если поиск ничего не находит, в первую очередь проверьте написание. |
На большом сервере поиск занимает время, поскольку выполняется отдельной командой на каждый домен:
-
Кнопка Найти недоступна, пока поиск выполняется.
-
Стоп останавливает поиск после текущего домена, сохраняя уже найденное.
-
Сбросить прерывает поиск, очищает поля и возвращает дерево к исходному виду.
Результат поиска — обычное выделение, поэтому его можно сразу использовать в разделах Создание, переименование, удаление или Одна команда, много объектов.
Создание, переименование, удаление
Кнопки под деревом действуют на выбранный домен или объект.
| Кнопка | Описание |
|---|---|
Новая учётная запись, Новая группа |
Создаёт объект в выбранном домене. Программа запросит имя. |
Переименовать |
Переименовывает выбранный объект на сервере. |
Удалить |
Удаляет выбранный объект вместе с его хранилищем. |
| Каждое из этих действий сначала запрашивает подтверждение и точно указывает, что произойдёт — объект, его тип, UID и домен. Об удалении отдельно сказано, что отменить его нельзя, потому что это действительно так. |
Если сервер отклонил запрос, отказ отображается, и других действий не выполняется.
Выделения и сохранённые группы
Выберите несколько объектов в дереве — полоса над кнопками покажет, что именно выделено.
В выделении могут быть объекты только одного типа. Если после учётных записей выбрать группу, выделение заменится, а не объединится с прежним. Следующее, что происходит с выделением, — это выполнение команды, а команда, подходящая учётной записи, редко подходит группе.
Сохранение выделения
Команда Сохранить как группу… присваивает выделению имя и сохраняет его вместе с профилем сервера. Позже такую группу можно выбрать из списка Сохранённые группы, команда Удалить группу удаляет запись.
Сохранённая группа — это список объектов, который хранится в профиле клиента. Это не группа на сервере: такую создаёт кнопка Новая группа.
Кнопка Снять очищает выделение. Вместе с ним очищается и панель настроек.
Одна команда, много объектов
-
Выберите объекты — вручную, из сохранённой группы или по результату поиска (Поиск объектов по имени, Поиск объектов по параметру).
-
Перейдите на вкладку Терминал. Полоса над полем ввода показывает, что выделение сохранилось.
-
Наберите команду, которую нужно выполнить для каждого из выбранных объектов.
-
Нажмите Выполнить над выбранными и подтвердите действие.
Как подставляются аргументы |
Программа читает сигнатуру самой команды и подставляет домен и объект в объявленные ею места. Поэтому механизм работает и для команд, для которых он не был предусмотрен отдельно. |
Что видно в журнале |
Каждая отправленная команда фиксируется по имени объекта, поэтому понятно, к какому ответу она относится. Результаты отображаются свёрнутыми. |
Когда останавливается |
При первом отказе сервера. В итоге сообщается, сколько команд из скольких выполнено успешно. |
Кнопка Снять выделение на той же полосе сбрасывает объекты, выбранные во вкладке «Объекты».
Выполнить на нескольких серверах
-
Подключите нужные серверы.
-
Наберите команду в поле ввода терминала — с тем же автодополнением и подсказками, что и для любой другой команды.
-
Нажмите Выполнить на… в заголовке.
-
Отметьте серверы. Есть кнопки Отметить все и Снять все.Выбор серверов намеренно оставлен за вами, поскольку при одновременном подключении к промышленному серверу и тестовым стендам «все» — редко то, что нужно.
-
Нажмите Выполнить.
В итоге по каждому серверу отображается его ответ, время выполнения и признак того, совпали ли ответы.
Сравнить ответы
Если ответы разошлись, в итоге предлагается кнопка Сравнить.
Сравнение выполняется по содержимому ответа, а не по строке статуса: два сервера, одинаково ответившие 200 OK, — это как раз тот случай, когда важно увидеть различие в данных.
Окно построено по параметрам. Каждый различающийся параметр указан по точечному пути (Router.Limits.Max, ciphers[1]), а под ним — каждое значение по одному разу, с перечнем серверов, которые его дали, и их количеством; первым идёт значение, с которым согласно большинство. Поэтому параметр, по которому двадцать серверов разошлись на два значения, — это две строки, а не двадцать, и вопрос, ради которого окно открывают, — кто отличается и чем, — виден прямо в структуре таблицы.
| Столбец | Что в нём |
|---|---|
Параметр |
Точечный путь, повторяется в каждой строке этого параметра. |
Значение |
Что ответили эти серверы. Если параметра у сервера нет вовсе, написано (здесь не задано), а не оставлена пустая ячейка. |
Серверы с таким значением |
Их имена в том порядке, в каком они перечислены в запуске. |
Сколько |
Количество — чтобы длинный список имён, обрезанный по ширине, всё равно поддавался счёту. |
Перечисляются только различающиеся параметры — в настройках их сотни, и включение совпадающих скрыло бы те немногие, что действительно важны, — а строка над таблицей сообщает, сколько параметров разошлось и сколько серверов было опрошено. Массивы сравниваются по позициям, поэтому изменение порядка элементов также остаётся заметным.
Выполнить сценарий
Сценарий — обычный текстовый файл: по команде на строку, пустые строки и строки, начинающиеся с #, игнорируются. Файл example-script.txt из папки релиза — безопасная отправная точка: он выполняет только команды чтения.
# По команде на строку. Пустые строки и строки с # игнорируются.
PING
MyRights
SystemInfo
DomainsList
-
Подключите серверы.
-
Нажмите Выполнить сценарий и выберите файл.
-
Прочитайте окно подтверждения. В нём указаны число команд, список серверов и первые десять команд сценария — до того, как что-либо отправлено.
-
Нажмите Выполнить сценарий.
| Сценарий выполняется на всех подключённых серверах, а не только на выбранном подмножестве. Отключите заранее те серверы, которых он не должен касаться. |
Каждая команда завершается на всех серверах, прежде чем начнётся следующая. Для последовательности изменяющих команд это принципиально: иначе один сервер может остаться на середине сценария, пока остальные уже выполнят его до конца.
Выполнение останавливается при первой ошибке. Сценарий обычно представляет собой последовательность связанных действий, и продолжать после того, как один из шагов не выполнился, как правило, не имеет смысла.
Клавиатура
| Горячие клавиши | Описание |
|---|---|
Ctl + L |
Очистить экран. В журнале сеанса всё сохраняется. |
Ctl + Tab |
Следующий сервер. |
Ctl + Shift + Tab |
Предыдущий сервер. |
Ctl + 1…9 |
Перейти к серверу. |
Ctl + F |
Поиск по журналу. |
Ctl + C |
Скопировать выделенное в выводе. |
F5 |
Обновить дерево объектов. |
Выделение вывода
Вывод выделяется мышью так же, как обычный текст на странице. Выделение свободно тянется от любой строки до любой другой: команда, строка ответа и содержимое под ней — это один сплошной текст, а не три отдельных поля. Ctl+C копирует выделенное. Двойной щелчок выделяет
имя целиком — например, corp.dom или user@host, если тянуть за верхний или нижний край, вывод прокручивается сам.
Результат, выделенный целиком, копируется целиком — со всеми уровнями дерева, даже если на экране они свёрнуты. У свёрнутой ветки показаны только первые несколько полей, и это краткая сводка, а не данные, — копировать её вместо содержимого смысла нет. Если выделить часть результата, скопируется ровно то, что выделено.
Как только вы начинаете набирать команду, выделение снимается, и Ctl + C снова копирует из поля ввода.
В поле ввода команды
| Горячие клавиши | Описание |
|---|---|
Enter |
Выполнить. |
Up Down |
История команд либо список автодополнения, пока он открыт. |
Space |
Принять выделенное имя команды. |
Esc |
Закрыть список. |
Tab |
Перемещение по списку, пока он открыт. Иначе — запрос к серверу о возможных значениях аргумента.. |
В поле поиска Enter / Shift + Enter переводят между совпадениями.
Файлы и переносимость
Всё, что программа читает и записывает, находится рядом с исполняемым файлом:
| Файл | Описание |
|---|---|
|
|
|
Профили и их серверы, сохранённые группы и настройки отображения. |
|
По одному файлу журнала на сеанс. |
Программа не записывает данные в %APPDATA%, %LOCALAPPDATA%, Program Files или реестр и не использует интеграцию с оболочкой Windows. Папку можно скопировать на промежуточный узел, в общий каталог или на флешку — всё будет работать, при удалении папки не останется следов.
Расположение файлов определяется папкой исполняемого файла, а не текущим рабочим каталогом, поэтому ярлык с другой рабочей папкой всё равно найдёт список серверов.
Несколько конфигураций из одной копии
IvaMailStudio.exe --data-dir configs\prod
IvaMailStudio.exe --data-dir configs\test
profiles.json и transcripts\ при этом создаются внутри указанной папки. Относительный путь отсчитывается от папки исполняемого файла — по той же причине, что и выше. Если указанный ключ запуска программе непонятен, она останавливается с подсказкой, а не запускается на папке по умолчанию с ощущением, что серверы пропали.
Пароли
Пароли в profiles.json зашифрованы средствами Windows DPAPI и привязаны к конкретной машине и учётной записи Windows.
Копия, перенесённая на другой компьютер, сохранит список серверов, но запросит пароли заново. Это ожидаемое поведение такого шифрования, а не ограничение, которое стоит обходить.
Чтение сигнатуры команды
В строке подсказки используется штатная нотация сервера:
ObjectsList "domname"|domUID ("filter"|true|false) (start limit ([fields]))
| Параметр | Описание |
|---|---|
|
Строка в кавычках. |
|
Число без кавычек. |
|
Или. |
|
Необязательная часть — скобки являются обозначением и не набираются. |
|
Массив JSON. |
Имя принимается везде, где в нотации указано "dom.name"|domUID, поэтому UID — это допустимая возможность, а не обязательное требование; для чтения удобнее использовать имя.
Префиксы типов в значениях
Значения получают префикс типа там, где тип не очевиден из самого JSON:
| Параметр | Описание |
|---|---|
|
Момент времени. |
|
Длительность. |
|
Размер данных. |
|
IP-адрес. |
|
Адрес с портом. |
|
Число, за которым следует текст. |
Язык
Русский и английский язык интерфейса переключаются списком в заголовке окна. Изменение применяется сразу, без перезапуска программы, а выбор сохраняется вместе с профилями серверов.
Если что-то пошло не так
| Что видно | Что это значит | Что делать |
|---|---|---|
Красная строка |
Сервер отклонил команду. Это обычный результат выполнения. |
Сверьте аргументы с сигнатурой в строке подсказки. Сеанс при этом остаётся в рабочем состоянии. |
Рассинхронизирован — переподключитесь |
Выполнение команды было прервано, и соединение намеренно закрыто: ответ, полученный наполовину, невозможно достоверно сопоставить с последующими командами. |
Нажмите Переподключить. |
Ошибка аутентификации сразу при подключении |
Выбранный механизм аутентификации может быть недоступен на этом сервере. Программа не переключается на другой механизм самостоятельно. |
Измените профиль и попробуйте LOGIN либо уточните, какие механизмы поддерживает сервер. |
Ошибка сертификата при подключении |
Включена настройка Проверять сертификат сервера, а сертификат не прошёл проверку. |
Если это тестовый стенд с самоподписанным сертификатом — осознанно отключите проверку. Если это промышленный сервер — выясните причину изменения сертификата. |
Сохранённый пароль не принимается после переноса папки |
DPAPI привязывает пароль к исходной машине и учётной записи — см. Файлы и переносимость. |
Введите пароль заново на этой машине. |
Серверы пропали |
Вероятно, программа запущена с другим значением |
Проверьте ключ запуска. Если серверов нет, в строке состояния указан используемый каталог данных. |
Поиск ничего не находит |
Для Поиск объектов по параметру — либо параметр называется иначе, либо он действительно не задан ни на одном объекте. Эти два случая неразличимы. |
Проверьте правильность написания имени параметра. |
Журнал сеанса в папке transcripts\ содержит всё: полное протокольное рукопожатие и команды, которые программа отправляла от вашего имени, — независимо от того, отображались ли они на экране. Когда одного снимка экрана недостаточно, чтобы разобраться в произошедшем, обратитесь к этому файлу.































