Lệnh tftp trong linux

Lệnh TFTP Trong Linux: Hướng Dẫn Chi Tiết Cho Người Mới Bắt Đầu

Bạn mới làm quen với Linux và đang tìm hiểu về các công cụ truyền tải file? Lệnh tftp có thể là một lựa chọn hữu ích, đặc biệt trong môi trường mạng nội bộ hoặc khi cần truyền các file cấu hình nhỏ. Bài viết này sẽ cung cấp cho bạn cái nhìn tổng quan về tftp, cách cài đặt, sử dụng và những lưu ý quan trọng khi làm việc với nó.

TFTP Là Gì?

TFTP (Trivial File Transfer Protocol) là một giao thức truyền file đơn giản, thường được sử dụng để truyền tải các file nhỏ giữa các máy tính trong mạng. Khác với FTP, TFTP không yêu cầu xác thực người dùng bằng mật khẩu, do đó nó nhanh chóng và dễ sử dụng hơn. Tuy nhiên, chính vì sự đơn giản này mà TFTP cũng có một số hạn chế về bảo mật.

Tại Sao Nên Sử Dụng TFTP?

  • Đơn giản và nhanh chóng: TFTP dễ cài đặt và sử dụng, phù hợp với các tác vụ truyền file nhanh.
  • Không cần xác thực: Không yêu cầu mật khẩu, tiết kiệm thời gian và công sức.
  • Thích hợp cho boot mạng: Thường được sử dụng trong quá trình khởi động hệ điều hành từ mạng (PXE boot).
  • Truyền file cấu hình: Lý tưởng cho việc truyền các file cấu hình nhỏ cho các thiết bị mạng.

Cài Đặt TFTP Server và Client

Để sử dụng tftp, bạn cần cài đặt cả server và client trên hệ thống của mình. Dưới đây là hướng dẫn cài đặt trên Ubuntu/Debian:


    sudo apt update
    sudo apt install tftpd-hpa tftp
  

Sau khi cài đặt, bạn cần cấu hình TFTP server. Mở file cấu hình /etc/default/tftpd-hpa bằng trình soạn thảo văn bản yêu thích:


    sudo nano /etc/default/tftpd-hpa
  

Thay đổi các dòng sau:


    TFTP_USERNAME="tftp"
    TFTP_DIRECTORY="/var/lib/tftpboot"
    TFTP_ADDRESS="0.0.0.0:69"
    TFTP_OPTIONS="-l -s"
  

Giải thích:

  • TFTP_USERNAME: User mà TFTP server sẽ chạy dưới quyền.
  • TFTP_DIRECTORY: Thư mục mà TFTP server sẽ sử dụng để lưu trữ và truy cập các file.
  • TFTP_ADDRESS: Địa chỉ IP và cổng mà TFTP server sẽ lắng nghe.
  • TFTP_OPTIONS: Các tùy chọn cho TFTP server. -l để ghi log, -s để chạy ở chế độ standalone.

Khởi động lại TFTP server để áp dụng các thay đổi:


    sudo systemctl restart tftpd-hpa
  

Sử Dụng Lệnh TFTP

Để sử dụng lệnh tftp, bạn cần biết địa chỉ IP của TFTP server và tên file bạn muốn truyền. Dưới đây là một số ví dụ:

Kết nối đến TFTP Server


    tftp <địa_chỉ_IP_của_TFTP_server>
  

Ví dụ:


    tftp 192.168.1.100
  

Tải File từ TFTP Server


    get 
  

Ví dụ:


    get myconfig.txt
  

Gửi File lên TFTP Server


    put 
  

Ví dụ:


    put newconfig.txt
  

Thoát khỏi TFTP Client


    quit
  

Ví Dụ Thực Tế

Ví dụ 1: Một kỹ sư mạng sử dụng TFTP để sao lưu cấu hình của router Cisco vào server. Kỹ sư này sử dụng lệnh get để tải file cấu hình từ router về server TFTP.

Ví dụ 2: Một quản trị viên hệ thống sử dụng TFTP để triển khai file cấu hình mới cho hàng loạt máy tính trong mạng. Quản trị viên này sử dụng lệnh put để đẩy file cấu hình lên TFTP server, sau đó các máy tính sẽ tải file này về.

Ví dụ 3: Trong môi trường boot mạng (PXE), TFTP được sử dụng để truyền kernel và initrd image đến máy client, cho phép máy client khởi động từ mạng mà không cần ổ cứng.

Bảng So Sánh TFTP và FTP

Tính Năng TFTP FTP
Xác thực Không Có (username/password)
Bảo mật Thấp Cao hơn
Chức năng Đơn giản, truyền file cơ bản Nhiều chức năng hơn (ví dụ: đổi tên file, tạo thư mục)
Ứng dụng Boot mạng, truyền file cấu hình nhỏ Truyền file lớn, quản lý file
Cổng 69 21 (điều khiển), 20 (dữ liệu)

Lưu Ý Quan Trọng Về Bảo Mật

Vì TFTP không có cơ chế xác thực, bất kỳ ai có quyền truy cập vào mạng đều có thể truy cập vào TFTP server. Do đó, bạn cần tuân thủ các nguyên tắc bảo mật sau:

  • Hạn chế quyền truy cập: Chỉ cho phép các máy tính cần thiết truy cập vào TFTP server.
  • Sử dụng tường lửa: Cấu hình tường lửa để chặn các kết nối không mong muốn đến TFTP server.
  • Đặt thư mục TFTP ở vị trí an toàn: Tránh đặt thư mục TFTP ở các vị trí dễ bị tấn công.
  • Chỉ truyền các file không nhạy cảm: Không nên sử dụng TFTP để truyền các file chứa thông tin bí mật.

FAQ (Câu Hỏi Thường Gặp)

Câu hỏi: Làm thế nào để kiểm tra xem TFTP server đã chạy chưa?

Trả lời: Sử dụng lệnh sudo systemctl status tftpd-hpa.

Câu hỏi: Làm thế nào để thay đổi thư mục TFTP?

Trả lời: Chỉnh sửa file /etc/default/tftpd-hpa và thay đổi giá trị của TFTP_DIRECTORY.

Câu hỏi: TFTP có an toàn để sử dụng trên internet không?

Trả lời: Không. TFTP không được thiết kế để sử dụng trên internet do thiếu bảo mật. Nên sử dụng các giao thức an toàn hơn như SFTP hoặc SCP.

Kết Luận

TFTP là một công cụ hữu ích để truyền file đơn giản trong môi trường mạng nội bộ. Tuy nhiên, bạn cần lưu ý đến các vấn đề bảo mật khi sử dụng nó. Hy vọng bài viết này đã cung cấp cho bạn những kiến thức cần thiết để bắt đầu sử dụng lệnh tftp trong Linux. Chúc bạn thành công!

Last Updated : 20/08/2025