TFTP сервер
Модераторы: Olej, bellic, vikos
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
TFTP сервер
Для служебной необходимости, по делу, понадобилось установить локальный TFTP сервер - для работы с embedded устройствами: доработки софта + сборки всего этого в имиджи, прошивки + заливки в флеши этих девайсов.
("локальный" TFTP в том смысле, что в собственной локальной сети, LAN ... в разветвлённой корпоративной VPN сети фирмы для этого есть удалённые TFTP для размещения продакшен вариантов, а этот локальный - для совершенно черновых. драфт набросков)
Собственно, вопросов 2:
1). какой выбрать (под Linux их много) проект и чем они вообще отличаются?
2). установить и настроить
Или даже 3 :
3). собрать сюда, под одну тему, полезные публикации, ссылки, ... чтобы завтра не потерять.
Поехали...
("локальный" TFTP в том смысле, что в собственной локальной сети, LAN ... в разветвлённой корпоративной VPN сети фирмы для этого есть удалённые TFTP для размещения продакшен вариантов, а этот локальный - для совершенно черновых. драфт набросков)
Собственно, вопросов 2:
1). какой выбрать (под Linux их много) проект и чем они вообще отличаются?
2). установить и настроить
Или даже 3 :
3). собрать сюда, под одну тему, полезные публикации, ссылки, ... чтобы завтра не потерять.
Поехали...
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Установка TFTP сервера (tftpd) в Ubuntu Linux
Очень подробно и обстоятельно. Но :
Опубликовано: 20.11.2010
Вот это достаточно существенно:Для Linux доступно несколько TFTP демонов (серверов): tftpd, atftpd, tftpd-hpa. Вы можете использовать любой из них. Я расскажу, как устанавливать tftpd.
Установка TFTP сервера в Debian или UbuntuЯ буду использовать службу openbsd-inetd. Есть еще служба xinetd, вы можете ее использовать, но настраивается она несколько иначе.
13.06.2018
29.01.2021
Установка сервера TFTP на Ubuntu LinuxОдним из самых популярных вариантов TFTP сервера на Linux является tftp-hpa - улучшенная версия обычного tftpd, его то мы и настроим и установим ниже. Он очень прост в использовании и его установка с настройкой может занять всего несколько минут.
Отправьте файл на сервер TFTP с помощью клиентского программного обеспечения под названием ATFTP.Код: Выделить всё
atftp 192.168.100.10 tftp> put test.txt tftp> quit
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Их, собственно, 3:
Код: Выделить всё
olej@nvme:~/2021/Zodiac_Systems$ aptitude search tftp
p atftp - улучшенный TFTP-клиент
p atftpd - расширенный TFTP-сервер
p erlang-tftp - Erlang/OTP TFTP client and server
v erlang-tftp:any -
p libnet-tftp-perl - Perl module for accessing TFTP servers
p libnet-tftpd-perl - Perl extension for Trivial File Transfer Protocol Server
p puppet-module-puppetlabs-tftp - Puppet module for managing tftp-hpa
p python3-txtftp - Twisted-based TFTP implementation
p tftp - Trivial file transfer protocol client
p tftp-hpa - Клиент tftp-HPA
p tftp-hpa-dbg - HPA's tftp (debug)
v tftp-server -
p tftpd - сервер простого протокола передачи файлов (TFTP)
p tftpd-hpa - HPA's tftp server
p uec-provisioning-tftpd - the UEC Provisioning TFTP server
Лучшие TFTP-серверы для Windows, Linux и Mac в 2021 году
Популярный сервер TFTP в мире Linux называется Advanced TFTP server. Обычно он поставляется в пакете с именем aftpd. Это отличный многопоточный сервер, который поддерживает многоадресную рассылку. Таким образом, это отличный вариант для нестандартных развертываний.
tftpd-hpa - еще один популярный TFTP-сервер для Linux. Благодаря такому простому протоколу, как TFTP, каждый сервер имеет практически одинаковый набор функций.
...
Обычно вы используете tftpd-hpa всякий раз, когда вы не можете заставить atftpd работать надежно. Его легко установить с помощью только одной команды apt-get.
...
... tftpd-hpa настраивается через файл конфигурации в /etc/default/tftpd-hpa. Вот что вы обычно найдете в этом файле:Любые из этих настроек можно изменить по своему вкусу, отредактировав файл. После изменения сервер должен быть перезапущен с помощью этой команды:Код: Выделить всё
TFTP_USERNAME="tftp" TFTP_DIRECTORY="/var/lib/tftpboot" TFTP_ADDRESS=":69" TFTP_OPTIONS="--secure"
Код: Выделить всё
sudo service tftpd-hpa restart
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Как оказалось, в RTP репозитории Fedora всего гораздо меньше:
Но мне нужна работа и в Fedora тоже!
Код: Выделить всё
[olej@xenix ~]$ lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: Fedora
Description: Fedora release 32 (Thirty Two)
Release: 32
Codename: ThirtyTwo
Код: Выделить всё
[olej@xenix ~]$ dnf list tftp*
Последняя проверка окончания срока действия метаданных: 0:00:50 назад, Сб 13 мар 2021 19:55:57.
Имеющиеся пакеты
tftp.x86_64 5.2-30.fc32 updates
tftp-server.x86_64 5.2-30.fc32 updates
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Код: Выделить всё
[olej@xenix ~]$ sudo dnf install tftp tftp-server
[sudo] пароль для olej:
Последняя проверка окончания срока действия метаданных: 0:27:08 назад, Сб 13 мар 2021 19:31:40.
Зависимости разрешены.
====================================================================================================================================================
Пакет Архитектура Версия Репозиторий Размер
====================================================================================================================================================
Установка:
tftp x86_64 5.2-30.fc32 updates 33 k
tftp-server x86_64 5.2-30.fc32 updates 41 k
Результат транзакции
====================================================================================================================================================
Установка 2 Пакета
Объем загрузки: 74 k
Объем изменений: 123 k
Продолжить? [д/Н]: y
Загрузка пакетов:
(1/2): tftp-server-5.2-30.fc32.x86_64.rpm 340 kB/s | 41 kB 00:00
(2/2): tftp-5.2-30.fc32.x86_64.rpm 270 kB/s | 33 kB 00:00
----------------------------------------------------------------------------------------------------------------------------------------------------
Общий размер 124 kB/s | 74 kB 00:00
Проверка транзакции
Проверка транзакции успешно завершена.
Идет проверка транзакции
Тест транзакции проведен успешно
Выполнение транзакции
Подготовка : 1/1
Установка : tftp-server-5.2-30.fc32.x86_64 1/2
Запуск скриптлета: tftp-server-5.2-30.fc32.x86_64 1/2
Установка : tftp-5.2-30.fc32.x86_64 2/2
Запуск скриптлета: tftp-5.2-30.fc32.x86_64 2/2
Проверка : tftp-5.2-30.fc32.x86_64 1/2
Проверка : tftp-server-5.2-30.fc32.x86_64 2/2
Установлен:
tftp-5.2-30.fc32.x86_64 tftp-server-5.2-30.fc32.x86_64
Выполнено!
Код: Выделить всё
[olej@xenix ~]$ systemctl status tftp
● tftp.service - Tftp Server
Loaded: loaded (/usr/lib/systemd/system/tftp.service; indirect; vendor preset: disabled)
Active: inactive (dead)
TriggeredBy: ● tftp.socket
Docs: man:in.tftpd
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Код: Выделить всё
[olej@xenix ~]$ sudo systemctl start tftp
Код: Выделить всё
[olej@xenix ~]$ systemctl status tftp
● tftp.service - Tftp Server
Loaded: loaded (/usr/lib/systemd/system/tftp.service; indirect; vendor preset: disabled)
Active: active (running) since Sat 2021-03-13 20:00:36 EET; 2s ago
TriggeredBy: ● tftp.socket
Docs: man:in.tftpd
Main PID: 25062 (in.tftpd)
Tasks: 1 (limit: 9497)
Memory: 168.0K
CGroup: /system.slice/tftp.service
└─25062 /usr/sbin/in.tftpd -s /var/lib/tftpboot
мар 13 20:00:36 xenix.localdomain systemd[1]: Started Tftp Server.
Код: Выделить всё
[olej@xenix ~]$ sudo systemctl enable tftp
Created symlink /etc/systemd/system/sockets.target.wants/tftp.socket → /usr/lib/systemd/system/tftp.socket.
Код: Выделить всё
[olej@xenix ~]$ which tftp
/usr/bin/tftp
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Утверждается, что каталогом по умолчанию tftp для get/put является:
Код: Выделить всё
[olej@xenix ~]$ ls -l /var/lib/tftpboot
итого 0
[olej@xenix ~]$ ls -ld /var/lib/tftpboot
drwxr-xr-x 1 root root 0 мая 4 2020 /var/lib/tftpboot
Код: Выделить всё
[olej@xenix ~]$ echo 11111111111111111111111111111111111111 | sudo tee /var/lib/tftpboot/test.txt
[sudo] пароль для olej:.
11111111111111111111111111111111111111
[olej@xenix ~]$ ls -l /var/lib/tftpboot
итого 4
-rw-r--r-- 1 root root 39 мар 13 22:37 test.txt
Код: Выделить всё
[olej@xenix ~]$ tftp 127.0.0.1
tftp> ascii
tftp> get test.txt
tftp> quit
Код: Выделить всё
[olej@xenix ~]$ ls -l test.txt.
-rw-rw-r-- 1 olej olej 39 мар 13 22:40 test.txt
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Последние штрихи...
Мне нужно туда записывать собранные имиджи для embedded загрузок из-под любых имён (это не лучшее решение, но самое простое):
Код: Выделить всё
[olej@xenix ~]$ ls -ld /var/lib/tftpboot
drwxr-xr-x 1 root root 16 мар 13 22:37 /var/lib/tftpboot
[olej@xenix ~]$ sudo chmod a+w /var/lib/tftpboot
Код: Выделить всё
[olej@xenix ~]$ sudo ln -s /var/lib/tftpboot /tftpboot
[olej@xenix ~]$ ls -l /tftpboot
lrwxrwxrwx 1 root root 17 мар 13 22:52 /tftpboot -> /var/lib/tftpboot
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Обратим внимание ещё на такую штуку (цитата оттуда):
Т.е. TFTP - вещь старая, простая (чтоб не сказать примитивная), не ищем там ни паролей для соединения, ни каких других привычных хитростей... Всё это, вообще то говоря, для локального применения, когда всё разложено на одном рабочем верстакеTFTP — простой протокол для передачи файлов по сети, использует протокол UDP (по порту 69), не поддерживает аутентификацию и шифрование. TFTP часто используется для загрузки файлов (прошивок, конфигураций) на устройства (маршрутизаторы, мини-АТС и другие)
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: TFTP сервер
Trivial File Transfer Protocol
Создан в ~ 1980
Порт/ID 69/UDP
И имеет изрядные ограничения помимо того:в отличие от FTP, не содержит возможностей аутентификации (хотя возможна фильтрация по IP-адресу) и основан на транспортном протоколе UDP.
(выделено мной) - ... и тот и другой одновременно.Всего по TFTP можно передать 32 Мб (65536 * 512 / 1024²), однако, из-за использования знакового int вместо беззнакового, размер подтверждения ограничен 16 мегабайтами. Однако если клиент и сервер поддерживают расширения протокола RFC 2347 и RFC 2348, то максимальный размер передаваемого файла увеличивается до 4Gb.
А как это узнать для конкретной реализации?
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя