Bimoid передача файлов не удалась

Обновлено: 05.07.2024

Согласитесь, круто получить мессенджер уровня QIP внутри своей компании с собственным сервером и ни от кого не зависеть. Переписка — под вашим контролем, всё безопасно. Можно подключить филиалы к корпоративному чату через Интернет, был бы "белый" IP. Никаких "левых" людей, всё строго по делу.

Но если на первых порах развитие мессенджера держалось на энтузиазме и выходило по 5-6 релизов в год, то потом, после выхода версии 1.0.60.1 в июле 2013 года, развитие проекта прекратилось.

2. Проблемы мессенджера Bimoid

Бóльшая часть проблем этого неплохого мессенджера и чата для командной работы в том, что Bimoid — незаконченный проект, который "бросили на полпути". Разработчик изначально сделал его бесплатным, но с закрытыми исходными текстами (не open source) из-за компонент и кодовой базы, которую нельзя открывать по условиям лицензий.

Скорее всего, когда закончились ресурсы и интерес к проекту, разработка была остановлена, а потом и вовсе заброшена. Все пользователи офисного мессенджера оказались предоставлены сами себе.

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

В Сети (не на официальном сайте!) был найден дистрибутив сервера Bimoid 2.0, в котором используется база данных SQLite по умолчанию и прилагается конвертер баз старого образца в новый формат:

Конвертер мессенджера Bimoid

Кроме SQLite поддерживаются MySQL, PostgreSQL и MS SQL Server.

Она есть в старой версии. Но если перейдёте на версию 2.0 — вы её потеряете.

Впрочем, клиентское приложение обновлено не было, так что, в принципе, можно и не переходить на новую версию сервера, потому что особых "плюшек" даже в сервере добавлено не было. Разве что отвалов от сервера стало меньше, по субъективным ощущениям.

2.2. Админка Bimoid, краткий обзор проблем

В дальнейшем я буду описывать версию админки 2.0.x, потому что визуально она практически та же, что и 1.0.48.

Новая админка немного лучше старой, но пользоваться ею так же неудобно, как и раньше, все действия производятся по принципу "выбрал пункт меню", "нажал кнопку запросить или загрузить", "подождал, увидел данные", "повторил по кругу".

Это ужасно, потому что нет никакой интерактивности. Админ нажимает кнопку и хочет сразу увидеть результат. Но в админке Bimoid администратор ощущает себя человеком, которого заставляют вводить консольные команды с клавиатуры для любых действий и каждый раз нажимать Enter. Welcome to DOS.

Я понимаю, что это было сделано с целью максимально снизить нагрузку на сервер, но отсутствие нормальной, удобной, интерактивной административной консоли — это гигантский минус в карму мессенджеру Bimoid. Просто попробуйте, как это, управлять хотя бы сотней пользователей в этом "Bimoid Админ".

Ещё один важный минус консоли управления сервером Bimoid состоит в том, что это приложение под Windows. Его нужно устанавливать или таскать с собой на флешке. Хорошая админка должна работать в браузере, в любой операционной системе, как в MyChat. У администратора далеко не всегда под рукой есть ноутбук или компьютер с Windows. А вот Linux, Android или Mac — найдётся где угодно. И браузер там будет 100%, устанавливать ничего не нужно.

Это не шутка, и я объясню, почему. Вся история сохраняется на сервере, в базе данных. Логично, что службе безопасности компании или, скажем, директору, она бывает нужна.

Запрос просмотра истории в админке Bimoid

В этом вся админка Bimoid, такой подход повсюду. И если кто-то мне скажет, что это удобно, этот человек остался жить в XX веке, и прогресс для него не наступил.

Пользоваться таким инструментом тупо неудобно. И это ещё мягко сказано.

2.4. Глючной общий список контактов

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

Можно делать многоуровневую вложенность, для больших компаний это очень полезно.

Однако, по неизвестной причине, эти списки у разных пользователей разные!

Общий список контактов офисного чата

То есть, у одного это правильное дерево, с вложенностями, а у другого — плоский список с корневым подразделением.

Общий список контактов не обновляется автоматически:

Обновление общего списка контактов в Bimoid

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

Создание нового общего списка контактов — отдельная боль, как обычно, нужно знать наизусть все учётки пользователей и "рисовать" древовидный список поштучно, вручную, или копировать из инструмента просмотра пользователей, а затем вставлять в контакты:

Создание общего списка контактов в программе Bimoid

Отправка файла в офлайн

То есть, файлы вы можете передавать, только если ваш собеседник онлайн, и только так.

Отправка файла из общего списка контактов в офлайн

Нельзя одновременно передавать файлы нескольким людям:

Отправка файла нескольким людям в чате Bimoid

2.6. Как зарегистрировать нового пользователя

Зарегистрировали пользователя, но сразу под ним войти нельзя, надо переключаться в окно логина и входить раздельно. Причём, обязательно требуется email по умолчанию.

И это ещё хорошо, потому что в сервере версии 1.xx учётки нельзя было создавать с клиента, а только на сервере.

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

Интересный нюанс, ник пользователя задаётся при регистрации, это обязательное поле. Но в профиле он почему-то в статусе "не указано":

Ник пользователя Bimoid

2.7. Окна, окна, окна

Главное окно мессенджера Bimoid

Окна Bimoid клиента открываются на заднем плане, потому что по умолчанию главное окно всегда "stay on top", то есть поверху всех окон в системе.

Это настраивается, но в дальнейшем жутко неудобно, потому что приложение разделено на несколько окон, список контактов — отдельно, разговоры — отдельно. Это наследие QIP, по шаблону которого делался интерфейс локального мессенджера Bimoid.

2.8. Отвалы связи

Иногда, при невыясненных обстоятельствах, клиент перестаёт подключаться к серверу, однако сервер работает, админка к нему подключается и функционирует. Сам Bimoid состоит из трёх служб: ядра, админки и файлового прокси, возможно, "падает" или "зависает" ядро сервера.

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

Попытка подключения к серверу Bimoid

Не очень понятно, зачем здесь такой огромный тайм-аут. Сомнительная защита от DDOS-атак на сервере, возложенная на плечи клиентского приложения.

В текстовом логе сервера не фиксируются попытки подключения клиентских приложений, помогает только ручной перезапуск службы "Bimoid Server”. Причину такого поведения сервера выяснить не удалось.

2.9. Нет конференций и звонков

Также нет звонков. Позвонить голосом или с видео, как в MyChat или в Skype for Business — не получится.

2.10. Чёрный список IP, а где белый?

На сервере есть блокировки по IP (чёрный список):

Чёрный список IP на сервере чата Bimoid

Но нет "белого" списка, где можно указать только те адреса, маски или диапазоны, с которых разрешены пользовательские подключения.

Также нельзя ограничить использование админки с определённых адресов. В "чёрном" списке всё хранится в куче, без разделения по типам приложений или подключений.

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

Вы не сможете дать ограниченные права сотруднику отдела кадров, чтобы тот заполнил профили пользователей, отдельные права — "падавану" из сетевиков, чтобы он отслеживал проблемы с подключениями и отвалами связи. Придётся всё делать одному человеку либо бесконечно доверять всем администраторам компании с разным опытом.

2.11. Нет системы прав и ограничений

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

Иными словами, нет системы прав пользователей. У вас одноранговый чат, где все пользователи могут всё. Для публичных мессенджеров типа ICQ, Skype или Telegram это нормально. Для корпоративного — однозначно, нет.

2.12. Управление пользователями Bimoid сервера

Это боль. Как уже писалось выше, редактировать существующих пользователей очень сложно, вы должны помнить их ники:

Управление пользователями в админке сервера Bimoid

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

Редактирование учётных записей пользователей чата Bimoid

3. Сравнение Bimoid и мессенджера MyChat

Учтите два важных факта:

  1. Bimoid больше не развивается, разработка и поддержка прекращены в 2013 году. Любые проблемы вы будете вынуждены решать самостоятельно. Без поддержки, без документации и без исправления найденных багов.
  2. Bimoid работает исключительно в Windows, есть ещё старая версия клиентского приложения для Android 1.4. Нет клиентов для Linux, macOS и WEB.

В таблице сравниваем базовые возможности Bimoid версии 2.0.49.5 (сервер), 1.0.60.1 (клиент) и MyChat 7.0 (бесплатной версии) на 20 июня 2018 года.

4. Рекомендации по переходу на MyChat

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

Плюс этого продукта — полная бесплатность. Минусы: нет поддержки, нет обновлений, нет исправления ошибок.

Однако, для небольших компаний, до 20 человек онлайн, переход с мессенджера Bimoid на MyChat пройдёт безболезненно, потому что стандартная лицензия MyChat — бесплатная, есть небольшие ограничения, но они несущественны.

Для более крупных организаций со штатом сотрудников больше 20 человек, стоит сравнить цены и возможности ближайших конкурентов MyChat, вроде Skype for business или Slack.

Лицензионная политика защищённого корпоративного мессенджера MyChat проста: 1 онлайн-пользователь стоит $4. Плюс год обновлений бесплатно, а затем можно купить подписку на обновления, если в этом есть нужда.

У мессенджера MyChat долгая история, обновления обычно выходят 5-6 раз в год. Множество пользователей из России и всего СНГ. Интересные большие отзывы от реальных покупателей.

Чтобы программа стала портабельной, т.е. чтобы её можно было бы носить, к примеру, на флешке, надо сделать всего лишь одно действие из двух возможных.

в) После чего желательно удалить папку Bimoid по старому пути (имеется в виду «C:\Documents and Settings\<ВашеИмя>\Application Data\Bimoid» или «C:\Documents and Settings\<ВашеИмя>\Local Settings\Application Data\Bimoid»).

В обоих случаях портабельная версия папки «Bimoid» должна содержать следующие папки и файлы:

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

2. Ключи установки дистрибутивов:

Файлы дистрибутивов сервера и мессенджера поддерживают все ключи инсталятора InnoSetup, в том числе и ключи «/silent» и «/verysilent» для «тихой/скрытой» установки. Подробнее о доступных ключах/командах можно почитать по этой ссылке.

Пример запуска тихой установки:

3. Перенос сервера и базы на другой компьютер:

При переносе Bimoid сервера на другой компьютер Вам необходимо:

1. Установить на этом компьютере дистрибутив Bimoid сервера, чтобы в реестр прописалась служба Bimoid Server.

2. Перенести папку сервера туда, куда вы только что установили сервер и убедиться в правильности путей к базе и логам в BimoidSrv.ini.

При этом службы Bimoid сервера должны быть остановлены!

5. Bimoid Server и Windows Vista/7/2008+:

Если вы установили Bimoid Server на одну из вышеперечисленных систем и клиентам вашей сети не удается подключиться к вашему серверу, то:

1. Запустите утилиту Bimoid Admin и откройте пункт «Сервер», проверьте во втором блоке наличие портов и галочек, разрешающих входящие подключения к вашему серверу.

2. Обязательно надо создать правило для входящих подключений в брандмауэре на указанные в настройках утилиты Bimoid Admin порты (номера портов 7023 и 7024, если и Bimoid Admin не подключается к серверу). Правило создается в оснастке «Windows Firewall with Advanced Security” или же по-русски «Брандмауэр Windows в режиме повышенной безопасности». Запустить оснастку можно нажав на Пуск/Выполнить, набрать wf.msc и нажать enter. Ваше правило должно разрешать входящие подключения на порты 7023, 7024, 7025, 7033.

6. Где можно хранить папку профилей Bimoid Messenger?

Начиная с версии 1.0.0.43, поиск папки профиля происходит следующим образом:

1. Если в папке с программой присутствует папка Users, то версия считается портабельной. При этом пути хранения истории и принятых файлов будут неизменяемы и будут вести также в папку Users\UserXXXX.

2. Если пункт 1 не срабатывает, то программа ищет папку Bimoid в пользовательской папке по следующему пути: «Папка пользователя\Local Settings\Application Data». Это необходимо для профилей предыдущих версий мессенджера.

3. Если пункт 2 не срабатывает, то программа ищет папку Bimoid в папке «All Users\Application Data».

4. Если пункт 3 не срабатывает, то программа ищет папку Bimoid в пользовательской папке по следующему пути: «Папка пользователя\Application Data». Если папка не существует, то она создается и считается папкой профилей.

При наличии прав администратора, можно переносить папку Bimoid в любую из указанных в последних трех пунктах. Именно переносить, а не копировать, иначе могут быть проблемы с путями хранения истории и принятых файлов.

7. MSI дистрибутив мессенджера для GPO:

8. Параметры командной строки Bimoid мессенджера:

Начиная с версии 1.0.0.49 Bimoid мессенджер поддерживает следующие параметры командной строки, разделенные пробелом:

Пример 2:
Если учётная запись уже была создана до этого, и галочка сохранения пароля стоит, то, чтобы не раскрывать пароль, можно просто указать учётную запись, сервер и автовход:

Если через командную строку вы укажите учётную запись, которая ещё не была создана до этого, то она присвоит себе все параметры прокси, указанные в Bimoid.ini файле.

Также для разработчиков доступен параметр командной строки «/pktlog», о котором можно почитать здесь.

С версии 1.0.57.1 поддерживаются следующие параметры командной строки для смены текущего статуса уже влогиненных копий Bimoid мессенджера (их нельзя использовать вместе с параметрами выше):

9. Как указать пользовательские настройки по умолчанию?

Начиная с версии мессенджера 1.0.52.1, поддерживается механизм установки пользовательских настроек по умолчанию, который может оказаться полезным администраторам сетей. Для этого разъясним кое-что.

Почти все настройки мессенджера пользователя находятся в файле «ObimpUser.ini» в папке его профиля. Оттуда вы можете взять названия ключей настроек из секции [User], но только те, что отвечают именно за настройки. Взяв необходимые ключи, вам нужно найти файл «Bimoid.ini» (он обычно находится в папке «../AppData/Bimoid/»), оттуда берутся настройки сервера для каждого профиля, и создать там после секции [Main] новую секцию [User].

В секции [User] в файле «Bimoid.ini» вы можете указать настройки профиля по умолчанию для каждого нового профиля или «насильно» указывать настройки, которые с каждым запуском мессенджера будут восстанавливаться на те, которые вы указали. Чтобы настройки указывались «насильно», то первым в секции [User] должен быть ключ ForceTheseOptions=1

Ниже показан пример файла «Bimoid.ini»:

О порядке поиска «Bimoid.ini» клиентом:

После запуска «Bimoid.exe», клиент пытается найти папку «Users» в папке с программой, если находит, то и «Bimoid.ini» он будет читать из папки с программой.

Потом пытается найти папку «Bimoid» в «..\User\Local Settings\AppData\», если находит, то и «Bimoid.ini» он будет читать из этой же папки.

После пытается найти папку «Bimoid» в «..\All Users\AppData\», если находит, то и «Bimoid.ini» он будет читать из этой же папки.

Потом пытается найти папку «Bimoid» в «..\User\AppData\», если находит, то и «Bimoid.ini» он будет читать из этой же папки.

Начиная с версии 1.0.58.1, при чтении файла Bimoid.ini, добавлена поддержка преобразования переменных среды для следующих параметров:

Это означает, что при развертывании сервера и клиентов, вы можете указывать переменные среды вместо абсолютных значений. Например, может оказаться полезным указывать значение CurUser под именем текущей учетной записи Windows, если вы используете вход на Bimoid сервер через AD. Вот, например, как это будет выглядеть в вашем Bimoid.ini:

10. Подключение мессенджера с помощью SRV записей в DNS:

Начиная с версии мессенджера 1.0.53.2, поддерживается подключение к серверу с помощью SRV записей в DNS. Это больше может быть полезным администраторам сетей. Т.к. SRV запись позволяет указывать хост и порт вашего сервера по определенному домену. Принцип тот же, что и у MX записей. Подробнее можно почитать здесь.

При прописывании SRV записи, имя сервиса необходимо указывать в следующем виде:

Если у Bimoid сервера открыто несколько портов для входящих клиентских подключений, то можете создать несколько SRV записей с теми портами, которые у вас открыты. Мессенджер отдаст приоритет той записи, порт которой указан в настройках мессенджера. Если указанный порт не будет найден в SRV записях, то мессенджер будет использовать первую по приоритету SRV запись, игнорируя номер порта, который указан в мессенджере.

С того момента, как вы правильно добавили SRV запись для домена, который указан в поле OBIMP сервера в мессенджере, подключение будет происходить только на те порты, которые доступны в SRV записях. Т.е. SRV записи имеют приоритет перед номером порта, который указан в поле порта сервера в мессенджере.

11. Как быстро развернуть сервер с общим списком контактов?

После установки Bimoid сервера, у администратора сети может появиться желание быстро добавить на сервер учётные записи сотрудников и всех их добавить в списки контактов друг друга. Эти процессы мы и опишем ниже.

1. Как быстро создать учётные записи?
Проще всего их импортировать одним, заранее заготовленным списком. Для этого в любом текстовом редакторе составьте текстовый файл вида:

где данные должны располагаться в строгой последовательности:

по одной учётной записи на строку, а сами данные в строке разделены точкой с запятой.

После составления вы можете сохранить список в текстовый файл и открыть его через утилиту Bimoid Admin в блоке «Пользователи/Добавить нового пользователя/Импорт пользователей” и нажать на кнопку «Импорт». Результат импорта отобразится в этом же блоке. Всё, пользователи добавлены.

2. Как быстро добавить всех пользователей в списки контактов друг друга?

Для этого есть «Общий список контактов» в утилите Bimoid Admin в пункте «Пользователи». Но вы явно не захотите добавлять всех вручную, это долго и муторно.

После этого переходите в пункт «Пользователи/Общий список контактов», нажимаете на кнопку «Выбор действия» и выбираете из меню пункт «Добавить всех из буфера учётных записей». Готово, все пользователи находятся в общем списке контактов.

Возможно вы захотите раскидать их по отделам, а значит вам надо будет создать группы, например «Бухгалтерия», «Отдел кадров» и т.д. После создания групп, вы можете раскидать контакты по ним простым перетаскиванием или через контекстное меню «Правка выделенного» и указанием родительской группы.

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

Также, обратите внимание на галочку «Удалять все локальные контакты пользователей после обновления общего списка». Она должна быть выставлена, чтобы при каждом добавлении/изменении/удалении учётной записи, у всех ваших пользователей обновлялся список контактов после очередного захода на сервер. Чтобы все клиенты сразу получили новый общий список контактов необходимо во-первых нажать на «Применить новые настройки», во-вторых всех кикнуть через пункт «Пользователи/Прервать текущие подключения». После чего клиенты автоматом переподключаться к серверу через секунд 30.

12. Поддержка SSL соединений:

13. Отображение изображений по ссылкам:

  1. По-умолчанию в ленте переписки отображается только 6 изображений.
  2. При добавлении новой ссылки на изображение, она преобразуется в изображение, тогда как предыдущие преобразуются обратно в ссылки.
  3. По-умолчанию максимальный размер загружаемого изображения – 2097152 байт (2 МБ).
  4. По умолчанию максимальный размер эскиза, отображаемого в ленте переписки, – 300х500 пикселей.
  5. Поддерживаемые расширения изображений: *.jpg; *.jpg; *.jpg; *.jpg; *.bmp; *.ico.
  6. Ссылка на изображение должна обязательно заканчиваться расширением файла, иначе она не будет трансформирована в изображение.
  7. Изображения сохраняются в папке %TEMP%\BimoidWC.

Настройка отображения:
На данный момент в интерфейсе программы отсутствуют инструменты для настройки загрузки и отображения изображений по ссылкам в ленте переписки, однако пользователь может самостоятельно отредактировать файл ObimpUser.ini, указав необходимые параметры.

Внимание! Изменение любого из указанных параметров может повлечь за собой увеличения потребления ресурсов ПК, а также может повлиять на стабильность работы программы.

14. Правильное отключение пользователей при обновлении сервера:

При обновлении Bimoid сервера, рекомендуется предварительно выполнить следующие действия в утилите Bimoid Admin:

  1. Перейти в пункт «Сервер -> Основной сервер». Убрать галки «Разрешить входящие подключения на эти порты» и нажать на кнопку «Применить новый настройки». Этим вы предотвратите появление новых подключений.
  2. Перейти в меню «Пользователи» и нажать на пункт «Прервать текущие подключения», потом нажать на кнопку «Выполнить». Немного подождать, чтобы значение в поле «Подключенных пользователей на данный момент» стало равно 0.
  3. Выйти из утилиты Bimoid Admin и начать обновление сервера, запустив дистрибутив новой версии Bimoid Server.
  4. После успешного обновления, запускаете утилиту Bimoid Admin и переходите в пункт «Сервер -> Основной сервер». Ставите обратно галки «Разрешить входящие подключения на эти порты» и нажимаете на кнопку «Применить новый настройки».

Эти простые действия помогут вам избежать потери каких-либо данных при обновлении сервера.


Анализатор пакетов протокола OBIMP

В помощь разработчикам доступна библиотека анализатора пакетов протокола OBIMP. В архиве идёт небольшая инструкция и пример динамического подключения этой библиотеки.

В Bimoid мессенджере имеется поддержка этой библиотеки. Чтобы появилось окно анализатора, необходимо скопировать только файл ObimpLog.dll из архива, предоставленного ниже, в папку с мессенджером и запустить Bimoid.exe с параметром командной строки «/pktlog».

microOBIMP Client SDK

Клиентский SDK для разработчиков (Windows). На данный момент возможности SDK минимальны. Библиотека написана на основе протокольной части Bimoid Messenger.

SDK состоит из двух независимых частей:
Часть 1: ActiveX реализация библиотеки (папка ActiveX_DLL)
Часть 2: Прежняя реализация библиотеки (папка Direct_DLL)

Какой из частей пользоваться — на выбор разработчика. Отличия между ними в том, что ActiveX работает как COM сервер и библиотеку obimp_ax.dll надо прежде зарегистрировать как положено через regsvr32. А прежняя реализация требует динамической линковки библиотеки mobimp.dll и вызова соответствующей экспортной функции для обмена интерфейсами.

Обе части содержат тестовые проекты на Delphi, позволяющие разобраться в работе библиотек (компилировать желательно в Delphi 2009 и выше).

Текущие возможности SDK (v.1003):

Bimoid Server Plugins SDK

Серверный SDK для разработчиков серверных плагинов (Windows). На данный момент возможности SDK минимальны. Плагин на сервере это такое же расширение (extension), как транспорт, поэтому установка DLL файла плагина идентична установке DLL транспорта.

Текущие возможности SDK:

Bimoid IM (Android)

Исходный код Android версии Bimoid мессенджера открыт и доступен на GitHub. Все желающие могут его изучить или заняться дальнейшим развитием.

Здравствуйте!
Astra Linux SE update 9 установлен wine, через wine работает мессенджер bimoid.
Передача файлов от клиента Windows в клиент Linux работает корректно.
При передаче файлов от клиента Linux в клиент Windows происходит разрыв соединения. Клиент Windows сообщает, что передача файлов не удалась. Однако если перейти в принятые файлы, то там можно обнаружить битый переданный файл. Под "битым" подразумеваю, что файл не был передан полностью. Например, документы word или pdf вообще не открываются, файлы изображения открываются, но будет только половина изображения.
Файлы размером менее 30 Кб передаются без проблем.

В tcpdump видно, что в конце идут несколько пакетов с флагом RST. Их отправляет Linux. При корректной передаче перед пакетами с флагом RST идет пара пакетов в флагом FIN

14:59:56.873569 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [.], seq 1047576:1049036, ack 147, win 502, length 1460
14:59:56.873569 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [.], seq 1049036:1050496, ack 147, win 502, length 1460
14:59:56.873570 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [P.], seq 1050496:1051956, ack 147, win 502, length 1460
14:59:56.873610 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1017064, win 245, length 0
14:59:56.873975 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1019984, win 233, length 0
14:59:56.874113 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1022904, win 222, length 0
14:59:56.874489 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1025824, win 211, length 0
14:59:56.874677 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1028744, win 199, length 0
14:59:56.874731 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1028744, win 256, length 0
14:59:56.875019 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1030056, win 251, length 0
14:59:56.875208 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1032976, win 256, length 0
14:59:56.875339 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R.], seq 1051956, ack 147, win 502, length 0
14:59:56.875366 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1035896, win 256, length 0
14:59:56.875462 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594623953, win 0, length 0
14:59:56.875463 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594626873, win 0, length 0
14:59:56.875463 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594629793, win 0, length 0
14:59:56.875464 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594629793, win 0, length 0
14:59:56.875464 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594631105, win 0, length 0
14:59:56.875464 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594634025, win 0, length 0
14:59:56.875465 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594636945, win 0, length 0
14:59:56.875747 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1038816, win 256, length 0
14:59:56.875752 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594639865, win 0, length 0
14:59:56.875904 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1041736, win 256, length 0
14:59:56.875906 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594642785, win 0, length 0
14:59:56.876261 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1044656, win 256, length 0
14:59:56.876263 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594645705, win 0, length 0
14:59:56.876401 IP 192.168.3.209.63488 > 192.168.3.109.7025: Flags [.], ack 1047576, win 256, length 0
14:59:56.876403 IP 192.168.3.109.7025 > 192.168.3.209.63488: Flags [R], seq 3594648625, win 0, length 0

Читайте также: