TFTP (тривиален протокол за прехвърляне на файлове) е описан за първи път през 1980 г. Това е доста стар протокол, публикуван през юни 1981 г. като TFTP протокол ревизия 2 в RFC 783 (Искане за коментари) от Karen R. Солинс.

В ранните дни основната цел на TFTP беше да изпраща и получава файлове през мрежа. По-специално, той беше използван за прехвърляне на файловете, необходими по време на зареждане, за да се даде възможност на системите да зареждат през мрежа.

Ето как можете да настроите TFTP сървър на Linux машина.

Какво е TFTP?

TFTP все още се използва за целите на прехвърлянето на файлове и няма фундаментална промяна във функциите, които поддържа. TFTP се използва за изтегляне и изпращане на файлове през UDP/IP. Той няма допълнителни функции като контрол на самоличността и оторизацията, списък с файлове, изтриване или преименуване, които обикновено се намират в други протоколи за прехвърляне на файлове.

За разлика от разширените протоколи за прехвърляне на файлове, които използват TCP в предавателния слой, той работи на UDP протокола и няма функции като проверка дали пакетите, принадлежащи на файла, отиват към другия страна. Поради това ограничение, той е по-подходящ за използване в локални мрежи, отколкото в интернет или широкообхватни мрежи.

instagram viewer

Въпреки всички тези привидно негативни характеристики, изброени по-горе, един аспект на TFTP протокола, който е много силен, е неговата простота. Внедряването на протокола е доста лесно в сравнение с неговите алтернативи, дори и за среди, които нямат операционна система. Благодарение на тази функция, той има широка област на използване във вградени системи.

Инсталиране на TFTP сървър на Linux

Когато работите с вградени устройства, е важно да имате инсталирана услугата TFTP сървър. В Linux системи могат да работят няколко реализации на TFTP сървър. Ако използвате a Дистрибуция, базирана на Debian, можете да инсталирате tftpd-hpa, tftpd, или atftpd пакети. Ако не сте сигурни кой да изберете, помислете за инсталиране на пакета tftpd-hpa.

sudo apt-получавам инсталирайте tftpd-hpa

След инсталирането TFTP услугата ще започне да слуша UDP порта 69. За да обслужвате файловете на други системи чрез TFTP сървъра, трябва да имате предвид няколко предпоставки:

  • Копиране на необходимия файл в началната директория на TFTP или в директория под тази начална директория
  • Правене на разрешения за файлове видими за обществеността

За да разберете какво представлява началната директория на TFTP сървъра, можете да погледнете TFTP_DIRECTORY променлива в /etc/default/tftpd-hpa файл. Обикновено ще видите директории като /var/lib/tftpboot или /srv/tftp. Ако искате, можете да промените тази директория и да рестартирате услугата.

котка /и др/по подразбиране/tftpd-hpa

За по-лесно използване, ако промените собственика на съответната TFTP начална директория на вашия потребителски акаунт, няма да е необходимо да добавяте префикса sudo към всяка команда, която изпълнявате. Използвайте командата chown, за да промените собствеността от root на текущия потребител:

sudo chown -R $ПОТРЕБИТЕЛ /srv/tftp

Имената на пакетите на TFTP сървъра и началните директории по подразбиране може да се различават в зависимост от използваната Linux дистрибуция.

Изпращане на файлове с TFTP сървър

Понякога има ситуации, при които TFTP е единствената опция за преместване на файл от вашия вградена Linux система към външната среда. Например, понякога системата може да не поддържа записваем носител, чрез който можете да прехвърлите файла.

В такива случаи, тъй като TFTP клиентът вероятно ще бъде компилиран busybox, можете да изпратите файл, записан в системата, към TFTP сървър в мрежа.

За да използвате TFTP клиентското приложение, издайте busybox tftp команда:

busybox tftp 

За да изпратите примерен файл към TFTP сървъра, трябва да използвате команда като тази:

busyboxtftpпример.bin-стр 192.168.1.100

Въпреки че горната команда е правилна, ще получите грешка, докато прехвърляте файла към вашия TFTP сървър. Тъй като върнатото съобщение за грешка не се обяснява само по себе си, трудно е да се разбере какъв е истинският проблем.

Проблемът тук е поради някои процедури за сигурност на TFTP сървъра. TFTP изисква файл със същото име да бъде в директорията, където ще бъде записан файлът като предпоставка за качване на файл и че трябва да има достъп за запис на този файл всеки.

С други думи, не е възможно да качите файл, който не съществува на TFTP сървъра чрез TFTP клиенти. Ако създадете празен файл със същото име и редактирате правата му за достъп, горният процес на качване ще бъде успешен. За целта трябва да изпълните следните команди в съответната начална директория на TFTP сървъра:

cd /srv/tftp 
докосванепример.bin
chmod 666 пример.bin

Сега можете да извършите успешно качването си.

Възможно е също така да деактивирате горната мярка за сигурност и TFTP сървърът да създаде файл, който не съществува. За целта можете да използвате -° С или --създайте параметър при стартиране на tftpd-hpa приложение. Достатъчно е да добавите този параметър към съществуващия TFTPD_OPTIONS променлива в /etc/default/tftpd-hpa файл:

# /etc/default/tftpd-hpa 
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_АДРЕС="0.0.0.0:69"
TFTP_OPTIONS="--сигурно --създаване"

Защо да използвате TFTP сървър за прехвърляне на файлове?

Най-важното предимство на TFTP е, че е бърз и ви помага да спестите време. Това е идеален вариант за прехвърляне на конфигурационни файлове на мрежови устройства към други системи. Освен това има много прости критерии за използване. Функционира удобно със софтуер както на Windows, така и на Linux базирани операционни системи. И накрая, TFTP винаги е там, за да спаси положението в ситуации, в които технически не можете да използвате FTP.

Най-големият недостатък е, разбира се, че не е безопасно. Следователно трябва да внимавате много, докато прехвърляте файлове с помощта на TFTP сървър.

Освен прехвърлянето на файлове, не можете да извършвате функции като изтриване, редактиране и модифициране на файлове с помощта на TFTP сървър. Тази функция е основен недостатък за тези, които използват или търсят усъвършенствани системи. И накрая, не изисква удостоверяване, което е основен недостатък, ако сте сериозни за вашата сигурност.

Настройка на TFTP на други операционни системи

Ако възнамерявате да използвате TFTP в Windows, не е необходимо да инсталирате софтуер на трети страни. Можете да активирате TFTP с опцията за включване или изключване на функциите на Windows в контролния панел.