Содержание
Часто в работе системного администратора нужно собрать системные протоколы с мини-ATC, собрать статистику с маршрутизаторов, коммутаторов и межсетевых экранов, загрузить и обновить прошивку на сетевом оборудование загрузить бездисковую рабочих станций для этого всего подойдёт TFTPсервер.
Как можно прочитать на Wikipedia, основное назначение TFTP сервера — обеспечение простоты реализации клиента и сервера, а также TFTP сервер, в отличие от FTP, не содержит возможностей аутентификации и основан на протоколе UDP.
Установка TFTP сервера на Windows:
- Скачиваем дистрибутив tftp сервера.
- Установка tftp сервера проходить крайне просто:
- извлеките из архива установочный файл;
- запустите установщик tftp сервера;
Нажмите на кнопку [Next >], согласитесь с лицензионным соглашением и нажмите [Next >], выберете путь установки исполняемых файлов или оставьте по умолчанию после чего нажмите на [Next >] и в появившемся окне нажмите [Install], после успешной установки нажмите финиш.
- Установка Tftp сервера окончена.
Настройка TFTP сервера на Windows:
1. Настройке корневой каталог Tftp сервера для обмена информацией :
- нажмите на кнопку ;
- выберите каталог для обмена информацией и нажмите «ОК»;
2. Настройте IP адрес и порт Tftp сервера, по умолчанию автоматически подставляется Ваш основной IP адрес и 69 порт.
3. Нажмите на кнопку «Старт». При старте Tftp сервера в окне протоколов работы программного обеспечения появится запись » дата и время | Сервер запущен [ 192.168.56.1 : 69 ] «.
4. Для остановки работы Tftp сервера нажмите кнопку «Стоп».
Проверка работы TFTP сервера на Windows:
- Установите и настройте клиентский модуль TFTP сервера на Windows.
- Для того, чтобы передать файл необходимо открыть cmd.exe и выполнить команду:
tftp 192.168.56.1 GET имя_файла.txt
Для того, чтобы получить файл с сервера, есть команда:
tftp 192.168.56.1 PUT имя_файла.txt
Как поднять tftp-сервер на Windows 7 и как включить службу Клиент TFTP
TFTP это? TFTP (англ. Trivial File Transfer Protocol — простой протокол передачи файлов) используется главным образом для первоначальной загрузки без дисковых рабочих станций. TFTP, в отличие от FTP, не содержит возможностей аутентификации (хотя возможна фильтрация по IP-адресу) и основан на транспортном протоколе UDP.
Применение Основное назначение TFTP — обеспечение простоты реализации клиента. В связи с этим он используется для загрузки бездисковых рабочих станций, загрузки обновлений и конфигураций в «умные» сетевые устройства, записи статистики с мини-АТС (CDR) и аппаратных маршрутизаторов/файрволов.Источник
Как поднять TFTP-сервер Качаем тот вариант, что нам нужен здесь В качестве примера был выбран tftpd32 standard edition (zip). Распаковываем/устанавливаем и запускаем с настройками:
<center></center> Смотрим чтобы антивирусы/брандмауэры не мешали и пробуем закачать или скачать, например, файлы конфига. ip-адрес компьютера = ip-адрес tftp-сервера. Примеры команды по передаче файлов tftp 192.168.1.2 GET file.txt tftp 192.168.1.2 PUT file.txt
Как включить клиента TFTP Включение службы TFTP. Переходим в Панель управления:
<center></center> Переходим в включение или отключение компонентов Windows
<center></center> Переходим в Включение или отключение компонентов Windows
<center></center>Ставим галочку Клиент TFTP, нажимаем ОК и ждем пока все установится и запустится.
Category: Windows
Метки: tftp, windows
Всем доброго дня, сегодня мы с вами попробуем попрактиковаться в использование протокола TFTP. Для данной практики мы будем использовать 3 виртуальные машины, виртуально находящиеся в одной подсети. В моем случае это будут две машины, работающие под управлением WindowsXP, и одна виртуальная машина с установленным на нее Debian 6.0.7. На одну из виртуальных машин с WindowsXP (виртуальная машина 1)мы установим популярный в определенных кругах Tftpd32, включающий в свой состав TFTPсервер и TFTPклиент. На второй виртуальной машине с XPмы попрактикуемся в использование штатного клиента TFTPвстроенного в Windows. Ну а на машине с Debian (виртуальная машина 3) мы познакомимся с азами TFTPв Linux. И так если вам все это интересно, то приступаем.Для начала сконфигурируем наши виртуальные машины. На первую виртуальную машину мы установим Tftpd32. Для этого скачайте его дистрибутив по ссылке, и произведите его установку. Думаю при этом у вас не должно возникнуть каких либо проблем. Далее в корне диска Cсоздаем папку и помещаем в нее несколько файлов. В моем случае папка называется Publicи в ней находятся файлы 1.bmpи 2.bmp. После этого запускаем Tftpd32 и нажав на кнопку Browseвыбираем папку, файлы из которой мы будем раздавать при помощи TFTP, в моем случае это папка C:Public. В поле ServerInterfaceвыбираем сетевой интерфейс, на котором будет функционировать TFTPсервер, если на вашей виртуальной машине он всего один, то ничего не меняем. Про себя отмечаем что IPадрес первой виртуальной машины 192.168.1.41.
tftpd 32 сконфигурирован на раздачу файлов из папки Public по протоколу TFTP |
На второй виртуальной машине с WindowsXPничего настраивать не нужно TFTP клиент в WindowsXPустановлен по умолчанию (В случае с Windows 7 необходимо его включить Панель управления – Программы и компоненты – Включение или отключение компонентов Windows– Клиент TFTP). Так что отмечаем про себя только IPадрес данной виртуальной машины, в моем случае это 192.168.1.26. Так же создаем на данной машине директорию С:Clientи помещаем в нее два текстовых документа 1.txtи 2.txt, содержащие произвольный текст.Теперь приступим к самому интересному – к конфигурированию TFTPсервера в Debian. Сразу отмечу, что IPданной виртуальной машины 192.168.1.83. Для на чала нам потребуется установить на нашу виртуальную машину несколько пакетов, для этого выполним в консоли команду: sudo aptitude install openbsd-inetd tftpd tftp<o>Пакет openbsd-inetd представляет собой сетевую службу, которая обрабатывает входящие TCPи UDPсоединения и запускает соответствующую программу для обработки данных соединений. Пакет tftpdпредставляет собой TFTPсервер, а пакет tftp– TFTPклиент.После того как все перечисленные выше пакеты будут установлены приступим к их конфигурированию. По умолчанию TFTP сервер сконфигурирован на использование директории /srv/tftp. Возможно это и удобно, то так как мы учимся работать с TFTPмы попробуем это изменить и сделаем так чтобы TFTPсервер для своей работы использовал директорию /TFTP_server. Для начала создадим данную директорию выполнив команды: cd / sudomkdirTFTP_server cdTFTP_server echo “1 file” | sudo tee 1.log<o> echo “2 file” | sudo tee 2.log<o>Первой командой мы переходив в корневую директорию. Второй создаём в ней директорию TFTP_server. Третьей командой мы переходим в директорию TFTP_server. С помощью двух последних команд мы создаем в директории TFTP_server файлы 1.log и 2.logсодержащие текст «1 file» и «2 file» соответственно.Далее отредактируем файл /etc/inetd.conf. Для этого выполним команду (вместо nano можно использовать любой другой текстовый редактор): sudo nano /etc/inetd.confВ данном файле ищем строки подобные: #:BOOT: TFTP service is provided primarily for booting. Most sites<o> #run this only on machines acting as «boot servers.»<o> tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftpЗаменяем аргумент /srv/tftp на /TFTP_server. В итоге у вас должно получится: tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /TFTP_server<o>После чего сохраняем файл inetd.conf. Чтобы только что внесенные настройки вступили в силу необходимо перезапустить службу openbsd—inetd, для этого выполняем команду: sudo /etc/init.d/openbsd-inetd restartТеперь можно считать что данная виртуальная машина настроена для работы. И далее мы перейдем к практике.Практика 1. Копируем файлы с TFTPсервера с помощью встроенного TFTPклиента Windows<o>Для начала запустим консоль на виртуальной машине 2. И попробуем скачать файл 1.bmpс TFTPсервера виртуальной машины 1 (192.168.1.41). Для этого в консоли выполним команду: tftp 192.168.1.41 GET 1.bmpПосле этого на время копирования произойдет пауза, по окончание которой вы увидите результат выполнения операции.
Файл успешно скопирован с TFTP сервера |
Стоит отметить что копирование файла осуществляется в ту директорию, в которой при выполнении команды вы находились в консоле. Так в приведенном выше примере файлы были скопированы в папку пользователя с именем usero. Для того чтобы осуществить копирование файла в любую директорию можно воспользоваться следующим способом: cd C:<o> tftp 192.168.1.41 GET 2.bmp<o>В данном случае вы меняете текущую директорию в консоли на C:, а уже после этого осуществляете в нее копирование файлов с помощью TFTP.<o>Теперь если мы перейдем на виртуальную машину 1. И посмотрим на вкладку LogViewerсервера tftpd32, то мы сможем просмотреть статистику запросов поступающих от клиентов к данному TFTPсерверу, в данном случае статистика содержит только два запроса на чтение файлов:
Статистика запросов поступающих на TFTP сервер виртуальной машины 1 |
Копирование файлов с TFTPсервера виртуальной машины 3 (Debian) осуществляется аналогичным образом, только потребуется выполнить команды: tftp 192.168.1.83 GET 1.log<o> tftp 192.168.1.83 GET2.logПрактика 2. Записываем файлы на TFTPсервер с помощью встроенного TFTPклиента Windows<o>Для того чтобы скопировать файлы находящиеся в папке C:Client(виртуальная машина 2) на TFTPсервера виртуальной машины 1 необходимо в консоли выполнить следующие команды: tftp 192.168.1.41 PUT C:Client1.txt<o> tftp 192.168.1.41 PUT C:Client2.txt<o>Записанные файлы на виртуальной машине 1 появятся в директории C:Public.Если мы попробуем выполнить копирование файлов аналогичным способом на виртуальную машину 3 с Linux, то получим ошибку Access Violation :
Ошибка Access Violation при попытки записи на tftpd |
Дело в том, что tftpdустановленный на виртуальную машину 3, позволяет осуществлять запись только в уже существующие файлы. Поэтому на необходимо выполнить на виртуальной машине 3 следующие команды: cd /TFTP_server touch 1.txt<o> sudo chmod 777 –R /TFTP_server<o>Первой командой мы переходи в директорию /TFTP_server. Второй командой мы создаем в ней пустой файл с именем 1.txt. Третьей командой мы даем полные права на доступ к директории /TFTP и всем имеющимся в ней файлам.После этого можно выполнять на виртуальной машине 2 команду: tftp 192.168.1.83 PUT C:Client1.txt<o>И она пройдет без ошибок.Практика 3. Копируем файлы с TFTPсервера с помощью Tftpd32<o>Давайте попробуем скачать файлы хранящиеся на TFTPсервере виртуальной машины 3. Для этого на виртуальной машине 1 перейдем к окну приложения tftpd32. Откроем вкладку TFTPClientи укажем в ней адрес TFTPсервера с которого мы хотим скачать файл, имя файла который мы хотим скачать, а так же имя файла под которым мы хотим сохранить скачанный файл на нашем компьютере.
Используем клиент tftpd32 для чтения файлов |
После того как все вышеперечисленные параметры заданы, нажимаем на кнопку GET. После чего будет выполнена загрузка файла.Практика 4. Запись файлов на TFTPсервер с помощью Tftpd32<o>Теперь попробуем записать файлы на TFTPсервер виртуальной машины 3 (Debian) используя TFTPклиент встроенный в Tftpd32. Как мы уже выяснили ранее, для того чтобы осуществлять запись файлов на tftpdсервер виртуальной машины 3, необходимо создать пустые файлы с таким же именем на данном сервере. Поэтому сначала выполняем следующие команды на виртуальной машине 3: cd /TFTP_server touch 1.bmp<o> touch 2.bmp<o> sudo chmod 777 –R /TFTP_server<o>После этого возвращаемся к виртуальной машине 1. Опять же открываем вкладку TFTPClient и заполняем ее следующим образом:
Производим запись файлов с помощью tftpd32 |
После чего нажимаем на кнопку PUT. После чего будет произведена запись файлов на TFTPсервер виртуальной машины 3.Практика 5. Копируем файлы с TFTPсервера с помощью TFTPклиента в Linux<o>Теперь настало время поработать с Linux. Перейдем на виртуальную машину 3 и попробуем скачать с нее файлы хранящиеся на TFTPсервере виртуальной машины 1. Для этого в консоли введем: tftp<o> get 192.168.1.41:1.bmp<o>Команда tftp позволяет перейти к управлению клиентом tftp. С помощью команды get мы отправляем к TFTP серверу запрос на чтение файла. В качестве параметров указываются адрес tftp сервера:имя запрашиваемого файла.
Копируем файл по TFTP в Debian |
После чего файл 1.bmpбудет скопирован с TFTPсервера виртуальной машины 1 и помещен в директорию /TFTP_serverвиртуальной машины 3.Практика 6. Записываем файлы на TFTPсервер с помощью TFTPклиента в Linux<o>В заключение попробуем записать файлы на TFTPсервер виртуальной машины 1 используя клиент виртуальной машины 3 с Debian. Для этого выполним на ней следующие команды: tftp put 1.log 192.168.1.41:1.logЗдесь отметим что команда put позволяет отправить запрос на запись к tftp серверу. Первый параметр указываем имя записываемого файла на локальной машине. Второй параметр имеет формат адрес tft сервера:имя под которым файл будет записан на сервер.
Записываем фал на tftp сервер в Debian |
Пока это все примеры использования TFTP. Надеюсь они пригодятся вам в вашей профессиональной практике.Используемые источники:
- http://helpform.ru/329777
- https://it.blogstud.ru/2017/09/06/kak-podnyat-tftp-server-na-windows-7/
- http://www.netza.ru/2013/04/tftp.html