Установка и настройка TFTP сервера в Windows

Протокол TFTP (Trivial File Transfer Protocol) упрощенный протокол передачи файлов, обеспечивающей простую возможность скачивания и загрузки. Обычно протокол TFTP используется для загрузки по PXE (сетевая загрузка, бездисковые рабочие станции, установка ОС по сети, и пр.), загрузки/обновления конфигурации/прошивок сетевого оборудования и ряда других специфичных задач. В проколе отсутствуют средства защиты, аутентификации и управления. Основное его преимущество – простота реализации клиентской части и высокая производительность при передаче файлов большого объема. Протокол работает по порту 69 UDP.

Запуск TFTP сервера в Windows

Чаще всего для быстрого запуска TFTP сервера в Windows используют бесплатный opensource Tftpd64 ( tftpd32) . Вы можете скачать portable или установочный пакет tftpd64 здесь.

  1. Запустите исполняемый файл tftpd64.exe;
  2. Интерфейс tftpd64 состоит из нескольких вкладок. На вкладке Tftp Server нажмите кнопку Settings и выберите каталог, который вы хотите опубликовать; запуск сервера tftpd64 в windows
  3. Выберите TFTP Security = None
  4. После того, как вы изменили настройки TFTP, нужно перезапустить программу.
  5. Откройте в Windows Firewall порт 69/UDP для входящего TFTP трафика. Можно создать разрешающее правило в файерволе Windows с помощью PowerShell : N ew-NetFirewallRule -DisplayName 'TFTP-UDP-In'  -Direction Inbound -Action Allow -Protocol UDP -LocalPort 69
  6. Теперь вы можете подключиться к tftp, чтобы получить или загрузить файл.

Программу tftpd64 можно использовать в качестве TFTP клиента. Перейдите на вкладку Tftp Client , укажите IP адрес TFTP сервера и порт подключения (69 по умолчанию).

Теперь вы можете скачать (Get) или загрузить (Put) файлы на указанный tftp сервер.

tftpd клиент скачать или загрузить файл

На вкладке Log viewer можно посмотреть логи подключений к TFTP.

Установка клиента TFTP в Windows

По умолчанию в Windows не установлен клиент TFTP. Вы можете установить в Windows 10/11 его командой:

Enable-WindowsOptionalFeature –FeatureName TFTP -Online

Установка tftp клиента в windows

В Windows Server для установки клиента TFTP используется другая команда:

Install-WindowsFeature TFTP-Client

Теперь вы можете использовать утилиту tftp.exe для скачки и загрузки файлов по TFTP.

  • Передать файл на TFTP сервер: tftp 192.168.1.100 PUT имя_файла.txt
  • Скачать файл с TFTP: tftp 168.1.100 GET имя_файла.txt

Установка встроенного TFTP сервера в Windows Server

В Windows Server доступен встроенный TFTP сервер, который входит в состав роли WDS и используется для PXE загрузки и установки Windows по сети . Чтобы установить службу TFTP, откройте консоль Server Manager -> Add Roles and Features Wizard -> выберите роль Windows Deployment Services (Службы развертывания Windows).

Установка роли wds в windows server

В компонентах роли WDS выберите только Transport Server ( Транспортный сервер) .

Установить транспортный сервис WDS с tftp службой

После завершения установки создайте каталог, который будет корневым каталогом для TFTP сервера. Например, C:tftp .

Укажите путь к корневому каталогу TFTP в строковом REG_SZ параметре RootFolder в разделе реестра HKLM SYSTEM CurrentControlSet services WDSServer Providers WDSTFTP

Настройки tftp сервера windows в реестре

В параметре ReadFilter указан список каталогов, из которых разрешена загрузка файлов. По умолчанию загрузка возможна только из каталогов boot и tmp . Если вы используете другую структуру каталогов, нужно добавить разрешенные каталоги в параметр ReadFilter или указать тут * .

Запустите службу WDSServer:

Get-Service WDSServer| Start-Service

Включить автоматический запуск службы с помощью Set-Service :

set-service WDSServer -StartupType Automatic

Проверьте, что служба запущена и ее процесс ожидает подключения на порту UDP 69:

Get-Process -Id (Get-NetUDPEndpoint -LocalPort 69).OwningProcess

В Windows Firewall доступ к UDP порту 69 отрывает правило “ Windows Deployment Services (UDP-In) ”. Проверьте, что правило брандмауэра включено:

(Get-NetFirewallRule -displayname 'Windows Deployment Services (UDP-In)').enabled

Попробуйте скачать файл с TFTP сервера с помощью встроенного клиента tftp.exe:

tftp -i 192.168.158.10 get test.zip

tftp.exe скачать файл с сервера из командной строки

Основной недостаток встроенного TFTP сервера в Windows Server – он не позволяет открыть папку для записи. Это означает, что клиенты могут только скачивать файлы с такого TFTP сервера, но не загружать.

EnglishRussianUkrainian