Почему 1С:Бухгалтерия 3.0 на веб-сервере не создает или сразу удаляет файл выгрузки в клиент-банк?

Бухгалтер 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет
← На главную

При работе в программе 1С:Бухгалтерия предприятия 3.0, особенно когда информационная база развернута на веб-сервере (в режиме веб-клиента, через интернет-браузер или в облачном сервисе 1С:Фреш), пользователи часто сталкиваются с крайне загадочной проблемой. При попытке выгрузить платежные поручения для клиент-банка программа бодро сообщает о том, что выгрузка успешно завершена, однако целевой файл (обычно с именем 1c_to_kl.txt) физически не появляется на рабочем столе или в выбранной папке на локальном компьютере. При этом права на запись папки проверены, вручную файлы создаются без проблем, а на других компьютерах или в тонком клиенте все может работать корректно.

В этой статье мы подробно разберем, почему возникает эта ситуация, как устроен скрытый защитный механизм платформы и конфигурации, а также как настроить систему для комфортной и безопасной работы.

Выясняем причину: фича или баг?

Проанализируем ситуацию с технической точки зрения. Многие пользователи в первую очередь начинают грешить на отсутствие прав доступа операционной системы к папкам или на сбои веб-сервера. Однако, если ручное создание текстового документа по тому же пути проходит успешно, корень проблемы лежит глубже — непосредственно в логике работы самой 1С.

Начиная с версии 3.0.46.18, в 1С:Бухгалтерии по умолчанию активирован специальный защитный механизм под названием «Безопасность обмена с банком». Этот инструмент был разработан по рекомендациям ФинЦЕРТ Банка России для борьбы с троянскими программами-вымогателями и вирусами-подменщиками.

Рассмотрим подробнее сценарий атаки, от которого защищает этот механизм:

  1. Вирусное программное обеспечение на компьютере пользователя постоянно мониторит файловую систему (в особенности рабочий стол и стандартные папки загрузок) на предмет появления файлов обмена с банками, имеющих стандартные маски имен вроде 1c_to_kl*.txt.
  2. Как только бухгалтер инициирует выгрузку платежных поручений из 1С, файл записывается на диск.
  3. В доли секунды вирус перехватывает этот файл, на лету заменяет в текстовом содержимом реальные реквизиты получателей и номера расчетных счетов на мошеннические счета-дропы, сохраняя исходную сумму и структуру файла.
  4. Бухгалтер, ничего не подозревая, импортирует измененный файл в банковский терминал. Если в организации не внедрен жесткий контроль соответствия на этапе отправки в банке, средства уходят злоумышленникам.

Как работает защита в 1С

Чтобы исключить возможность незаметного изменения файла вредоносным ПО, разработчики 1С применили следующий алгоритм:

  1. При запуске процесса экспорта 1С генерирует файл обмена во временном каталоге или по указанному пути, часто используя уникальное динамическое имя, чтобы затруднить его обнаружение простым вирусным скриптам.
  2. Одновременно с этим на экране пользователя открывается специальное модальное блокирующее окно «Контроль безопасности обмена с банком».
  3. Пока это диалоговое окно открыто на экране, 1С держит монопольную блокировку на созданный файл. Запись или изменение файла другими процессами операционной системы блокируется. В этот момент бухгалтер должен зайти в клиент-банк и загрузить файл.
  4. Как только пользователь возвращается в 1С и нажимает кнопку «ОК» (или кнопку закрытия окна контроля), система считает сессию обмена завершенной и немедленно удаляет файл с диска.

Таким образом, файл существует на диске только в короткий промежуток времени — пока открыто диалоговое окно контроля безопасности. Как только вы нажали «ОК», файл бесследно исчезает. Это объясняет, почему пользователю кажется, что файл «не создается»: на самом деле он создается, но тут же стирается программой после закрытия информационного сообщения.

Особенности работы через Веб-клиент и Веб-сервер

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

При работе в веб-клиенте схема выглядит следующим образом:

  1. Вы нажимаете кнопку выгрузки, браузер скачивает файл в стандартную папку загрузок (или предлагает сохранить его). В интерфейсе 1С появляется окно предупреждения контроля.
  2. Если вы сразу же нажимаете кнопку «ОК» в браузере или закрываете оповещение 1С, веб-клиент отправляет команду на очистку временных данных, и файл может быть удален либо заблокирован.

Правильный порядок действий при включенной защите в веб-клиенте выглядит так:

  1. Нажмите кнопку выгрузки в 1С и сохраните файл на компьютер. **Не закрывайте** и **не нажимайте** никаких кнопок в появившемся окне контроля безопасности в 1С.
  2. Перейдите в соседнюю вкладку браузера или откройте программу вашего Клиент-Банка.
  3. Загрузите скачанный файл в банк и убедитесь, что все платежные поручения распознаны корректно.
  4. Вернитесь во вкладку с 1С и только после этого нажмите кнопку подтверждения проверки (или закройте окно контроля). Программа безопасно уничтожит временный файл.

Как полностью отключить механизм безопасности и автоудаление файлов

Если вы уверены в безопасности своего рабочего места (например, на компьютере установлен надежный антивирус класса Endpoint, доступ строго ограничен, а файлы выгрузки вам необходимы для архивирования или повторной загрузки), эту защитную функцию можно отключить в настройках конфигурации. После этого файлы будут создаваться по стандартному постоянному пути и не будут удаляться автоматически.

Разберем по шагам, как отключить безопасность обмена:

  1. Перейдите в левой панели меню 1С в раздел Банк и касса.
  2. В открывшемся подразделе выберите пункт Банковские выписки (или Платежные поручения).
  3. На верхней панели открывшегося журнала найдите и нажмите кнопку Еще (крайняя справа).
  4. В выпадающем меню выберите пункт Настроить обмен с банком.
  5. Перед вами откроется форма настроек интеграции. Прокрутите форму в самый низ.
  6. Найдите флаг (чекбокс) с названием Безопасность обмена с банком (в некоторых релизах конфигурации он может называться Безопасность обмена с клиентом банка).
  7. Снимите этот флаг.
  8. Нажмите кнопку Сохранить и закрыть для применения настроек.

Теперь программа вернется к классическому режиму выгрузки: файлы будут записываться по фиксированному пути (например, на рабочий стол под стандартным именем 1c_to_kl.txt) и сохраняться там до тех пор, пока вы не удалите или не перезапишете их вручную.

Рекомендуемое решение: Переход на технологию 1С:ДиректБанк

Фирма «1С» настоятельно рекомендует отказаться от устаревшего и небезопасного файлового обмена в пользу современной технологии 1С:ДиректБанк (DirectBank). Этот способ обмена поддерживается практически всеми крупнейшими банками РФ и полностью решает описанную проблему.

Рассмотрим ключевые преимущества интеграции через 1С:ДиректБанк:

Чтобы настроить DirectBank, в той же форме Настроить обмен с банком проверьте доступность прямого обмена для вашего банка, перейдите по гиперссылке настройки и следуйте простым подсказкам мастера подключения (потребуется ввести логин и пароль от личного кабинета банка или использовать установленный на компьютере сертификат электронной подписи).

← На главную