CommuniGate Pro
Версия 6.4
 

Модуль TFTP

В Модуле TFTP CommuniGate Pro реализован TFTP сервер для сетей UDP/IP.

Протокол TFTP позволяет клиентскому приложению TFTP получать файлы с компьютера, на котором установлен Сервер. TFTP клиенты CommuniGate Pro могут получать и записывать файлы в Хранилище файлов Пользователя.




TFTP (Примитивный Протокол Передачи Файлов)

Примитивный Протокол Передачи Файлов позволяет работать с файлам, хранящимися на сервере, непосредственно с компьютеров клиентов. Компьютер, на котором запущено TFTP клиентское приложение, посылает UDP запросы на компьютер сервера. Эти пакеты содержат имя требуемого файла и режим передачи.
Обратно компьютер Сервера посылает UDP пакет с блоком данных. Если размер файл больше, чем размер одного блока, то компьютер клиента посылает пакет с ACK (подтверждение), и в ответ Сервер отправляет следующий блок данных.
При обработке операции записи в файл сервер посылает UDP пакет ACK, клиент отправляет первый блок данных, сервер вновь отвечает с пакетом ACK, а клиент отправляет следующий блок данных.

Модуль TFTP CommuniGate Pro работает в соответствии с соответствующими публичными стандартами Интернет (RFC).


Настройка Модуля TFTP

Чтобы настроить параметры Модуля TFTP, используйте Веб Интерфейс Администратора. Откройте страницу Доступ в разделе Установки, затем откройте страницу TFTP:

Обработка
Уровень Журнала: Приёмник
Хранилище по умолчанию: Пробовать Подкаталог IP-адреса
Создавать Сессии на Контроллере
Уровень Журнала
Используйте эту настройку, чтобы указать, какую информацию Модуль TFTP должен сохранять в Журнале работы Сервера. Обычно используется уровень Основное (отчёты об изменении пароля) или уровень Проблемы (не фатальные ошибки). В случае, если в работе TFTP модуля возникают проблемы, возможно, целесообразным будет увеличить детализацию до уровня Подробности или Всё: в этом случае в Журнал работы Сервера будет записываться подробная информация о работе модуля на уровне протокола или на уровне соединения.
Записи, помещённые Модулем TFTP в Журнал работы Сервера, имеют пометку TFTP.
Приёмник
Откройте по этой ссылке страницу Приёмника UDP и укажите номер порта, Локальный Сетевой Адрес для TFTP сервиса, и ограничения на доступ к этому порту. Если номер порта имеет значение 0, TFTP сервер выключен.
По умолчанию TFTP клиенты отправляют запросы на UDP порт номер 69.
Если на компьютере, на котором работает Сервер, уже запущен какой-либо TFTP Сервер, то вы можете указать нестандартный номер порта и перенастроить клиенты TFTP на использование этого номера порта.
Хранилище по умолчанию
Так как Модуль TFTP не производит аутентификацию пользователей, то необходимо указать Пользователя, чьё Хранилище Файлов будет использоваться по умолчанию.
Задайте в этом поле имя существующего Пользователя.
Если это Пользователь не из Главного Домена, то укажите его полное имя в виде accountName@domainName.
Вы можете указать поддиректорию в Хранилище Файлов Пользователя, добавив имя поддиректории, отделённое символом косая черта (/): accountName/directoryName или accountName@domainName/directoryName
Пробовать Подкаталог IP-адреса
Если эта опция включена, то модуль может добавлять клиентский IP адрес к указанному имени файла, что позволяет различным одинаково настроенным клиентам загружать разные файлы (смотрите ниже).
Создавать Сессии на Контроллере
Эта опция доступна только в Динамическом Кластере.
Если эта опция включена, то Сервер отправляет все запросы TFTP на Контроллер Кластера (за исключением случая, когда Сервер сам является активным Контроллером), используя протокол внутрикластерного Интерфейса Командной Строки CLI. Затем он ретранслирует ответы Контроллера клиенту.
Эта возможность необходима если вы используете Балансировщик Нагрузки, который не сохраняет никакие "сессии" или "состояния" UDP запросов, и последовательные запросы из одной TFTP сессии могут быть направлены на разные члены Кластера.

Доступ к Хранилищу файлов Пользователя

Имя файла, указанное в пакете с запросом к TFTP, интерпретируется как имя файла из Хранилища Пользователя, используемого по умолчанию.

Если указанное имя начинается с символа косой черты (/) или с символа тильда (~), то в этом имени должен содержаться как минимум еще один (кроме первого) символ косой черты. Часть строки между первым специальным символом и этим символом косой черты интерпретируется как Имя Пользователя, а часть строки после этого символа косой черты - как имя файла, которое необходимо получить из Хранилища Файлов этого Пользователя.

Если указанное имя начинается с символа косой черты (/), но оно не содержит никаких других символов косой черты, то первый символ косой черты удаляется.

Модуль TFTP пытается получить указанный файл от имени Пользователя Главного Домена tftpuser. Это позволяет читать файлы из Файлового Хранилища любого Пользователя за исключением содержимого поддиректорий private.
Чтобы разрешить клиентам TFTP доступ к директориям private или разрешить клиентам TFTP сохранять там файлы, измените Права Доступа к этой директории, разрешая пользователю tftpuser чтение и/или запись.

Примеры:

Параметр имяфайла в сессии TFTPЗапрашиваемый файл
file1.datfile1.dat в Хранилище Файлов по Умолчанию
/file1.datfile1.dat в Хранилище Файлов по Умолчанию
dirA/file1.datfile1.dat в поддиректории dirA в Хранилище Файлов по Умолчанию
/john/file1.dat
~john/file1.dat
file1.dat в Хранилище Файлов Пользователя john
/john/dirB/file1.dat
~john/dirB/file1.dat
file1.dat в поддиректории dirB Хранилища Файлов Пользователя john
/[email protected]/dirB/file1.dat
[email protected]/dirB/file1.dat
file1.dat в поддиректории dirB Хранилища Файлов Пользователя [email protected]

Если опция Пробовать Подкаталог IP-адреса включена и указанное имя файла не начинается с символа косой черты, то модуль добавляет текстовое представление IP адреса клиента перед именем файла. Если файла с таким именем не существует, то добавленный префикс удаляется и модуль заново пытается получить файл с таким именем.
Эта возможность позволяет вам создавать поддиректории внутри директории по Умолчанию в Хранилище Файлов, называя их по имени IP адреса клиента.

Примеры:

Параметр имяфайла в сессии TFTPIP адрес КлиентаЗапрашиваемый файл
file1.dat10.0.1.010.0.1.0/file1.dat (если отсутствует, то file1.dat) в Хранилище Файлов по Умолчанию
/file1.dat10.0.1.010.0.1.0/file1.dat (если отсутствует, то file1.dat) в Хранилище Файлов по Умолчанию
dirA/file1.dat10.0.1.010.0.1.0/file1.dat (если отсутствует, то file1.dat) в Хранилище Файлов по Умолчанию
/john/file1.dat
~john/file1.dat
10.0.1.0file1.dat в Хранилище Файлов Пользователя john

Руководство CommuniGate Pro. Copyright © 2020-2023, АО СталкерСофт