Installasi,Konfigurasi,Testing TFTP Client – Server di Debian

“Trivial File Transfer Protocol (TFTP) is a simple, lock-step, file transfer protocol which allows a client to get or put a file onto a remote host. One of its primary uses is in the early stages of nodes booting from a Local Area Network. TFTP has been used for this application because it is very simple to implement.” —wiki

Kira-kira seperti itulah penjelasan umum dari TFTP dan dapat anda baca kembali dari pranala di atas. TFTP sendiri berjalan pada port 69 memakai protokol UDP. Penjabaran kiranya tidak perlu saya uraikan lagi, sedangkan perbedaan TFTP dan FTP mungkin anda bisa mencontek sedikit disini : www.differencebetween.net. TFTP dalam dunia network sebagai contoh diantaranya dapat dioperasikan untuk PXE Boot Install, Backup/Upgrade IOS Router/Switch, maupun proses file transfer lainnya dengan implementasi yang sangat simple.
INSTALLASI

Langsung saja sesuai judul, yang anda butuhkan pertama kali adalah TFTPD-HPA (tftp-server) dan TFTP (tftp-client). Install keduanya menggunakan apt-get.

# apt-get install tftpd-hpa tftp

KONFIGURASI

1. Konfigurasi tftp-server berada pada /etc/default. Edit file tersebut :

# nano /etc/default

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure --create"

Biasanya, tftp server menggunakan /tftpboot sebagai direktori default untuk penyimpanan file. Namun, pada Debian (GNU/Linux) direktorinya berada di /srv/tftp secara default agar teratur sesuai Standar Hierarki File System. (kalau salah tolong dibenerin. hehehe)

Option –secure membuat daemon melakukan fungsi chroot ke dalam direktori kerja. Hal ini berguna untuk mencegah attacker melakukan akses di luar direktori tersebut.

Secara default, TFTPD-HPA hanya memungkinkan file yang akan di upload oleh client jika filenya sudah tersedia atau sudah lebih dulu ada di direktori tftp dan bersifat publicy writable (atau world writable): free for all. Artinya, file tersebut dapat dibuat/ditulis oleh siapa saja. Permission direktori ini adalah (root, root, 777). Setiap orang dapat menaruh file di sini karena bit “w” pada kolom other menyala. Artinya client memiliki akses “write” pada direktori ini. Maka diperlukanlah option –create yang berfungsi untuk mengizinkan file baru agar dapat dibuat di dalam direktori tersebut.

2. Seperti terlihat pada file konfigurasi, daemon berjalan dengan username “tftp”, maka ketik perintah ini untuk mengatur ownership dan permissionnya :

# chown -R tftp /srv/tftp
# chmod -R 777 /srv/tftp

3. Pada tahap ini, anda sudah berhasil mengkonfigurasi tftp-server. Selanjutnya jalankan perintah untuk test fungsionalitasnya :

# /etc/init.d//tftpd-hpa status
# /etc/init.d//tftpd-hpa start
# /etc/init.d//tftpd-hpa restart
# /etc/init.d//tftpd-hpa stop

TESTING

4. Pertama-tama buatlah file di direktori mana saja, kemudian isi file tersebut dengan string text apa saja, contoh :

# cd ~
#
touch test.txt
#
echo “Learn! Learn!” > test.txt

# cat test.txt

testtftp1

5.  Yang akan kita lakukan, yaitu memindahkan file “test.txt” di direktori ~ ke direktori kerja tftp /srv/tftp. Maka jalankanlah tftp clientnya (pastikan tftpd-hpa sudah berjalan sebelumnya) :

# tftp
# connect 127.0.0.1 —————————————————> ini localhost
# status
# verbose
# trace
# ascii
# status
# put test.txt

testtftp2

6. Done! Sampai sini, fungsi kerja tftp client-server berhasil berjalan sebagaimana mestinya. Silahkan coba kembali dengan fungsi tftp “get” atau kunjungi man tftp untuk penjelasan lebih lanjut seputar fungsi-fungsi key dalam tftp-client.

testtftp3


#credit : http://goo.gl/VcQtSV


Advertisements