[Tìm hiểu] TFTP là gì? | Cách cài đặt và sử dụng TFTP 2024

TFTP là một giao thức đơn giản được sử dụng để truyền tệp giữa các thiết bị mạng. Nó có thể giúp quá trình lưu trữ tệp diễn ra hiệu quả hơn. TFTP là một giao thức hữu ích cho các ứng dụng đơn giản, nơi bảo mật không phải là một mối quan tâm. Trong bài viết này, VinaHost sẽ giải đáp TFTP là gì cũng như hướng dẫn bạn cách cài đặt và sử dụng TFTP hiệu quả.

1. TFTP là gì?

TFTP (Trivial File Transfer Protocol) là một giao thức được sử dụng để truyền các tệp giữa các thiết bị mạng.

TFTP được phát triển vào những năm 1970 và được sử dụng cho các ứng dụng như tải xuống chương trình cơ sở, phân phối phần mềm và sao lưu tệp.

TFTP Protocol là một giao thức đơn giản, không yêu cầu xác thực người dùng hoặc bảo mật. Nó chỉ truyền các tệp theo cách nguyên bản, không có bất kỳ chỉnh sửa hoặc giải pháp nén nào. TFTP sử dụng giao thức UDP để truyền tệp. Nó sử dụng cổng 69 để truyền dữ liệu.

tftp la gi
TFTP (Trivial File Transfer Protocol) là một giao thức được sử dụng để truyền các tệp giữa các thiết bị mạng

2. Nguyên lý hoạt động của TFTP

Giao thức TFTP hoạt động dựa trên nguyên lý cơ bản như sau:

  • TFTP sử dụng giao thức UDP để truyền tệp, và nó sử dụng cổng 69 để thiết lập kết nối.
  • Sau khi kết nối được thiết lập, máy khách có thể gửi yêu cầu RRQ hoặc WRQ. RRQ là yêu cầu đọc, và nó được sử dụng để tải xuống một tệp từ máy chủ. WRQ là yêu cầu ghi, và nó được sử dụng để tải lên một tệp lên máy chủ.
  • Tệp được truyền dưới dạng các gói dữ liệu có kích thước 512 byte.
  • Máy chủ gửi các gói dữ liệu cho máy khách và máy khách xác nhận đã nhận được mỗi gói dữ liệu.
  • Quá trình này tiếp tục cho đến khi toàn bộ tệp được truyền.

2.1. Điều sẽ xảy ra khi một Packet không được nhận từ phía máy khách

Khi máy chủ gửi một gói dữ liệu đến máy khách, máy chủ sẽ chờ đợi xác nhận từ máy khách. Nếu không nhận được xác nhận trong một khoảng thời gian nhất định, máy chủ sẽ gửi lại gói dữ liệu đó. Nếu nhận được xác nhận trước khi hết thời gian chờ, máy chủ sẽ gửi gói dữ liệu tiếp theo.

2.2. Cách để Client biết File Communicating đã hoàn tất

Packet cuối cùng được tạo để chia sẻ một tệp cụ thể có kích thước nhỏ hơn 512 byte. Ngay cả khi các packet được tạo trước đó có kích thước là bội số của 512 byte, máy chủ vẫn sẽ gửi một packet bổ sung có kích thước nhỏ hơn 512 byte. Packet bổ sung này là một tín hiệu cho máy khách rằng việc truyền tệp đã hoàn tất.

Xem thêm: [Tìm Hiểu] SNMP Là Gì? Tổng Quan Về Giao Thức SNMP

3. TFTP được sử dụng để làm gì?

Dưới đây là một số chức năng chính của TFTP Protocol.

3.1. Đọc và truyền tệp giữa các máy tính, server, router,…

TFTP là một giao thức truyền tệp đơn giản, được sử dụng để đọc hoặc truyền các tệp nhỏ, chẳng hạn như tệp khởi động hoặc cấu hình hệ thống. Giao thức này được sử dụng phổ biến trong các mạng cục bộ (LAN) để truyền các tệp giữa các thiết bị. Tuy nhiên, TFTP protocol không cung cấp tính bảo mật cao, vì dữ liệu truyền đi không được mã hóa.

Xem thêm: Network là gì? | [SO SÁNH] giữa Internet và Network

3.2. Khởi động từ xa không cần ổ cứng

Giao thức TFTP được sử dụng phổ biến trong các thiết bị không có ổ cứng, vì nó chỉ cần một phần nhỏ bộ nhớ để khởi động mạng hoặc hệ thống. Điều này giúp cho thiết bị có thể sử dụng phần bộ nhớ còn lại cho các mục đích khác, chẳng hạn như lưu trữ tệp hoặc chạy ứng dụng. Ngoài ra, TFTP protocol cũng có thể được sử dụng để khởi động máy tính từ xa mà không cần ổ cứng.

3.3. Nâng cấp phần mềm hoặc firmware cho các thiết bị mạng

TFTP protocol thường được sử dụng để nâng cấp phần mềm hoặc firmware cho các thiết bị mạng, chẳng hạn như bộ định tuyến, switch, tường lửa,… Các bản cập nhật phần mềm hoặc firmware thường được cung cấp dưới dạng tệp nhỏ, có thể được truyền qua TFTP.

3.4. Tạo bản sao lưu 

Khi sao lưu cấu hình mạng máy tính, người dùng có thể sử dụng TFTP để tải tệp cấu hình từ máy tính xuống máy chủ lưu trữ. Tệp cấu hình này có thể được sử dụng để khôi phục cấu hình mạng trong trường hợp máy tính bị hỏng hoặc bị mất.

Tương tự, TFTP protocol cũng có thể được sử dụng để sao lưu cấu hình bộ định tuyến. Điều này có thể hữu ích trong trường hợp bộ định tuyến bị hỏng hoặc bị đặt lại về trạng thái mặc định. Sao lưu cấu hình mạng là việc cần làm để đảm bảo rằng bạn có thể khôi phục mạng trong trường hợp xảy ra sự cố.

3.5. Lưu hình ảnh IOS

Một trong những cách sử dụng phổ biến nhất của TFTP protocol  là lưu hình ảnh IOS. Hình ảnh IOS là một tệp chứa tất cả các phần mềm cần thiết để khởi động và chạy một bộ định tuyến Cisco. Hình ảnh IOS thường có kích thước lớn, vì vậy TFTP là một cách hiệu quả để truyền tệp này qua mạng.

3.6. Quét virus

TFTP hoạt động bằng cách truyền tệp trực tiếp giữa hai máy tính trên cùng một mạng. Điều này có thể giúp giảm tải cho hệ thống và cho phép phân tích các tệp một cách dễ dàng.

Trong một số trường hợp, những người chịu trách nhiệm về tính bảo mật của một tổ chức sẽ sử dụng TFTP protocol để phân tích các tệp có khả năng chứa phần mềm độc hại. Điều này có thể được thực hiện bằng cách tải tệp lên máy tính của chuyên gia bảo mật, sau đó có thể sử dụng các công cụ để phân tích tệp và tìm kiếm dấu hiệu của phần mềm độc hại.

tftp la gi
TFTP hoạt động bằng cách truyền tệp trực tiếp giữa hai máy tính trên cùng một mạng.

3.7. Cài đặt License cho Router

Cài đặt License cho Router là quá trình cấp phép cho một Router để sử dụng các tính năng hoặc chức năng nâng cao. Trong trường hợp này, tệp được truyền là tệp license. Tệp license chứa thông tin xác thực cần thiết để cấp phép cho Router.

3.8. Hỗ trợ các thiết bị có công suất nhỏ

TFTP không yêu cầu nhiều tài nguyên, vì vậy nó có thể được chạy trên các máy tính bị hạn chế dung lượng. Điều này khiến TFTP trở thành một lựa chọn lý tưởng cho các thiết bị mạng, chẳng hạn như bộ định tuyến và switch.

Xem thêm: Telnet là gì? | Những hạn chế về bảo mật của Telnet

4. 4 loại gói tin cơ bản của TFTP

TFTP Protocol có các gói dữ liệu sau:

  • RRQ (Yêu cầu đọc): Yêu cầu tải xuống một tệp từ máy chủ.
  • WRQ (Yêu cầu ghi): Yêu cầu tải lên một tệp lên máy chủ.
  • DATA: Chứa dữ liệu của tệp đang được truyền.
  • ACK: Xác nhận việc nhận được dữ liệu.

5. Ưu điểm của TFTP 

Dưới đây là một số ưu điểm của TFTP protocol:

  • Đơn giản và dễ sử dụng: TFTP là một giao thức đơn giản, không yêu cầu nhiều cấu hình hoặc cài đặt. 
  • Hiệu quả: TFTP sử dụng giao thức UDP để truyền dữ liệu, giúp truyền tệp nhanh chóng và hiệu quả.
  • Khả năng tương thích: TFTP protocol là một giao thức tiêu chuẩn, được hỗ trợ bởi hầu hết các hệ điều hành và thiết bị mạng.
  • Tính sẵn có: TFTP là một giao thức miễn phí, có sẵn trên hầu hết các hệ điều hành và thiết bị mạng.

Tuy nhiên, TFTP cũng có hạn chế là không có xác thực. TFTP protocol không cung cấp bất kỳ hình thức xác thực nào, khiến dữ liệu dễ bị nghe lén hoặc thay đổi.

6. Tại sao nên sử dụng TFTP? 

TFTP có thể được sử dụng vì các lý do sau:

  • TFTP yêu cầu ít tài nguyên hơn các giao thức truyền tệp khác: Điều này làm cho TFTP trở thành lựa chọn tốt cho các thiết bị có bộ nhớ hoặc băng thông hạn chế.
  • TFTP dễ triển khai và sử dụng: TFTP sử dụng giao thức UDP, vốn là một giao thức đơn giản và hiệu quả.
  • TFTP không yêu cầu xác thực: Điều này làm cho TFTP protocol trở thành lựa chọn tốt cho các ứng dụng không yêu cầu bảo mật cao, chẳng hạn như phân phối hệ điều hành hoặc phần mềm.

7. TFTP Client và Server Software

Giao thức TFTP cung cấp các chương trình client và server để truyền tệp giữa các thiết bị mạng. Các chương trình client TFTP được tích hợp sẵn trong các hệ điều hành phổ biến như Windows, Linux và macOS.

TFTPD32 là một chương trình client TFTP miễn phí với giao diện đồ họa, bao gồm cả chương trình server. Windows TFTP Utility là một ví dụ khác về chương trình client và server TFTP với giao diện đồ họa.

TFTP server của Windows cần được cài đặt thêm, nhưng có thể tải xuống miễn phí. Hệ điều hành Linux và macOS sử dụng chương trình server TFTP có tên là tftpd, mặc dù nó có thể bị tắt theo mặc định.

Các chuyên gia mạng khuyến nghị nên cấu hình TFTP server cẩn thận để tránh các lỗ hổng bảo mật tiềm ẩn.

tftp la gi
TFTP Client và Server Software

8. Hướng dẫn chi tiết cách cài đặt và sử dụng TFTP

Để sử dụng Solarwinds TFTP làm TFTP Server, hãy thực hiện các bước sau:

Bước 1: Tải xuống và cài đặt Solarwinds TFTP. Sau khi cài đặt xong, ứng dụng sẽ có tên là TFTP Server.

Download Solarwinds TFTP

Download TFTPD32 

Bước 2: Mở cổng 69 trên firewall. Mặc định, firewall sẽ chặn cổng này để bảo vệ máy tính khỏi các truy cập trái phép.

Bước 3: Kết nối mạng giữa TFTP Client và TFTP Server. Để thực hiện, bạn cần kết nối hai thiết bị với cùng một mạng cục bộ.

Đối với ví dụ trong bài viết, bạn có thể sử dụng cáp Ethernet để kết nối laptop với router. Đối với các thiết bị khác, bạn có thể sử dụng các phương thức kết nối mạng khác nhau, chẳng hạn như Wi-Fi, Bluetooth, hoặc kết nối vật lý bằng cáp.

Sau khi kết nối, bạn có thể kiểm tra xem hai thiết bị có thể giao tiếp với nhau hay không bằng cách ping. Nếu bạn có thể ping được đến router, thì bạn có thể tiếp tục các bước tiếp theo để sử dụng TFTP. Đối với các thiết bị đặc biệt, bạn có thể sử dụng cổng mgmt để truyền file.

Đặt IP cho cổng mạng trên Router

Router(config)#interface f0/0

Router(config-if)#no shutdown

Router(config-if)#ip add 192.168.1.2 255.255.255.0

Đặt IP cho interface vlan

Switch(config)#interface vlan 1

Switch(config-if)#no shutdown

Switch(config-if)#ip add 192.168.1.2 255.255.255.0

Ping đến địa chỉ TFTP Server

Router#ping 192.168.1.2

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 192.168.1.2, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms

Bước 4: Khởi động TFTP Server

Khi khởi động, TFTP Server sẽ tự động bật và gán với tất cả card mạng hiện có trên laptop.

Để kiểm tra cấu hình của TFTP Server, bạn có thể vào File > Configure.

Tab General

  • Status: Trạng thái của TFTP Server. Bạn có thể khởi động lại TFTP Server bằng cách nhấn Stop rồi nhấn Start.
  • Storage: Thư mục gốc của TFTP. Thư mục này chứa các tập tin để gửi tới Remote Host hoặc lưu các tập tin nhận từ Remote Host. Bạn có thể thay đổi đường dẫn này tới thư mục chứa file của bạn. 

Tab Server Binding: Xác định card mạng nào sẽ được sử dụng để truyền file. Bạn có thể chọn tất cả card mạng hoặc chỉ định chính xác card mạng mà bạn kết nối tới Router.

tftp la gi
Hướng dẫn chi tiết cách cài đặt và sử dụng TFTP

8.1. Backup Config Switch hoặc Router

Router#copy running-config tftp: //Backup file running-config ra tftp

Address or name of remote host []? 192.168.1.1 //Địa chỉ TFTP Server

Destination filename [Router-confg]? Router_Backup //Tên File được lưu trong TFTP

!!

7400 bytes copied in 0.548 secs (13504 bytes/sec)

Router#

8.2. Khôi phục cấu hình Switch hoặc Router (File config đã được backup ra TFTP)

Router#copy tftp: running-config //Câu lệnh để copy khôi phục cấu hình

Address or name of remote host []? 192.168.1.1 //Địa chỉ TFTP Server

Source filename []? Router_Backup //Nhập tên file config đã được Backup ra TFTP

Destination filename [running-config]?

Accessing tftp://192.138.1.1/Router_Backup…

Loading Router_Backup from 192.168.1.1 (via GigabitEthernet0/0): !

[OK – 7400 bytes]

7400 bytes copied in 0.440 secs (16818 bytes/sec)

Router#

8.3. Cài đặt License cho Router

File License FDO22241GVZ_20181014212247331.lic đã được lưu vào thư mục Root của TFTP

Router#license install tftp://192.168.1.1/ FDO22241GVZ_20181014212247331.lic

Installing licenses from “tftp://192.168.1.1/ FDO22241GVZ_20181014212247331.lic”

Installing…Feature:throughput… Successful:Supported

1/1 licenses were successfully installed

0/1 licenses were existing licenses

0/1 licenses were failed to install

Router#

*Oct 15 03:54:57.275: %ISR_THROUGHPUT-6-LEVEL: Throughput level has been set to 50000 kbps

*Oct 15 03:54:57.276: %LICENSE-6-INSTALL: Feature throughput 1.0 was installed in this device. UDI=ISR4321/K9:FDO22241GVZ; StoreIndex=1:Primary License Storage

Router#

8.4. Backup IOS của Router (Switch)

Flash là nơi lưu trữ IOS hoặc file config trên switch hay Router (giống như ổ cứng máy tính).

Switch#dir flash: //Xác định tên File IOS và đường dẫn 

Directory of flash:/

1 -rw- 4414921 c2960-lanbase-mz.122-25.FX.bin

64016384 bytes total (59601463 bytes free)

Switch#copy flash:c2960-lanbase-mz.122-25.FX.bin tftp://192.168.1.1/ c2960-lanbase-mz.122-25.FX.bin //backup file IOS ra TFTP

8.5. Cài đặt IOS mới cho Switch

Switch#copy tftp://192.168.1.1/c2960-lanbase-mz.122-25.FX.bin flash:c2960-lanbase-mz.122-25.FX.bin  //Copy file IOS mới vào Flash:

Switch#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

Switch(config)#boot system flash:c2960-lanbase-mz.122-25.FX.bin //chuyển boot sang file IOS mới vừa copy vào flash:

Switch(config)#end

Switch#reload //Khởi động lại switch để boot bằng IOS mới

tftp la gi
Cài đặt IOS mới cho Switch

9. So sánh chi tiết sự khác biệt giữa TFTP và FTP

Giao thức FTP (File Transfer Protocol) là giao thức truyền tệp được sử dụng để trao đổi các tệp tin qua mạng TCP/IP. Giao thức FTP tạo lập hai kết nối giữa hệ thống máy chủ và hệ thống máy khách, một cho dữ liệu được truyền và một cho thông tin điều khiển.

Thông tin điều khiển được sử dụng để xác thực người dùng và giao tiếp giữa máy chủ và máy khách. Xác thực được thực hiện thông qua tên người dùng và mật khẩu. Khi quá trình xác thực thành công, các tệp sẽ được chuyển giữa hai hệ thống.

Khác với TFTP protocol, máy chủ FTP sở hữu một giao thức xác thực và mã hóa tại chỗ. Trong trường hợp bị truy cập hạn chế, một dịch vụ FTP từ xa có thể được thực hiện. Dịch vụ này cho phép truy cập nhưng người dùng sẽ bị hạn chế xem thư mục hoặc sửa đổi lệnh.

Xem thêm: FTP là gì | Tổng hợp kiến thức [A – Z] về giao thức FTP

9.1. TCP và UDP

TCP và UDP là hai giao thức truyền tệp được sử dụng phổ biến. TCP cung cấp tính tin cậy cao hơn bằng cách đảm bảo rằng dữ liệu được nhận đầy đủ và chính xác. TCP thực hiện điều này bằng cách xác minh kết nối giữa hai máy tính trước khi bắt đầu truyền dữ liệu. Nếu kết nối bị ngắt, TCP sẽ cố gắng thiết lập lại kết nối trước khi gửi lại dữ liệu bị mất.

UDP là giao thức không kết nối, không cung cấp tính tin cậy cao như TCP. UDP không xác minh kết nối giữa hai máy tính trước khi bắt đầu truyền dữ liệu. Điều này có nghĩa là dữ liệu có thể bị mất hoặc bị hỏng nếu kết nối bị ngắt giữa hai máy tính.

Do đó, TCP thường được sử dụng khi truyền dữ liệu quan trọng, chẳng hạn như tải xuống tệp hoặc truyền video. UDP thường được sử dụng khi truyền dữ liệu không quan trọng, chẳng hạn như phát trực tuyến âm thanh hoặc video.

9.3. TFTP port

FTP sử dụng port 21 và 20, còn TFTP sử dụng port 69.

9.4. Xác thực

FTP là giao thức truyền tệp yêu cầu xác thực người dùng. Điều này có nghĩa là bạn cần cung cấp tên người dùng và mật khẩu hợp lệ để truy cập một máy chủ FTP. Xác thực người dùng giúp bảo vệ máy chủ FTP khỏi truy cập trái phép.

TFTP là giao thức truyền tệp không yêu cầu xác thực người dùng. Điều này có nghĩa là bất kỳ ai cũng có thể truy cập máy chủ TFTP và tải xuống các tệp. Do đó, TFTP protocol thường được sử dụng cho các ứng dụng không yêu cầu bảo mật cao, chẳng hạn như tải xuống firmware cho thiết bị.

Dưới đây là bảng so sánh sự khác nhau giữa TFTP và FTP:

TFTPFTP
Không có quá trình xác thực FTP là giao thức mạng mật khẩu, nghĩa là người dùng phải cung cấp tên người dùng và mật khẩu hợp lệ để truy cập.
Là giao thức truyền tệp đơn giản, không sử dụng mã hóa và chỉ hỗ trợ truyền các tệp nhỏ, tối đa 1 terabyte.Cho phép truy cập nặc danh, nhưng chỉ cho phép truy cập các tệp có sẵn cho tất cả người dùng.
Hoạt động trên cổng UDP 69 Hoạt động trên cổng TCP số 20 và 21
Dựa trên UDP nên hạn chế về độ bảo mậtDựa trên TCP nên tính năng bảo mật cao
Chỉ cho phép truyền file một chiềuSử dụng theo cách tương tác
TFTP là một giao thức truyền tệp đơn giản, được sử dụng cho các mục đích đặc biệt.Giao thức này có mục đích chung, hướng phiên và hoàn chỉnh.
Thích hợp để truyền các cấu hình đến và đi từ thiết bị mạngDùng để upload và download tệp bởi người dùng từ xa
Đơn giản hơnPhức tạp hơn
Nhanh hơnChậm hơn
Giới hạn 5 messenger trong TFTPChứa nhiều lệnh hoặc messenger
Giao thức không đáng tin cậyGiao thức đáng tin cậy

10. Tổng kết

TFTP là một giao thức truyền tệp đơn giản, dễ sử dụng. Tuy nhiên, do các hạn chế về tính bảo mật và hiệu suất, TFTP không còn được sử dụng phổ biến như trước đây. Tuy nhiên, TFTP protocol vẫn được sử dụng trong một số trường hợp nhất định, chẳng hạn như tải xuống firmware cho thiết bị.

Trên đây là một số thông tin cơ bản để giúp bạn giải đáp thắc mắc TFTP là gì. Hy vọng những thông tin này sẽ giúp các bạn hiểu rõ hơn về giao thức này. Để có thể tìm hiểu thêm thông tin, mời bạn truy cập vào Blog của VinaHost TẠI ĐÂY hoặc liên hệ ngay cho chúng tôi nếu cần tư vấn về dịch vụ.

Xem thêm:

SSH là gì | Tổng hợp kiến thức [A-Z] về giao thức SSH

[Tìm hiểu] Giao thức RTP là gì? Tổng quan về giao thức RTP

WAF là gì | Kiến thức [A-Z] về Tường Lửa Ứng Dụng Web

CSF Firewall là gì? | Cài đặt & Cấu hình CSF Firewall A-Z

Đánh giá
5/5 - (5 bình chọn)
Đăng ký nhận tin

Để không bỏ sót bất kỳ tin tức hoặc chương trình khuyến mãi từ Vinahost

    Bài viết liên quan
    Bình luận
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Phản hồi nội tuyến
    Xem tất cả bình luận
    Tổng lượt truy cập: lượt xem