TFTP-d (Trivial File Transfer Protocol) kirjeldati esmakordselt 1980. aastal. See on üsna vana protokoll, mis avaldati 1981. aasta juunis TFTP-protokolli redaktsioonina 2 RFC 783-s (Request For Comments), autor Karen R. Sollins.
Algusaegadel oli TFTP peamine eesmärk failide saatmine ja vastuvõtmine võrgu kaudu. Eelkõige kasutati seda alglaadimise ajal vajalike failide edastamiseks, et võimaldada süsteemide käivitamist võrgu kaudu.
Siit saate teada, kuidas saate Linuxi masinas TFTP-serveri seadistada.
Mis on TFTP?
TFTP-d kasutatakse endiselt failiedastuseks ja selle toetatavates funktsioonides pole olulisi muudatusi. TFTP-d kasutatakse failide allalaadimiseks ja saatmiseks UDP/IP kaudu. Sellel puuduvad lisafunktsioonid, nagu identiteedi ja autoriseerimise kontroll, failide loend, kustutamine või ümbernimetamine, mida tavaliselt leidub muudes failiedastusprotokollides.
Erinevalt täiustatud failiedastusprotokollidest, mis kasutavad edastuskihis TCP-d, töötab see UDP-protokolliga ja sellel pole selliseid funktsioone nagu kontrollimine, kas faili kuuluvad paketid lähevad teisele või mitte pool. Selle piirangu tõttu sobib see pigem kasutamiseks kohalikes võrkudes kui Internetis või laivõrkudes.
Vaatamata kõigile ülaltoodud näiliselt negatiivsetele omadustele on TFTP-protokolli üks väga tugev aspekt selle lihtsus. Protokolli juurutamine on selle alternatiividega võrreldes üsna lihtne isegi keskkondade jaoks, millel pole operatsioonisüsteemi. Tänu sellele funktsioonile on sellel manustatud süsteemides lai kasutusala.
TFTP-serveri installimine Linuxisse
Manustatud seadmetega töötamisel on oluline, et oleks installitud TFTP-serveri teenus. Linuxi süsteemides saab töötada mitu TFTP-serveri rakendust. Kui kasutate a Debianil põhinev distributsioon, saate installida tftpd-hpa, tftpd, või atftpd paketid. Kui te pole kindel, millist valida, kaaluge paketi tftpd-hpa installimist.
sudo apt-saada installige tftpd-hpa
Pärast installimist hakkab TFTP-teenus kuulama UDP port 69. Failide teenindamiseks teistesse süsteemidesse TFTP-serveri kaudu peate meeles pidama mõnda eeltingimust.
- Vajaliku faili kopeerimine TFTP kodukataloogi või selle kodukataloogi all olevasse kataloogi
- Failiõiguste avalikkusele nähtavaks tegemine
Et teada saada, mis on TFTP-serveri kodukataloog, võite vaadata TFTP_DIRECTORY muutuja /etc/default/tftpd-hpa faili. Tavaliselt näete selliseid katalooge nagu /var/lib/tftpboot või /srv/tftp. Soovi korral saate seda kataloogi muuta ja teenuse taaskäivitada.
kass /jne/vaikimisi/tftpd-hpa
Kui muudate kasutusmugavuse huvides vastava TFTP kodukataloogi omaniku oma kasutajakontoks, ei pea te igale käivitatavale käsule sudo eesliidet lisama. Kasutage käsku chown, et muuta omandiõigus juurkasutajaks praeguseks kasutajaks:
sudo chown -R $USER /srv/tftp
TFTP-serveri pakettide nimed ja vaikekodukataloogid võivad olenevalt kasutatavast Linuxi distributsioonist erineda.
Failide saatmine TFTP-serveriga
Mõnikord on olukordi, kus TFTP on ainus võimalus faili teisaldamiseks teie arvutist manustatud Linuxi süsteem väliskeskkonnale. Näiteks mõnikord ei pruugi süsteem toetada ühtegi kirjutatavat meediumit, mille abil saate faili edastada.
Sellistel juhtudel, kuna TFTP klient tõenäoliselt kompileeritakse kinnikast, saate saata süsteemi salvestatud faili võrgus olevasse TFTP-serverisse.
TFTP-kliendirakenduse kasutamiseks väljastage busybox tftp käsk:
busybox tftp
Näidisfaili saatmiseks TFTP-serverisse peate kasutama sellist käsku:
kinnikasttftp-lnäide.bin-lk 192.168.1.100
Kuigi ülaltoodud käsk on õige, kuvatakse faili TFTP-serverisse ülekandmisel veateade. Kuna tagastatud veateade ei ole iseenesestmõistetav, on raske aru saada, milles tegelik probleem seisneb.
Siin on probleem TFTP-serveri teatud turvaprotseduuride tõttu. TFTP nõuab, et sama nimega fail peaks olema kataloogis, kuhu fail kirjutatakse faili üleslaadimise eeltingimuseks ja et selle faili kirjutamisõigus peaks olema kättesaadav kõik.
Teisisõnu ei ole võimalik TFTP klientide kaudu üles laadida faili, mida TFTP serveris ei eksisteeri. Kui loote sama nimega tühja faili ja muudate selle juurdepääsuõigusi, on ülaltoodud üleslaadimine edukas. Selleks peate vastavas TFTP-serveri kodukataloogis käivitama järgmised käsud:
cd /srv/tftp
puudutadanäide.bin
chmod 666 näide.bin
Nüüd saate oma üleslaadimist edukalt sooritada.
Samuti on võimalik ülaltoodud turvameede keelata ja lasta TFTP-serveril luua fail, mida pole olemas. Selleks saate kasutada -c või -- luua parameetri käivitamisel tftpd-hpa rakendus. Piisab selle parameetri lisamisest olemasolevale TFTPD_OPTIONS muutuja /etc/default/tftpd-hpa fail:
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--turvaline --loo"
Miks kasutada failiedastuseks TFTP-serverit?
TFTP kõige olulisem eelis on see, et see on kiire ja aitab säästa aega. See on ideaalne võimalus võrguseadmete konfiguratsioonifailide edastamiseks teistele süsteemidele. Lisaks on sellel väga lihtsad kasutuskriteeriumid. See töötab mugavalt tarkvaraga nii Windowsi kui ka Linuxi põhistes operatsioonisüsteemides. Lõpuks on TFTP alati abiks olukordades, kus te ei saa FTP-d tehniliselt kasutada.
Suurim miinus on muidugi see, et see pole ohutu. Seetõttu peate TFTP-serveri abil failide edastamisel olema väga ettevaatlik.
Peale failiedastuse ei saa te TFTP-serveri abil täita selliseid funktsioone nagu failide kustutamine, redigeerimine ja muutmine. See funktsioon on suureks puuduseks neile, kes kasutavad või otsivad täiustatud süsteeme. Lõpuks ei nõua see autentimist, mis on suur puudus, kui olete oma turvalisuse suhtes tõsine.
TFTP seadistamine muudes operatsioonisüsteemides
Kui kavatsete Windowsis kasutada TFTP-d, ei pea te installima kolmanda osapoole tarkvara. TFTP saate lubada juhtpaneeli suvandiga Lülita Windowsi funktsioonid sisse või välja.