TCP/IP мост v. 1.8 для
сервера ФБП
ФБП-TCP/IP мост для
Клиента-FCM является самостоятельной Windows программой и предназначен для обеспечения доступа к
серверу «Финансы без проблем» посредством TCP/IP протокола (сетям
Internet и Intranet).
При этом не требуется никакого
дополнительного программного обеспечения типа web-серверов, ftp-серверов,
броузеров и т.п. Клиент-FC получает доступ к удаленному серверу ФБП так, как если бы
они находились в одной локальной сети.
Как это работает
Обратимся к диаграмме.
Сервер ФБП, как обычно, обслуживает
директорию обмена. ФБП-IP мост передает запросы, пришедшие по протоколу TCP/IP от удаленных
Клиентов-FCM в директорию обмена и возвращает ответы, сформированные сервером.
На клиентской стороне не требуется
применения никакого специального программного обеспечения, так как Клиент-FCM содержит в себе
все необходимое для работы по сетям TCP/IP.
ФБП-IP мосту НЕ
НУЖНО указывать, какие директории обмена он обслуживает. В запросе,
приходящем от удаленного Клиента-FCM содержится указание на
то, в какую директорию обмена должен быть отправлен запрос. ФБП-IP мост проверяет
наличие такой директории обмена на серверной машине и кладет туда запрос.
Впоследствии он возьмет из этой же директории обмена ответ сервера и отдаст его
удаленному Клиенту-FC. Если запрошенной директории обмена не существует, то
Клиент-FC возвратит сообщение об ошибке
доступа Клиенту-FC.
¨ |
Из
вышесказанного следует, что ПУТЬ в директорию обмена, передаваемый ФБП-IP мосту Клиентом-FCM должен быть такой, как ее видит ФБП-IP мост. Например, на серверной машине
существует директория E:\BUX\_BOX_\. Удаленные клиенты, желающие доступиться
к серверу, обслуживающему эту директорию, должны передавать мосту ее именно в
таком виде C:\_BOX_\, а не в каком либо ином, даже, если,
этот каталог или весь диск «расшарены»
по локальной сети, например, под буквой “X”. Клиент
«знает» о директории обмена из начального диалога регистрации. Там-то и нужно
писать, как в нашем примере E:\BUX\_BOX_\. Короче
говоря, директория обмена, которую указывают при регистрации, должна
выглядеть так же, как если бы Клиент-FC находился на одной машине с ФБП-IP мостом. |
ФБП-IP мост является:
ФБП-TCP/IP мост и Клиент-FC работают в паре.
Они обмениваются данными в зашифрованном формате (ГОСТ 28147-89).
¨ |
Информация
сначала компрессируется, а затем шифруется. Этим достигается улучшенная
скорость обмена по каналам Internet,
улучшенная скорость шифрования и улучшенная надежность шифрования. |
Кроме того, ФБП-TCP/IP мост не
реагирует ни на какие запросы, кроме как от Клиента-FC и ни кому
сообщает о своем присутствии. Этим достигается дополнительная
конфиденциальность. Сторонний наблюдатель, скорее всего, даже не сможет
обнаружить наличие ФБП-IP моста и предположить, что по данному IP осуществляется
доступ к некоей информации.
Однако, ФБП-TCP/IP мост
регистрирует несанкционированные обращения. Если установлен флажок Log (см. далее), то
мост запишет в файл протокола сообщение о том, что с некоего IP производиться
сканирование обслуживаемого им порта (портов). Эту информацию из файла
протокола можно обрабатывать, выявляя наиболее активных «сканнеров» и
блокировать доступ от них путем соответствующей настройки стен безопасности (fire wall) и т.п.
Скриншоты ФБП-IP моста
На этом скриншоте ФБП-IP мост показан в
режиме обработки запросов. Все управляющие элементы не активны и не допускают
изменений параметров. Активной является только кнопка STOP
bridge. Этот режим включается автоматически при старте моста, если старт не
сопровождался какими-либо ошибками.
Здесь мост показан в режиме остановки
сервиса. В него мост переходит либо по нажатии кнопки STOP
bridge либо автоматически после старта, если стартовые проверки выявили какие-либо
ошибки. Обратите внимание, что кнопка STOP bridge превратилась в
кнопку RUN bridge.
В этом режиме активизированы элементы, позволяющие настроить работу моста.
Local Host
IP и
Для того, чтобы удалить не нужную
комбинацию IP:Port щелкните на ней мышью. Эта строчка окажется подсвеченной, а надпись на
кнопке Add заменится на Remove. Нажатие кнопки Remove приведет к
удалению пары IP:Port из списка.
Флажок Log предназначен
для включения или выключения режима ведения журнала моста. Если флажок установлен,
то мост ведет протокол своей работы в файле fwp_ip.log, располагаемом
в текущей рабочей директории.
¨ |
Следует
иметь ввиду, что файл fwp_ip.log остается открытым во время работы моста и закрывается только
по окончании сессии. Поэтому просмотр этого файла при работающем мосте может
привести к нежелательным последствиям. Всегда останавливайте мост кнопкой STOP
bridge перед
просмотром файла fwp_ip.log. |
Модификации ФБП-IP моста.
ФБП-IP мост выпускается в четырех модификациях:
Для пользователя эти модификации
различаются между собой только количеством разрешенных подключений (пар IP:Port) и количеством
обслуживаемых директорий обмена. Сразу следует пояснить, что количество
одновременно обслуживаемых клиентов не ограничено даже для модификации Mono.
Модификация ФБП-IP моста |
Область использования |
Количество обслуживаемых директорий обмена |
Количество подключений (пар IP:Port) |
Стоимость виртуальных
денежных единиц |
Mono |
|
1 |
1 |
10 |
Stereo |
|
2 |
2 |
20 |
Theatre |
|
6 |
6 |
60 |
Hosting |
|
Не ограничено |
32 |
100 |
Пояснения к таблице.
Количество обслуживаемых директорий обмена
Каждая модификация моста может обслуживать
указанное в таблице количество директорий обмена. Какие именно директории
обмена будут обслужены, а каким в обслуживании отказано ни где и ни как не
указывается. ФБП-IP мост придерживается следующей логики. Первое обращение
Клиента-FC, в котором указана директория обмена, обрабатывается, и директория обмена
запоминается. Далее, поведение моста зависит от модификации.
Если это модификация Mono, то все
последующие запросы с той же директории обмена будут обрабатываться, а запросы
с новыми директориями обмена получат отказ с сообщением об ошибке
E-(Bridge) Connection to box <box> rejected. Maximum 1 connections for
bridge Mono exceeded. |
Если это модификация Stereo, то запоминается первая и вторая, отличная от первой
директория обмена, а третья директория обмена, отличная от первой и второй
получит отказ в обслуживании и будет возвращено сообщение
E-(Bridge) Connection to box <box> rejected. Maximum 2 connections for bridge Stereo exceeded. |
Такое же поведение будет демонстрировать модификация Theatre, с тем
отличием, что она обслужит 6 разных директорий обмена, а седьмой, отличной от
первых 6-ти будет отказано в обслуживании с сообщением
E-(Bridge) Connection to box <box> rejected. Maximum 6 connections for bridge Theatre exceeded. |
Модификация Hosting обслуживает не ограниченное количество директорий обмена.
Количество подключений (пар IP:Port)
Например, модификация Stereo позволит указать в качестве IP адреса и порта
такие комбинации:
127.0.0.1:21
127.0.0.1:80
или
127.0.0.1:21
127.0.10.1:21
или
127.0.0.1:21
127.0.10.1:80
или подобные пары IP:Port.
Модификации Mono, Theatre и Hosting позволят задать соответственно 1, 6 и 32 подобных пар IP:Port.
ФБП-IP мост защищен от несанкционированного использования известным способом –
контролем некоторых уникальных аппаратных параметров. Набор этих параметров
получил название «Сигнатура компьютера». В настоящий момент не
зарегистрированная копия не позволяет работать.
Сигнатура компьютера имеет следующий вид:
1 |
2 |
3 |
4 |
5 |
[Hosting] |
[0:0:0] |
[0:0:0:0] |
[0:0:0] |
[0-0] |
Где “[]” определяют секции, «:» отделяют параметры внутри секций, а «-«
разделяют поля в параметрах.
1.
Версия ФБП-IP моста.
2.Уникальные
параметры системы
·
UUID
·
Серийный номер материнской платы
·
Номер части (part number) материнской платы
3.
Уникальные параметры процессора
·
Идентификатор
·
Уникальный идентификатор
4.
Параметры BIOS
·
Контрольная сумма
·
Серийный номер
5.
Параметры жесткого диска
·
Идентификатор тома
Более подробно о сигнатуре компьютера читайте в соответствующем разделе
описания Клиента-FC.
История версий
Версия 1.9.U.H
1.
Обнаружена и устранена серьезная ошибка, приводящая к
нестабильной работе моста. Под Windows 95/98/Me мост мог отказываться обслуживать подключения, а под Windows NT, 2000, XP мог
самопроизвольно прекращать работу. Эта ошибка проявлялось при многопоточной
работе, и была связана с некорректным обращением к ресурсам из нескольких нитей
одновременно. В связи с этим, до проведения интенсивного тестирования, временно
отключено протоколирование работы, а также отображение количества подключений и
количества открытых каналов.
Версия 1.8
1.
Введено криптографирование данных (ГОСТ 28147-89),
которыми мост обменивается с клиентом FC.
Версия 1.7.2 build Y
2.
Исправлена проблема «подвисания» нитей. Мост на каждый
запрос по TCP/IP заводит отдельную нить. В результате того, что Internet полон любителей
пошарить по открытым портам, посылая туда всякую чепуху, иногда возникала
ситуация, когда буфер оказывался не заполненным, или, даже, просто пустым. В
такой ситуации нить бесконечно ждала заполнения буфера, которого не
происходило. Теперь на формирование буфера отводится 60 секунд. Если за это
время буфер не наполняется корректным содержимым, соединение разрывается и нить
прекращается. Это, однако, не значит, что 60 секунд – максимальное время
поддержания связи одного соединения. 60 секунд – максимальное время ожидания
формирования корректного заголовка. Собственно данные могут подкачиваться и
более длительное время.
3.
Введены «компиляции» в обозначение версий моста.
Версия 1.7
1.
Сделан качественный шаг вперед по улучшению работы связки
Клиент-FC – Мост: введена компрессия передаваемых данных. Теперь перед передачей по
сетям TCP/IP данные предварительно компрессируются. Использован скоростной алгоритм
компрессии (скорость ~430 кб/сек на P266MMX), и довольно
высокой степенью компрессии. Тестовый пример из 37000 хоз. операций размером
файла в 7.4 Мбайт алгоритм ужал до 0.5 Мбайт, или в 14 раз!
2.
Алгоритм компрессии располагается во внешней динамической
библиотеке FCDLL.DLL, которая поставляется в дистрибутиве. Начиная с версии 1.7, Мост не будет
работать без этой библиотеки. Подробную спецификацию библиотеки FCDLL.DLL смотри в
посвященном ей разделе настоящего описания.
Версия 1.5
1.
Устранена трудно отлавливаемая ошибка, выражавшаяся в
том, что Клиент-FC неожиданно сообщал «Connection Closed
Gracefully». А дело было вот в чем. Мост, ожидая ответа сервера, сканирует каталог
обмена на предмет обнаружения файла *.OUT. Как только такой файл
появлялся, производилась попытка его открыть. Но если, к моменту открытия
Мостом, сервер еще не успевал его закрыть, то возникало исключение (exception), который не
правильно обрабатывался - приводил к сбросу соединения и, соответственно, к
недоумению Клиента-FC. В настоящей версии обработка этого исключения изменена.
При возникновении этого исключения Мост кладет в файл протокола запись «Access
interference to *.OUT» и продолжает ждать корректного закрытия фала ответа
сервера. Любопытно, что на Windows98 эта ошибка никогда себя не проявляла, а выплыла при
тестировании под NT и XP. Спасибо Дмитрию Макарову и Дмитрию Арбузову за помощь в
обнаружении и устранении ошибки.
2.
Исправлен счетчик активных подключений (Connections). Раньше он мог
(и часто это делал) считать в минус.
3.
Исправлена мелкая ошибочка – добавлен пробел между
словами «Waiting» и «for» в сообщениях файла протокола.
Версия 1.4.1 – Внесены
мелкие дополнения. На панели регистрации ключа появилась кнопка «Copy
hardware signature», переносящая сигнатуру компьютера в буфер обмена.
Версия 1.4 – первая
коммерческая версия
Регистрация ФБП-IP моста
Для регистрации ФБП-IP моста переведите через РП
«Хакес Дизайн» необходимую сумму в VD пользователю sekretev и сообщите об
этом по электронной почте на адрес Vladimir@imte.ca
. Принимаются
и иные виды платежа. Подробнее см раздел Оплата и регистрация.
[EOF]