Giao thức FTP là gì? Cách hoạt động và phân biệt FTP, FTPS, SFTP
25/09/2026Khi cần truyền nhiều file giữa máy tính và máy chủ mà không phải đóng gói thành một tệp duy nhất, FTP là một trong những giao thức được sử dụng từ những ngày đầu của Internet.
Trong bài viết dưới đây, Viettel IDC sẽ giải thích FTP là gì, cơ chế hoạt động qua Active và Passive Mode và cách phân biệt với hai giao thức thường bị nhầm lẫn là FTPS và SFTP.

Giao thức FTP là gì?
FTP (File Transfer Protocol) là giao thức mạng ở tầng ứng dụng, dùng để truyền file giữa các máy tính qua mạng TCP/IP, hoạt động theo mô hình client-server. Máy khách (client) chủ động khởi tạo kết nối đến máy chủ (server) từ xa, nơi lưu trữ các tệp tin cần truy cập, để upload hoặc download dữ liệu.
FTP được đặc tả trong RFC 959, xuất bản năm 1985, và sau đó được bổ sung, cập nhật bởi nhiều RFC khác. FTP là một trong những giao thức mạng ra đời sớm nhất và hiện vẫn còn được sử dụng trong một số hệ thống web hosting, hệ thống nội bộ và hạ tầng legacy.
Một khái niệm liên quan thường gặp là Anonymous FTP, cho phép người dùng kết nối đến FTP server công khai mà không cần tài khoản riêng, thường dùng tên đăng nhập "anonymous" kèm địa chỉ email làm mật khẩu tượng trưng. Hình thức này từng phổ biến để phân phối phần mềm, tài liệu công khai trong giai đoạn đầu của Internet, dù ngày nay đã được thay thế phần lớn bởi các phương thức chia sẻ file qua web.
FTP hoạt động như thế nào?
Control connection và Data connection
FTP sử dụng hai kết nối riêng biệt trong một phiên làm việc. Kênh điều khiển (control connection) thường kết nối đến port 21 trên FTP server và duy trì trong suốt phiên làm việc, dùng để gửi lệnh và nhận phản hồi. Kênh dữ liệu (data connection) được thiết lập riêng mỗi khi cần truyền file hoặc danh sách thư mục, và port sử dụng phụ thuộc vào việc phiên đang chạy ở Active Mode hay Passive Mode. Đây là một đặc điểm đáng chú ý của FTP: tách riêng kênh điều khiển và kênh truyền dữ liệu, khác với nhiều giao thức khác gộp chung cả hai vào một kết nối duy nhất.
Các lệnh cơ bản trao đổi qua kênh điều khiển bao gồm USER và PASS để xác thực người dùng, LIST để liệt kê danh sách file trong thư mục, RETR để tải file về client, STOR để tải file lên server, cùng các lệnh điều hướng thư mục như CWD. Toàn bộ các lệnh này đều là văn bản thuần, một phần lý do khiến FTP không mã hóa dễ bị nghe lén nếu bị chặn bắt trên đường truyền.
Active Mode
Trong Active Mode, client thông báo cho server địa chỉ và port mà client đang chờ kết nối, thường thông qua lệnh PORT. Server sau đó chủ động mở data connection về phía client; theo cấu hình mặc định truyền thống, kết nối này có thể xuất phát từ port 20 của server. Vì server là bên chủ động kết nối ngược lại client, Active Mode dễ gặp vấn đề khi client nằm sau tường lửa chặn kết nối đến.
Passive Mode
Trong Passive Mode, server mở một data port và gửi thông tin port đó cho client. Client sau đó chủ động tạo data connection đến server. Vì cả control connection và data connection đều được khởi tạo từ phía client, Passive Mode thường thuận tiện hơn khi client nằm sau NAT hoặc firewall. Cơ chế Passive Mode (PASV) đã có sẵn trong chính RFC 959 từ năm 1985, không phải một bổ sung ra đời sau này.
Trên thực tế, phần lớn FTP Client hiện đại mặc định sử dụng Passive Mode khi kết nối đến server, chính vì lý do tương thích tốt hơn với các thiết lập mạng phổ biến ngày nay, nơi máy tính người dùng thường nằm sau router hoặc tường lửa gia đình/doanh nghiệp. Active Mode vẫn tồn tại và được hỗ trợ, nhưng ít được dùng làm cấu hình mặc định hơn so với trước đây.
Ưu điểm và hạn chế của FTP
Ưu điểm:
- Được hỗ trợ rộng rãi trên nhiều hệ điều hành và hệ thống hosting
- Có thể truyền file và thư mục giữa client và server
- Hỗ trợ các thao tác quản lý file như upload, download, đổi tên, xóa
- Hệ sinh thái FTP Client phong phú, nhiều lựa chọn phần mềm hỗ trợ
- Phù hợp với các hệ thống legacy hoặc môi trường đã triển khai FTP sẵn
Hạn chế:
- FTP truyền thống không mã hóa username, password và dữ liệu, toàn bộ truyền dưới dạng văn bản thuần (plain text)
- Mô hình hai kết nối có thể gây khó khăn khi đi qua NAT hoặc firewall, đặc biệt ở Active Mode
- Không phù hợp để truyền dữ liệu nhạy cảm qua Internet nếu không bổ sung thêm cơ chế bảo vệ
FTP, FTPS và SFTP khác nhau như thế nào?
Đây là điểm gây nhầm lẫn phổ biến nhất khi tìm hiểu về FTP, vì tên gọi giống nhau nhưng bản chất kỹ thuật lại khác biệt đáng kể.
FTPS (FTP Secure) là FTP được bổ sung cơ chế bảo mật TLS. FTPS vẫn sử dụng hệ thống lệnh và mô hình control/data connection của FTP, nhưng có thể bảo vệ quá trình xác thực và dữ liệu bằng mã hóa. Cơ chế dùng TLS để bảo vệ FTP được mô tả trong RFC 4217. FTPS có hai kiểu triển khai: Explicit FTPS thường bắt đầu kết nối trên port 21 rồi mới thương lượng nâng cấp lên TLS, còn Implicit FTPS thường gặp trên port 990, mã hóa toàn bộ kết nối ngay từ đầu.
SFTP (SSH File Transfer Protocol) là một giao thức truyền file hoạt động trên kết nối SSH. SFTP không phải phiên bản của FTP và không sử dụng cơ chế control/data connection của FTP, mà tận dụng hoàn toàn hạ tầng mã hóa và xác thực sẵn có của SSH, thường chạy trên port 22 dù có thể cấu hình sang port khác.
FTP được sử dụng trong những trường hợp nào?
FTP vẫn được sử dụng trong một số môi trường web hosting, ví dụ upload mã nguồn website lên máy chủ hoặc tải file cấu hình về để chỉnh sửa. FTP cũng xuất hiện trong các quy trình sao lưu dữ liệu định kỳ giữa các hệ thống nội bộ. Với việc trao đổi file trong các hệ thống nội bộ hoặc hệ thống legacy vẫn đang sử dụng FTP, giao thức này vẫn đáp ứng tốt nhu cầu vận hành. Tuy nhiên, với dữ liệu truyền qua Internet công cộng hoặc dữ liệu có tính nhạy cảm, nên ưu tiên FTPS hoặc SFTP thay vì FTP truyền thống không mã hóa.
Một ví dụ điển hình trong thực tế vận hành website: khi một lập trình viên cần cập nhật file giao diện hoặc plugin cho website đang chạy trên shared hosting, họ thường dùng FTP Client kết nối đến server bằng thông tin tài khoản hosting được cấp, sau đó kéo thả file trực tiếp từ máy tính cá nhân lên đúng thư mục chứa mã nguồn website, mà không cần truy cập dòng lệnh hay công cụ quản trị phức tạp hơn.

FTP Client là gì? Một số công cụ phổ biến
FTP Client là phần mềm giúp người dùng kết nối và thao tác với FTP server thông qua giao diện trực quan, thay vì phải gõ lệnh thủ công. FileZilla là một trong những FTP Client miễn phí phổ biến nhất, hỗ trợ đồng thời cả FTP, FTPS và SFTP trong cùng một phần mềm. WinSCP cũng là lựa chọn quen thuộc, đặc biệt phổ biến trên môi trường Windows, hỗ trợ SFTP và FTP song song.
Khi nào nên và không nên sử dụng FTP?
Nên hạn chế dùng FTP truyền thống, không mã hóa, trên môi trường Internet công cộng hoặc để truyền dữ liệu nhạy cảm như thông tin đăng nhập hệ thống, dữ liệu khách hàng. Trong những trường hợp này, nên ưu tiên FTPS hoặc SFTP để đảm bảo thông tin đăng nhập và dữ liệu truyền tải được mã hóa trong suốt quá trình truyền. FTP truyền thống vẫn có thể chấp nhận được trong môi trường mạng nội bộ, cô lập, không tiếp xúc trực tiếp với Internet công cộng.
Câu hỏi thường gặp về FTP (FAQs)
FTP có an toàn không? FTP truyền thống không mã hóa dữ liệu và thông tin đăng nhập, nên không được xem là an toàn khi sử dụng qua Internet công cộng. Nếu cần đảm bảo an toàn, nên chuyển sang dùng FTPS hoặc SFTP thay vì FTP thuần túy.
Nên chọn FTPS hay SFTP? Cả hai đều mã hóa được dữ liệu truyền tải, nhưng dựa trên nền tảng kỹ thuật khác nhau. FTPS phù hợp khi hệ thống hiện tại đã quen thuộc với cấu trúc lệnh của FTP và muốn bổ sung lớp bảo mật TLS. SFTP phù hợp khi hạ tầng đã sẵn có SSH, hoặc muốn tận dụng cơ chế xác thực, mã hóa đã được kiểm chứng rộng rãi của SSH.
FTP có cần phần mềm riêng để sử dụng không? Không bắt buộc phải dùng FTP Client có giao diện đồ họa. Người dùng có thể kết nối FTP bằng FileZilla, WinSCP, công cụ dòng lệnh hoặc các phần mềm tự động hóa có hỗ trợ FTP. Với người dùng phổ thông, FTP Client thường là lựa chọn thuận tiện nhất. Các trình duyệt hiện đại như Chrome và Firefox không còn hỗ trợ FTP trực tiếp như trước đây, Chrome đã loại bỏ hỗ trợ này từ phiên bản 88, còn Firefox từ phiên bản 90.
Kết luận
FTP là giao thức truyền file lâu đời, vẫn giữ vai trò quan trọng trong quản lý web hosting và các hệ thống nội bộ. Tuy nhiên, đặc tính không mã hóa của FTP truyền thống là hạn chế cần lưu ý khi truyền dữ liệu qua Internet công cộng. Hiểu rõ sự khác biệt giữa FTP, FTPS và SFTP, đặc biệt việc SFTP không phải một biến thể của FTP mà là giao thức hoàn toàn riêng dựa trên SSH, giúp người dùng lựa chọn đúng công cụ cho đúng nhu cầu bảo mật của từng hệ thống.
Để tìm hiểu thêm về dịch vụ, vui lòng liên hệ đến Viettel IDC:
- Hotline: 1800.8088 (miễn phí cước gọi)
- Fanpage: https://www.facebook.com/viettelidc
- Website: https://viettelidc.com.vn/
Viettel IDC - Nhà cung cấp dẫn đầu về giải pháp Trung tâm dữ liệu và Điện toán đám mây tại Việt Nam
Tin nổi bật
Tin liên quan
Ghidra là gì? Chức năng và ứng dụng trong reverse engineering
Ghidra là gì? Tìm hiểu công cụ reverse engineering mã nguồn mở của NSA, các chức năng chính, ứng dụng thực tế và điểm khác biệt với IDA Pro.
10 công cụ tối ưu hóa website theo từng mục tiêu
Tổng hợp 10 công cụ tối ưu hóa web cho tốc độ, SEO, trải nghiệm người dùng và chuyển đổi, kèm bảng so sánh và gợi ý lựa chọn theo nhu cầu.
So sánh WHOIS và DNS Lookup: Điểm khác nhau và khi nào nên sử dụng
WHOIS và DNS Lookup khác nhau thế nào? Tìm hiểu định nghĩa, bảng so sánh, vai trò của RDAP thay thế WHOIS, và khi nào nên dùng công cụ nào.
Cách test tải hệ thống: Quy trình và công cụ phổ biến
Cách test tải hệ thống hiệu quả gồm những bước nào? Tìm hiểu quy trình, chỉ số cần đo và công cụ phổ biến như JMeter, k6.
Cloud Monitoring là gì? So sánh Hybrid Cloud và Multi Cloud Monitoring
Cloud Monitoring là quá trình theo dõi, quản lý và đánh giá hiệu suất của các tài nguyên và dịch vụ đám mây, bao gồm giám sát máy chủ, cơ sở dữ liệu, ứng dụng và hệ thống mạng
Hybrid Cloud Storage là gì? Lợi ích và trường hợp sử dụng
Hybrid Cloud Storage là thuật ngữ mô tả phương pháp quản lý lưu trữ đám mây mà trong đó, tài nguyên cục bộ và tài nguyên cloud đều được sử dụng
NLP là gì? Tìm hiểu về lập trình ngôn ngữ tư duy
NLP - Natural Language Processing (lập trình ngôn ngữ tư duy) là một nhánh của trí tuệ nhân tạo (AI), giúp máy tính nhận diện, hiểu và tạo ra văn bản hoặc lời nói giống như con người.
Top 9 công cụ chuyển ảnh sang WebP đáng dùng hiện nay
Tổng hợp công cụ chuyển ảnh sang WebP đáng dùng nhất, gồm công cụ online, phần mềm desktop và dòng lệnh, kèm bảng so sánh và gợi ý chọn theo nhu cầu.
Nameserver là gì? Cách hoạt động, kiểm tra và thay đổi Nameserver
Nameserver là gì và hoạt động như thế nào? Tìm hiểu các loại DNS server, cách phân biệt Nameserver với DNS record, kiểm tra và đổi Nameserver tên miền.
Bình luận ()