Tftp сервер на windows server 2012 r2

Как запустить службу TFTP сервера при помощи встроенных средств Windows Server

Линейка продуктов Windows Server с незапамятных времен поддерживает возможность организации TFTP сервера. Хотя выделенная роль и служба TFTP сервера отсутствует (не стоит искать ее в разделе FTP сервера), этот функционал, как и в Windows Server 2003, является частью Windows Deployments Services (WDS). TFTP сервис функционирует внутри процесса svchost.exe службы WDS.

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

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

Чтобы установить службу TFTP на Windows Server 2012 R2, откройте консоль Server Manager и с помощью мастера Add Roles and Features Wiazrd выберите роль Windows Deployment Services (Службы развертывания Windows).

Установка роли Windows Deployment ServicesНа следующем шаге мастера в компонентах роли WDS выбираем только Transport Server (Транспортный сервер), снимите галочку с Deployment Server.

Служба Transport Server (Транспортный сервер)После завершения установки роли необходимо создать каталог, который будет корневым каталогом для TFTP сервера, к примеру C:tftp.

Затем с помощью редактора реестра в ветке HKLMSYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP создадим новый строковый (String) параметр с именем RootFolder, и значением, содержащим путь к корневому каталогу TFTP, созданному ранее.

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

Запустим службу WDS с помощью команды

WDSUTIL /Start-TransportServer

Совет. Для автоматического запуска службы нужно изменить тип загрузки службы Windows Deployment Services на Auto с помощью оснастки services.msc или из командой строки PowerShell с помощью командлета Set-Service:

set-service WDSServer -StartupType Automatic

В брандмауэре Windows должно появится правило, разрешающее входящий трафик на порт UDP 69 (отвечает служба с произвольного номера порта выше 1023). Некоторые антивирусу могут блокировать порт 69 (в этом был замечен McAffee Enterprise)

На этом настройка TFTP сервера завершена.

Чтобы протестировать работу TFTP сервера, нам понадобится клиент TFTP. Установить его можно с помощью Server Manager, выбрав компонент TFTP Client.

Установка TFTP клиентаПопытаемся локально обратиться к развернутому TFTP серверу и попробовать скачать файл test.zip

Скачать файл можно при помощи команды

tftp –i localhost GET tmptest.zip C:temptest.zip

Результатом выполнения такой команды будет сохранённый файл c:temptest.zip, скачанный с локального сервера.

Это все в теории, а на практике после выполнения последней команды у меня появилась ошибка:

Connect request failed

tftp Connect request failedПри запуске или перезапуске службы Windows Deployment Services Server в журнале Application появляется событие от службы WDSTFTP с EventID 259 и текстом:

The root folder for the Windows Deployment TFTP server is not configured.Error Information: 0x2

Чтобы заставить TFTP сервер работать, мне пришлось установить компонент роли WDS -> Deployment Service и сразу же удалить его. После его установки в ветке WDSTFTP нужно изменить значение ключа RootFolder с C:RemoteInstall на c:tftp. Пытаемся еще раз скачать файл:

PS C:temp> tftp -i localhost get boottest.zip

Получилось!

Передача файла по протоколу tftpИтак, мы рассмотрели как быстро без использования сторонних средств развернуть TFTP сервер на Windows Server 2012. Функционал такого сервера будет довольно урезанным, поэтому для более сложных инсталляций, предпочтительнее использовать альтернативную реализацию TFTP сервера, к примеру, tftpd32.

All Windows Server version support the ability to  run built-in TFTP server. Though there is no dedicated role or service of the TFTP server (don’t look for it in the FTP section of your IIS server), this feature, like in Windows Server 2003, is a part of Windows Deployments Services (WDS). TFTP service operates inside  WDS process svchost.exe.

TFTP (Trivial File Transfer Protocol) is a simplified file transfer protocol offering an easy way to download and upload files. As a rule, TFTP is used in PXE boot systems (network boot, diskless workstations, etc.), import/export network equipment configurations and some other specific tasks. This protocol has no means of security, authentication or management. Its main advantage is easy client-side implementation and high performance when large files are transferred. The protocol uses UDP port 69.

Note. Microsoft TFTP server features are rather crippled, but enough to use PXE booting. In particular, clients can only read data from such TFTP server, but writing is not available.

To install the TFTP service on Windows Server 2012 R2, start Server Manager and select Windows Deployment Services role using Add Roles and Features Wiazrd.

Install Windows Deployment Services on Windows 2012 R2

In the next step, select only Transport Server in the WDS role components and uncheck Deployment Server.

Transport Server

After the role is installed, create a directory, which is going to be a root directory of the TFTP server, for example, C:tftp.

Then using the Registry Editor in HKLMSYSTEMCurrentControlSetservicesWDSServerProvidersWDSTFTP create a new string parameter with the name RootFolder and value containing the path to the root directory created earlier.

WDSTFTP rootfolder

Pay attention to the value of ReadFilter parameter. By default, it allows downloading files only from boot and tmp directories. If you need an opportunity to download files from the root or other folders, change the ReadFilter value to *.

Start WDS with the following command:

WDSUTIL /Start-TransportServer

Tip. To automatically start the service, change the startup type of Windows Deployment Services  to Auto using services.msc or the command prompt:

set-service WDSServer -StartupType Automatic

In Windows Firewall, a rule will appear, which allows the incoming traffic to UDP Port 69 (the service responds from any port higher than 1023). Some antiviruses can block Port 69 (McAffee Enterprise does so).

So you have configured your TFTP server.

To test the TFTP server, you’ll need the TFTP client. It can be installed using Server Manager, in which you select TFTP Client.

install tftp client

Let’s try to connect to the deployed TFTP server locally and download test.zip file.

You can download the file using this command:

tftp –i localhost GET tmptest.zip C:temptest.zip

In theory, it should, but in practice I got the following error after running the last command:

Connect request failed

tftp –i localhost GET

When starting or restarting Windows Deployment Services Server, the following event from WDSTFTP service and EventID 259 appeared in the Application log:

The root folder for the Windows Deployment TFTP server is not configured. Error Information: 0x2

To make the TFTP server work, I had to install the component of the role WDS -> Deployment Service and delete it at once. After it had been installed, I changed the RootFolder value from C:RemoteInstall to c:tftp. Then I tried to download the file again.

PS C:temp> tftp -i localhost get boottest.zip

Success!

successfull tftp transfer

We have considered how to deploy a TFTP server in Windows Server 2012 easily with no third-party tools. The features of this kind of a server will be crippled, so in more complicated installations the alternative TFTP server implementations are preferable, e. g., tftpd32.

С незапамятных времен линейка продуктов Windows Server поддерживает возможность организации сервера TFTP. Хотя нет выделенной роли и службы сервера TFTP (не ищите ее в разделе сервера FTP), эта функция, как и в Windows Server 2003, является частью Windows Deployments Services (WDS). Служба TFTP запускается в процессе svchost.exe WDS.

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

Примечание. Сервер Microsoft TFTP имеет несколько ограниченную функциональность – минимум, необходимый для работы PXE-загрузки. В частности, клиенты могут только читать данные с такого TFTP-сервера, и операции записи недоступны.

Чтобы установить службу TFTP в Windows Server 2012 R2, откройте консоль Server Manager и используйте Добавить роли и компоненты Wiazrd, чтобы выбрать роль служб развертывания Windows).

Установка роли служб развертывания Windows

На следующем шаге мастера в компонентах роли WDS выберите «Только транспортный сервер», снимите флажок «Сервер распространения.

Сервис транспортного сервера

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

Затем с помощью редактора реестра в ветви HKLM SYSTEM CurrentControlSet services WDSServer Providers WDSTFTP создайте новый строковый параметр с именем RootFolder и значение, содержащее путь к корневому каталогу TFTP, созданному ранее.

tftp RootFolder

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

Запускаем службу WDS с помощью команды

WDSUTIL /Start-TransportServer

Совет. Для автоматического запуска службы необходимо изменить тип запуска служб развертывания Windows на Авто с помощью оснастки services.msc или из командной строки PowerShell с помощью командлета Set-Service:

set-service WDSServer -StartupType Automatic

В брандмауэре Windows должно появиться правило, разрешающее входящий трафик на UDP-порт 69 (служба отвечает с произвольного номера порта больше 1023). Некоторые антивирусы могут блокировать порт 69 (это отметили в McAffee Enterprise)

На этом настройка сервера TFTP завершена.

Для проверки работы TFTP-сервера нам понадобится TFTP-клиент. Вы можете установить его с помощью диспетчера сервера, выбрав компонент TFTP Client.

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

Попробуем зайти на распределенный TFTP-сервер локально и попробуем скачать файл test.zip

Вы можете скачать файл с помощью команды

tftp –i localhost GET tmptest.zip C:temptest.zip

Результатом выполнения этой команды будет сохраненный файл c: temp test.zip, загруженный с локального сервера.

Это все в теории, но на практике после выполнения последней команды я получил ошибку:

Запрос на подключение не удался

tftp Запрос на подключение не удался

Когда служба сервера служб развертывания Windows запускается или перезапускается, в журнале приложения отображается событие из службы WDSTFTP с EventID 259 и текстом:

Корневая папка для TFTP-сервера распространения Windows не настроена. Информация об ошибке: 0x2

Чтобы сервер TFTP работал, мне пришлось установить компонент роли WDS -> Служба развертывания и немедленно удалить его. После установки в ветке WDSTFTP вам необходимо изменить значение ключа RootFolder с C: RemoteInstall на c: tftp. Попробуем скачать файл еще раз:

PS C:temp> tftp -i localhost get boottest.zip

Произошло!

Передача файлов по протоколу tftp

Итак, мы рассмотрели, как быстро развернуть TFTP-сервер на Windows Server 2012 без использования сторонних инструментов. Функциональность такого сервера будет весьма ограничена, поэтому для более сложных установок лучше использовать альтернативную реализацию TFTP. Сервер, например tftpd32.

Источник изображения: winitpro.ru

This post will instruct how to make TFTP and SMTP Servers in Windows 2012.

  • Click the Server Manager button on the bottom left of the Windows task bar
  • On the top right menu of Server Manager, click Manage and then Add Roles and Features, which opens the Add Roles and Features Wizard.
  • Read the initial information page in the Add Roles and Features Wizard and click Next.
  • On the Installation Type page select “Role-based or feature-based installation” then click Next.
  • On the Server Selection page select “Select a server from the server pool”, then select your server from the list (there should be only one), then click next.
  • On the Server Roles page, go ahead and click Next, there is no need to select anything here at this point.
  • On the Select Features page, scroll down and select SMTP Server and TFTP Client then click Next.
  • On the Confirmation page look in the right box to make sure what you selected is there, then click Install at the bottom of the page (when installed you may have to restart).

While we installed an SMTP server, we still need to install a TFTP client. Windows Server 2012 does not include a TFTP server so we will need third party software. For this we will use WinAgents TFTP server. The following steps for installing WinAgents TFTP server are:

  • Download WinAgents TFTP Server at http://www.winagents.com/en/downloads/download-tftp-server.php.
  • When prompted at the bottom of Internet Explorer click Run, then Run again for the second popup for trusted verification, then click Yes when the User Account Control window pops up.
  • When the WinAgents installer pops up, read the first screen then click Next.

  • On the License Agreement screen select “I accept the license agreement” at the bottom then click Next.
  • At the Select Install Type Screen select Complete at the top then click Next.
  • On the Windows Firewall screen read the information then click Next.
  • On the Ready To Install Application screen read the information then click Next.
  • WinAgents will now be installed and when prompted click Finish to close the installation.
  • To run the application, go to the Start Menu by moving your mouse to the bottom right of the desktop then click Search.
  • In the search box at the top right, type TFTP and then click TFTP Server Manager that will pop up on the top left of the screen, then click  Yes when the User Account Control window pops up.
  • When the application launches, look over the default settings on the Connect to TFTP Server screen then click OK at the bottom.
    • Click Yes at the next prompt to start the TFTP service then you are finished

    This is end of the post telling how to setup SMTP and TFTP servers. The next post will be about setting up blogging software.

This entry was posted in Uncategorized. Bookmark the permalink.

Microsoft has not made it easy to figure out how to build a PXE Server on Windows 2012 R2, Here’s how. Below are the steps to enable Windows Server 2012 R2 PXE/TFTP Server. First you will need the install the WDS Server Role. Make sure only the “Transport Server” Role service is checked. See images below.


Next, import attached Registry file which will point to the boot files and allow booting the PXE images. The important key in the registry file is “RootFolder”, this is the folder on your server that will hold all the boot images. Please ensure you edit as necessary. Once the registry is edited and imported you will need to ensure the WDSServer service has the Startup Type set to  automatic to ensure the service starts on boot. Once that is complete, the last step is to reboot the server. Now that the PXE Server Role is in place, head over to PXE Structure on Windows 2012 R2 to see how to structure your PXE boot files.

download-icon Registry File Download

Did you find this article useful? Why not share it with your friends?

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

TFTP сервер на Windows 10

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

Как установить TFTP-сервер на Windows

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

Кроме загрузки ОС на рабочие станции, он широко используется для загрузки и модификации конфигураций множества встроенных устройств, являющихся частью домашних сетей и системы «Умный дом».

Протоколы TFTP сервера

В частности, этот протокол нередко можно встретить на маршрутизаторах, в мобильных телефонах, в популярных медиа-стримерах. Он используется для передачи единичных файлов на относительно небольшие расстояния. А вот в глобальных сетях, том же интернете, использование TFTP недопустимо из-за низкой защищённости. Там царствует FTP, а если требуются повышенные требования к безопасности, то SFTP.

Если при помощи FTP, требующего ввода логина/пароля, можно осуществлять целый спектр операций с файлами (передача в обоих направлениях, переименование, удаление, просмотр), то в TFTP вы можете файлы только скачивать, и только по одному. Зато здесь используется стек UDP, отличающийся простотой кода, в отличие от распространённого, но достаточно сложного TCP/IP.

Работа TFTP сервера

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

Итак, если суммировать, для чего нужен клиент TFTP, то можно утверждать, что главное преимущество протокола – простота реализации его клиентской части.

ВНИМАНИЕ. Протокол не предусматривает наличие учётных записей пользователей, поэтому всегда существует риск подключения к TFTP серверу или клиенту других лиц, в том числе и со злонамеренными целями. Поэтому использовать его нужно, если сеть защищена другим способом, например, файерволом.

Хотя TFTP-сервер чаще всего можно встретить в ОС Linux, существует немало решений, предназначенных для Windows и даже для macOS (TFTPD32/64, haneWIN, WhatsUp, WinAGents и др.).

Скачивание TFTPD64

Рассмотрим процедуру установки TFTP-сервера на примере весьма популярной утилиты TFTPD32, созданной на условиях открытого исходного кода. Кроме собственно TFTP-сервера, она включает и другие серверные протоколы (DHCP, DNS, SNTP) и позволяет управлять пулом IP-адресов. Разумеется, ситуации, когда требуется наличие всех перечисленных функций, сложно придумать даже теоретически, но дополнение TFTP одной из них вполне может оказаться полезным.

При скачивании программы можно выбрать portable-версию, если не хотите возиться с инсталляцией.

Лицензионное соглашение TFTPD64

При запуске утилиты нужно будет указать пару параметров:

  • каталог, куда будут скачиваться файлы (дефолтный путь – место установки программы);
  • IP-адрес сервера, на который нужно будет обращаться клиентам.

Установка компонентов TFTPD64

Для выполнения простейших операций этого будет достаточно. Но в ряде случаев потребуется дополнительная настройка программы.

Путь установки TFTPD64

Если требуется использование DHCP сервера, например, для выдачи динамических айпишников в пределах малой сети, необходимо зайти в раздел Setting и выбрать вкладку DHCP.

Переход во вкладку настроек TFTPD64

Здесь нам нужно указать:

  • исходный IP адрес (получаемый на маршрутизаторе);
  • диапазон выдаваемых клиентам адресов;
  • указание шлюза сети не является обязательным;
  • четвёртый параметр – маска подсети.

Подтверждаем внесение изменений нажатием ОК.

Вкладка «DHCP» в программе TFTPD64

Поскольку в основе TFTP лежит использование транспортного протокола нижнего уровня UDP, в котором установление соединения не предусмотрено, задача эмуляции соединения становится прерогативой внешнего протокола, в нашем случае – TFTP. Проблема в том, что межсетевые экраны в большинстве случаев не умеют идентифицировать соединения, инициированные протоколом TFTP, так что этот тип трафика он пропускать не в состоянии.

Подтверждение изменения настроек в TFTPD64

Но если TFTP-сервер располагается в пределах защищённой сети, а клиентские устройства – перед файерволом, то проблем быть не должно, но потребуется внесение изменений в настройки файервола:

  • нужно добавить правило транспортировки пакетов данных из внешнего айпишника на адрес сервера TFTP, указанный в конфигурации программы (через порт 69 TFTP сервера);
  • разрешить перенаправление трафика из внутренней сети на внешний IP-адрес.

Переход в Брандмауэр Защитника Windows

Раздел разрешения взаимодействия с приложениями и компонентами

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

Кнопка «Изменить параметры»

Кнопка «Разрешить другое приложение»

Проблема в том, что не все сетевые роутеры/маршрутизаторы позволяют выполнить такие настройки. Но многие из них оснащены функцией просмотра трафика, направляемого с использованием протокола TFTP, при этом они в состоянии динамически изменять таблицу трансляции, позволяя пропускать пакеты извне, идущие в локальную сеть. Так, чтобы настроить файервол маршрутизатора Cisco PIX, необходимо выполнить команду fixup protocol tftp.

Кнопка «Обзор» в окне «Добавление приложения»

Выбор приложения TFTPD64

Существует альтернативный способ решения проблемы: можно обязать сервер TFTP задействовать порт 69 в двух направлениях, не только для приема запросов, идущих от клиентов, но и для пересылки им ответов. Тогда файервол сможет корректно обрабатывать оба типа запросов, руководствуясь записями, имеющимися в таблице трансляций.

Кнопка «Добавить» в окне «Добавление приложения»

Завершение добавления приложения TFTPD64 в исключения

Так, чтобы настроить WinAGents TFTP Server подобным образом, необходимо в настройках программы установить галочку напротив опции Enable firewall support.

Скачивание WinAGents TFTP Server

Проверка работоспособности TFTP сервера

Чтобы проверить, работает ли TFTP сервер, необходимо просто выполнить копирование файла с сервера на клиентское оборудование.

Для этого нужно запустить консоль на клиенте, а затем выполнить команду tftp 192.168.1.35 GET <имя копируемого файла>. Если всё настроено правильно, после паузы, во время которой и происходит передача данных, указанный файл должен появиться на клиентском оборудовании.

Команда для передачи файла

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

  • cd <путь назначения>;
  • tftp168.1.35 GET <имя копируемого файла>.

В этом случае копирование будет производиться в указанную вами директорию.

В утилите TFTPD32 копирование будет выглядеть несколько иначе. На клиентской машине следует запустить приложение, открыть в нём вкладку TFTPClient, а затем указать IP-адрес сервера, а затем имя файла, который мы намереваемся скачать. Сохранить его можно и под другим именем, указав его в соответствующей строке настроек. Завершив все приготовления, жмём кнопку GET и дожидаемся результатов операции.

Копирование файлов в утилите TFTPD64

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

Понравилась статья? Поделить с друзьями:
  • Tftp сервер windows 10 как пользоваться
  • Tftp сервер windows 10 64 bit скачать
  • The command failed windows reported the error hammer
  • The client agent has encountered an error cisco windows 10
  • The chronicles of riddick efbb не запускается windows 10