Как правильно запустить и настроить агент конфигуратора 1С в режиме AgentMode?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

Режим агента конфигуратора (/AgentMode) платформы 1С:Предприятие предназначен для непрерывной автоматизации задач администрирования, тестирования и CI/CD-процессов. В отличие от стандартного пакетного режима, агент поднимает постоянный фоновый процесс со встроенным SSH-сервером, что устраняет задержки на постоянный перезапуск конфигуратора. Однако при его запуске разработчики и системные администраторы часто сталкиваются с ошибками авторизации, некорректным экранированием кавычек и невозможностью старта в Linux-окружении без графического интерфейса. Разберем подробно, как правильно настроить и запустить данный режим.

Основные требования и обязательные параметры командной строки

Проанализируем ключевой нюанс: запуск агента не может быть выполнен только с ключом /AgentMode. Встроенному SSH-серверу необходим закрытый ключ хоста для шифрования соединений. Если ключ не задан, процесс конфигуратора мгновенно завершит работу без вывода ошибок в консоль.

Для успешного запуска необходимо указать следующие параметры:

  1. Режим запуска: директива DESIGNER и ключ /AgentMode.
  2. Строка соединения с информационной базой: параметр /S для клиент-серверного варианта или /F для файлового.
  3. Параметры SSH-хоста: обязательный флаг /AgentSSHHostKeyAuto (для автоматического поиска или генерации закрытого ключа по стандартным путям) либо явное указание файла ключа через /AgentSSHHostKey <путь_к_файлу>.

Посмотрим на пример правильной команды запуска под управлением ОС Windows:


"C:\Program Files\1cv8\8.3.10.2299\bin\1cv8.exe" DESIGNER /S"server-1c\base_name" /AgentMode /AgentSSHHostKeyAuto

Обратим особое внимание на экранирование параметров: аргументы командной строки должны обрамляться строго двойными кавычками ("). Использование одинарных кавычек (') приводит к тому, что строка подключения воспринимается неверно, и агент завершает сеанс.

Особенности авторизации и подключения по SSH

После успешного запуска агент открывает локальный порт (по умолчанию 1543). Подключение к агенту выполняется через стандартный SSH-клиент (например, консольную утилиту OpenSSH или PuTTY).

Разберем типичные ошибки, возникающие на этапе аутентификации:

  1. Параметры /N и /P игнорируются: передавать логин и пароль в строке запуска конфигуратора бесполезно. Аутентификация выполняется исключительно при установке SSH-соединения.
  2. Имя пользователя: при выполнении команды ssh необходимо явно передавать имя пользователя информационной базы 1С с правами администратора. Если опустить логин, клиент попытается авторизоваться под именем текущего системного пользователя ОС, что приведет к ошибке Access denied.
  3. Проверка прав и лицензий: ошибка доступа также может свидетельствовать об отсутствии свободной клиентской лицензии 1С или недостаточных правах учетной записи в базе.

Посмотрим на корректную команду подключения через терминал:

ssh Admin@127.0.0.1 -p 1543

После запроса пароля вводим пароль пользователя Admin из информационной базы. При успешной авторизации открывается интерактивная командная строка агента вида designer>.

Запуск агента конфигуратора на серверах Linux без GUI

Выясним причину частой проблемы: исполняемый файл толстого клиента и конфигуратора 1cv8 в ОС Linux архитектурно привязан к графической подсистеме X11. При попытке запустить агент на чистом сервере без графической оболочки процесс моментально аварийно завершается, а проверка портов через sudo lsof -i :1543 показывает, что порт не слушается.

Для решения этой проблемы необходимо запускать агент конфигуратора через виртуальный X-сервер Xvfb (X Virtual Framebuffer):


xvfb-run /opt/1C/v8.3/x86_64/1cv8 DESIGNER /S"server-linux\base_name" /AgentMode /AgentSSHHostKeyAuto

Утилита xvfb-run эмулирует дисплей в памяти, что позволяет агенту 1С успешно инициализировать необходимые графические библиотеки и открыть сетевой порт 1543.

Дополнительные параметры тонкой настройки агента

Рассмотрим полезные параметры, которые могут потребоваться при автоматизации и интеграции в сложные серверные инфраструктуры:

  1. /AgentPort <номер_порта> — переопределение стандартного порта прослушивания (полезно, если на одном сервере запускается несколько агентов для разных баз).
  2. /AgentListenAddress <IP-адрес> — привязка агента к конкретному сетевому интерфейсу. По умолчанию используется 127.0.0.1. Если требуется обращаться к агенту с удаленной машины, указывается соответствующий сетевой IP или 0.0.0.0.
  3. /AgentBaseDir <путь_к_каталогу> — указание рабочей директории на сервере для выгрузки и загрузки файлов конфигураций (.cf), расширений (.cfe) и внешних обработок.
  4. /visible — диагностический параметр запуска. Позволяет отобразить служебные окна и локализовать ошибку, если конфигуратор падает на этапе инициализации.

Внутри активной сессии агента поддерживается протокол SFTP (для передачи файлов конфигураций на том же порту), а команды управления базой данных (такие как common connect-ib, обновление конфигурации и управление расширениями) могут возвращать результат в формате JSON, что делает агент мощным инструментом для сценариев непрерывной интеграции.

← На главную