Tổng quan về giao thức FTP

tong-quan-ve-giao-thuc-ftp-logoFTP ( File Transfer Protocol ) là giao thức được xây dựng dựa theo tiêu chuẩn TCP. FTP cung cấp cơ chế truyền tin dưới dạng file thông qua giao thức TCP/IP. FTP sử dụng 2 cổng gồm : cổng 20 để truyền dữ liệu (data port) và cổng 21 dùng để truyền câu lệnh ( command port )

 

Hoạt động của FTP :

a ) Active FTP

tong-quan-ve-giao-thuc-ftp-01

Bước 1 : Client sử dụng 1 cổng ngẫu nhiên gọi là N ( N > 1024 ) dùng để khởi tạo kết nối đến port 21 của FTP Server (command port ) có kèm theo giá trị port N+1 (data port)

Ở đây, client sử dụng port có giá trị N=1026 có kèm theo thông tin port 1027 để kết nối đến port 21 của FTP Server

Port 21 của Server và Port 1026 của Client là 2 port truyền câu lệnh ( command port )

Bước 2 : Server gửi xác nhận ACK về cổng lệnh (command port) của client (Ở đây gửi về port 1026 của Client)

Bước 3 : Server khởi tạo kết nối từ port 20 của mình đến cổng dữ liệu mà client đã khai báo trước đó ( Ở đây cổng dữ liệu của Client là 1027 )

Bước 4 : Client gửi ACK phản hồi cho Server

Khi FTP Server hoạt động ở chế độ active. Client không tạo kết nối thật sự vào cổng dữ liệu của FTP Server , mà chỉ đơn giản là thông báo cho Server biết rằng nó đang lắng nghe trên cổng nào và Server sẽ kết nối ngược về client cổng đó.

 

b ) Passive FTP

tong-quan-ve-giao-thuc-ftp-02

Bước 1 : Client kết nối vào cổng lệnh của server phát lệnh PASV (lệnh mà client báo cho Server biết nó đang ở chế độ passive )

Bước 2 : Server trả lời bằng Port 2024 và cho client biết cổng 2024 đang mở để nhận kết nối dữ liệu

Bước 3 : Client tạo kết nối truyền dữ liệu từ cổng N+1 là 1027 đến cổng 2024 của Server

Bước 4 : Server xác nhận ACK cho cổng dữ liệu của Client

FTP Server là gì :

Là máy chủ lưu giữ tài nguyên được hỗ trợ bởi giao thức FTP cho phép truyền dữ liệu trên mạng

VD: Wu-ftpd , ProftpD , Pureftpd , Vsftpd trên Linux hoặc dịch vụ FTP Server trên Windows Server…

FTP Client là gì :

Là chương trình cho phép giao tiếp với FTP Server. Để thiết lập một kết nối FTP ta cần có địa chỉ IP hoặc tên máy tính , tài khoản gồm user và password.

VD : FileZilla , WinSCP…

Ads

Leave a Reply