-
Thông tin
-
Hỏi đáp
Tìm hiểu về gia tốc FTP Và website an toàn - Nguyên lý điều hành - Học Viện Kỹ Thuật Mật Mã
File Transfer Protocol (FTP) là một giao thức truyền tải tệp tin, truyền tin từ máy tính này đến máy tính khác thông qua một mạng TCP hay qua Internet. Thông qua giao thức FTP người dùng có thể tải dữ liệu như: hình ảnh, văn bạn, nhạc, video,… từ máy tính của mình lên một máy chủ đặt ở một nơi xa, hoặc tải các tệp từ máy chủ về máy tính của mình. Tài liệu giúp bạn tham khảo và đạt kết quả tốt. Mời bạn đọc đón xem!
Nguyên lý hệ điều hành 32 tài liệu
Học viện kỹ thuật mật mã 206 tài liệu
Tìm hiểu về gia tốc FTP Và website an toàn - Nguyên lý điều hành - Học Viện Kỹ Thuật Mật Mã
File Transfer Protocol (FTP) là một giao thức truyền tải tệp tin, truyền tin từ máy tính này đến máy tính khác thông qua một mạng TCP hay qua Internet. Thông qua giao thức FTP người dùng có thể tải dữ liệu như: hình ảnh, văn bạn, nhạc, video,… từ máy tính của mình lên một máy chủ đặt ở một nơi xa, hoặc tải các tệp từ máy chủ về máy tính của mình. Tài liệu giúp bạn tham khảo và đạt kết quả tốt. Mời bạn đọc đón xem!
Môn: Nguyên lý hệ điều hành 32 tài liệu
Trường: Học viện kỹ thuật mật mã 206 tài liệu
Thông tin:
Tác giả:
Tài liệu khác của Học viện kỹ thuật mật mã
Preview text:
HỌC VIỆN KỸ THUẬT MẬT MÃ ĐỀ TÀI
TÌM HIỂU VỀ GIAO THỨC FTP VÀ WEBSITE AN TOÀN Hà Nội, 27/2/2023 MỤC LỤC
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
DANH MỤC BẢNG BIỂU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
DANH MỤC HÌNH VẼ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
TÓM TẮT NỘI DUNG ĐỀ TÀI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
LỜI NÓI ĐẦU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
CHƯƠNG 1. TỔNG QUAN VỀ CÁC GIAO THỨC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Tổng quan về giao thức FTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1 Giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.2 Nguyên lý hoạt động. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.3 Ưu, nhược điểm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
CHƯƠNG 2. CÁCH THỨC TRIỂN KHAI VÀ CÔNG CỤ SỬ DỤNG. . . . . . . . . . . . . . . . . . 8
2.1 Tải và cài đặt FileZilla Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8
2.2.1 Cấu hình FileZilla với Quickconnect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.2 Cấu hình FileZilla với Site Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3 Sử dụng FileZilla để truyền file. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.1 Upload file lên Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14
2.3.2 Download file từ FTP Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.3 Đổi tên file trên Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.4 Xóa file trên Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.3.5 Một số chức năng khác. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21
CHƯƠNG 3. BẮT GÓI TIN BẰNG WIRESHARK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.1 Giới thiệu phần mềm Wireshark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Sử dụng Wireshark để bắt gói tin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23
3.3 Phân tích gói tin với Wireshark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3.1 Tìm kiếm các gói tin FTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
3.3.2 Cách đọc các gói tin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
KẾT LUẬN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
TÀI LIỆU THAM KHẢO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
PHỤ LỤC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT FTP File Transfer Protocol SSL Secure Sockets Layer TLS Transport Layer Secure SSH Secure Socket Shell TCP Transmission Control Protocol TCP/IP Transmission Control Protocol/ Internet Protocol PI Protocol Interpreter DTP Data Transfer Process DES Data Encryption Standard 3-DES Triple-DES MD5 Message Digest Algorithm RSA Rivest Shamir Adleman SHA-1 Secure Hash Algorithm HTTP HyperText Transfer Protocol IMAP
Internet Message Access Protocol i DANH MỤC HÌNH VẼ
Hình 1.1 Mô hình kết nối dữ liệu FTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Hình 1.2 Mô hình hoạt động FTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Hình 1.3 Quy trình chứng thực người dùng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Hình 2.1 Tải phần mềm FileZilla Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
Hình 2.2 Cài đặt phần mềm FileZilla Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Hình 2.3 Cài đặt phần mềm FileZilla Client. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19
Hình 2.4 Giao diên FileZilla sau khi cài đặt. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Hình 2.5 Các thông số cơ bản khi cấu hình với Quickconnect. . . . . . . . . . . . . . . . . . . 20
Hình 2.6 Thông báo khi kết nối thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Hình 2.7 Cấu hình FileZilla với Site Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Hình 2.8 Giao diện Site Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Hình 2.9 Các thông số cơ bản của Site Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Hình 2.10 Thông báo khi kết nối thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Hình 2.11 Giao diện sau khi kết nối FTP thành công đến Server. . . . . . . . . . . . . . . . . 24
Hình 2.12 Upload file từ máy tính lên Server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
Hình 2.13 Upload file thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25
Hình 2.14 File hiển thị trên Mozilla Firefox. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
Hình 2.15 Download file từ server về máy tính. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Hình 2.16 Download file thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Hình 2.17 Đổi tên file trên server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Hình 2.18 Đổi tên file thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28
Hình 2.19 Xóa file trên server. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29
Hình 2.20 Xóa file thành công. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Hình 2.21 Một số chức năng khác. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Hình 3.1 Bắt gói tin Wireshark. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Hình 3.2 Chọn card mạng trên máy ảo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Hình 3.3 Lấy địa chỉ mạng trên máy ảo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Hình 3.4 Lấy địa chỉ IP trên máy tính. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35
Hình 3.5 Các gói tin được capture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Hình 3.6 Tìm kiếm các gói tin theo giao thức FTP. . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Hình 3.7 Thông tin chi tiết của packet ở cửa sổ Packet Details. . . . . . . . . . . . . . . . . . . 38
Hình 3.8 Thông tin các gói tin ở cửa sổ Packet Bytes. . . . . . . . . . . . . . . . . . . . . . . . . . 39
Hình 3.9 Hộp thoại trao đổi dữ liệu giữa Client và Server. . . . . . . . . . . . . . . . . . . . . . .40
TÓM TẮT NỘI DUNG ĐỀ TÀI
Ngày nay, Internet đóng vai trò rất lớn trong việc phát triển kinh tế xã hội, là
nhân tố thúc đẩy xã hội ngày càng phát triển, tạo điều kiện cho mọi người trên thế giới
có thể kết nối, trao đổi, trò chuyện với nhau. Chính vì thế, Internet không thể thiếu
trong xã hội hiện nay. Trong xã hội hiện nay, việc lướt web, chat, email,… đang trở lên
phổ biến đối với mọi người trên thế giới. Bên cạnh sự phát triển đó, vấn đề trao đổi file
là không thể thiếu đối với người dùng đầu cuối. Giao thức FTP là giao thức trao đổi
file khá phổ biến hiện nay. Tuy nhiên, không phải ai cũng hiểu rõ về cách thức hoạt
động của các giao thức này. Chính vì vậy, nhóm em đã đi vào tìm hiểu về giao thức
FTP; tìm hiểu chi tiết hoạt động của giao thức, ưu, nhược điểm của giao thức FTP, từ
đó mô tả cách thức sử dụng và triển khai như một hướng dẫn để người dùng có thể thực hiện được.
Bố cục nội dung đề tài được trình bày như sau:
• Chương 1. Tổng quan về giao thức FTP và website an toàn: ở chương này,
chúng em đi tìm hiểu tổng quan về giao thức FTP, cách thức hoạt động, ưu
nhược điểm của giao thức FTP.
• Chương 2. Cơ sở lý thuyết: ở chương 2, phần mềm được sử dụng là
FileZilla Client và máy ảo Vmware để thực hiện từng bước quá trình truyền
file từ client đến server.
• Chương 3. Bắt gói tin bằng Wireshark: ở chương này, phần mềm được sử
dụng là Wireshark dùng để bắt và minh họa gói tin. LỜI NÓI ĐẦU
Trong những năm gần đây, cuộc cách mạng khoa học và công nghệ, đặc biệt là
sự bùng nổ của công nghệ thông tin và truyền thông đã tác động tích cực đến mọi mặt
của đời sống chính trị, kinh tế, văn hóa, xã hội của loài người, tạo ra sự phát triển vượt
bậc chưa từng có trong lịch sử. Công nghệ thông tin không chỉ là ngành công nghiệp
dịch vụ phát triển với tốc độ cao, đóng góp lớn vào nguồn thu của đất nước mà còn là
động lực phát triển hạ tầng quan trọng cho sự phát triển kinh tế xã hội.
Ngày nay, không một ngành nào, lĩnh vực nào phát triển mà không dựa vào sự
hỗ trợ của công nghệ thông tin. Trong đó việc chia sẻ tài nguyên, cơ sở dữ liệu đóng
vai trò hết sức quan trọng trong một tổ chức hay một doanh nghiệp nào đó, công việc
đòi hỏi chúng ta phải có những nguồn thông tin chính xác và kịp thời trong mọi hoàn
cảnh để đề ra quyết định đúng đắn, đem lại hiệu quả trong các hoạt động. Bên cạnh sự
phát triển đó, vấn đề trao đổi file là không thể thiếu đối với người dùng đầu cuối. Các
giao thức FTP, FTPS, SFTP là các giao thức trao đổi đổi file khá phổ biến hiện nay.
Tuy nhiên, không phải ai cũng hiểu rõ về cách thức hoạt động của các giao thức này.
Chính vì vậy, nhóm em đã đi vào tìm hiểu về các giao thức FTP, FTPS và SFTP; tìm
hiểu chi tiết hoạt động các giao thức, ưu, nhược điểm của các giao thức từ đó mô tả
cách thức sử dụng và triển khai như một hướng dẫn để người dùng có thể thực hiện được.
Sau thời gian nghiên cứu và thực hiện, các mục tiêu cơ bản đã hoàn thành. Tuy
nhiên, thời gian thực hiện tương đối ngắn nên không thể tránh khỏi những thiếu sót.
Rất mong được sự góp ý của thầy cô, cũng như các học viên để đề tài này được hoàn thiện hơn.
Xin cho phép em kính gửi đến các thầy cô trong trường Học viện kỹ thuật mật
mã những lời chúc tốt đẹp nhất, và xin gửi lời cảm ơn chân thành đến Thầy Nguyễn
Mạnh Thắng đã nhiệt tình giúp đỡ chúng em hoàn thành đề tài.
CHƯƠNG 1. TỔNG QUAN VỀ CÁC GIAO THỨC
Ở chương 1, chúng ta sẽ tìm hiểu tổng quan về các giao thức; chi tiết hoạt động
của các giao thức; ưu, nhược điểm của các giao thức; so sánh sự khác nhau, cái tiến
của các giao thức và nêu rõ những trường hợp nào nên sử dụng giao thức FTP, FTPS và SFTP.
1.1 Tổng quan về giao thức FTP
1.1.1 Giới thiệu
File Transfer Protocol (FTP) là một giao thức truyền tải tệp tin, truyền tin từ
máy tính này đến máy tính khác thông qua một mạng TCP hay qua Internet. Thông
qua giao thức FTP người dùng có thể tải dữ liệu như: hình ảnh, văn bạn, nhạc, video,
… từ máy tính của mình lên một máy chủ đặt ở một nơi xa, hoặc tải các tệp từ máy
chủ về máy tính của mình.
FTP cho phép truyền và tải files, quản lý thư mục. FTP không được thiết kế để
truy nhập và thi hành files. Có thể sử dụng dịch vụ này với mục đích chia sẻ dữ liệu,
nó cho phép người dùng download, upload những dữ liệu có dung lượng lớn mà không
cần phải dùng USB, CD hay mail để gửi. Thay vì upload lên một host trên Internet,
chúng ta cũng có thể biến máy tính của mình thành nơi lưu trữ, chia sẻ dữ liệu với
người dùng trên Internet.[1]
Hơn nữa, chúng ta cũng có thể cùng lúc tải (upload/download) nhiều tập tin
cùng một lúc để tiết kiệm thời gian. Tuy nhiên, yếu tố tốc độ đường truyền cũng đóng
vai trò quan trọng trong việc truyền tải dữ liệu qua FTP.
Về phía người dùng, khi tiếp cận FTP sẽ làm quen với các thông số sau:
- Địa chỉ máy chủ FTP: có dạng tên miền hoặc địa chỉ IP
• Ví dụ về dạng tên miền: google.com,…
• Ví dụ về dạng IP: 216.58.199.110,…
- Địa chỉ FTP theo dạng tên miền được dùng phổ biến hơn vì dễ nhớ so với
những con số của địa chỉ IP. 1
- Username/password để đăng nhập vào máy chủ FTP. Tùy thuộc vào quản trị
viên cấp quyền hạn trên máy chủ FTP mà tài khoản FTP của bạn có những
quyền cơ bản như: download, upload, tạo thư mục, sao chép hay xóa dữ liệu.
1.1.2 Nguyên lý hoạt động
1.1.2.1 Mô hình hoạt động
Trong phiên làm việc của FTP, người dùng làm việc trên máy tính của mình và
trao đổi file với một máy tính ở chỗ khác. Để truy cập tới máy tính khác, người dùng
phải đăng nhập thông qua việc cung cấp định danh người dùng và mật khẩu (một số
máy chủ không yêu cầu). Sau khi những thông tin này được kiểm chứng thì công việc
truyền file từ hệ thống file trên máy tính của mình đến hệ thống file ở đầu kia mới có thể thực hiện.
Giao thức FTP hoạt động trên mô hình cơ bản của việc truyền và nhận dữ liệu
từ máy Client đến máy Server. Mặc dù giao thức FTP sử dụng kết nối TCP, nhưng nó
không chỉ dùng một kênh TCP như phần lớn các giao thức truyền thông khác. Qúa
trình truyền và nhận dữ liệu giữa máy Client và Server lại được tạo nên từ 2 tiến trình
TCP logic là Control Connection và Data Connection.[2]
• Control Connection: đây là phiên làm việc TCP logic đầu tiên được tạo ra khi
quá trình truyền dữ liệu bắt đầu. Tuy nhiên, tiến trình này chỉ kiểm soát các
thông tin điều khiển đi qua nó, ví dụ như thông tin định danh người dùng, mật
khẩu hay các tập lệnh,. . Qúa trình này sẽ được duy trì trong suốt quá trình phiên làm việc diễn ra.
• Data Connection: là một kết nối dữ liệu TCP được tạo ra với mục đích chuyên
biệt là tải dữ liệu giữa máy Client và máy Server. Kết nối sẽ tự động ngắt khi
quá trình truyền tải dữ liệu hoàn tất.
• Compressed mode: phương thức truyền sử dụng kỹ thuật nén dữ liệu khá đơn
giản là “run-length encoding”. Với thuật toán này, các đoạn dữ liệu bị lặp sẽ
được phát hiện và loại bỏ để giảm chiều dài của toàn bộ thông điệp khi gửi đi.
Hình 1.1 Mô hình kết nối dữ liệu FTP
Hoạt động kết nối dữ liệu FTP được thực hiện qua các bước sau:
• Bước 1: Client kết nối điều khiển FTP server tại cổng 21, sử dụng giao thức TCP.
• Bước 2: Client sẽ gửi username và password lên server để chứng thực, nếu
chứng thực không thành công thì server yêu cầu client nhập lại username và
password, nếu thành công thì cấp phép cho client truy cập.
• Bước 3: Client được cấp phép thông qua kết nối điều khiển.
• Bước 4: Client xem thư mục ở xa bằng việc gửi các lệnh thông qua kết nối điều khiển.
• Bước 5: Khi server nhận lệnh truyền tập tin, server mở kết nối TCP thứ 2
với cổng 20 (truyền tập tin) đến client.
• Bước 6: Sau khi truyền 1 tập tin, server đóng kết nối dữ liệu.
• Bước 7: Server mở kết nối dữ liệu TCP khác để truyền tập tin khác.
• Bước 8: Server giữ lại trạng thái thư mục hiện hành, xác thực trước đó.
Sự phân chia thành 2 kênh riêng biệt này tạo ra sự linh động trong cách hoạt
động của FTP nhưng nó cũng tạo ra sự phức tạp.
Do chức năng điều khiển và dữ liệu được truyền tải bằng cách sử dụng các kênh
riêng biệt nên mô hình FTP chia phần mềm trên mỗi thiết bị thành 2 thành phần giao
thức logic chịu trách nhiệm cho mỗi kênh:
• Protocol interpreter (PI): là thành phần quản lý kênh điều khiển, phát và nhận lệnh trả lời.
• Data transfer process (DTP): chịu trách nhiệm gửi và nhận dữ liệu giữa client và server.
Ngoài 2 thành phần trên, tiến trình phía người dùng còn có 1 thành phần thứ 3
là giao diện người dùng (user interface) dùng để tương tác với người dùng FTP, thành
phần này không có bên phía server.
Hình 1.2 Mô hình hoạt động FTP
Tiến trình bên phía server:
• Server Protocol Interpreter (Server-PI): chịu trách nhiệm quản lý điều khiển
kết nối trên server. Nó lắng nghe yêu cầu kết nối hướng từ users trên cổng
dành riêng. Khi kết nối đã được thiết lập, nó nhận lệnh từ User-PI, gửi trả lời
lại và quản lí tiến trình truyền dữ liệu trên server.
• Server Data Transfer Process (Server-DTP): Làm nhiệm vụ gửi hoặc nhận
file từ bộ phận User-DTP. Server DTP vừa làm nhiệm vụ thiết lập kết nối
kênh dữ liệu và lắng nghe một kết nối kênh dữ liệu từ user. Nó tương tác với
server file trên hệ thống cục bộ để đọc và chép file.
Các tiến trình bên phía Client:
• User Interface: Đây là chương trình được chạy trên máy tính, nó cung cấp
giao diện xử lí cho người dùng. Nó cho phép sử dụng các lệnh đơn giản hướng
tới người dùng, và cho phép người điều khiển phiên FTP theo dõi được các
thông tin và kết quả xảy ra trong tiến trình.
• User Protocol Interpreter (User-PI): Chịu trách nhiệm quản lý kênh điều
khiển phía Client. Nó khởi tạo phiên kết nối FTP bằng việc phát hiện ra yêu
cầu tới phía server-PI. Khi kết nối đã được thiết lập, nó xử lí các lệnh nhận
được trên giao diện người dùng, gửi chúng tới Server-PI, và nhận phản hồi
trở lại. Nó cũng quản lý tiến trình User-DTP.
• User Data Transfer Process (User-DTP): là bộ phận DTP nằm ở phía người
dùng, làm nhiệm vụ gửi hoặc nhận dữ liệu từ Server-DTP. User-DTP có thể
thiết lập hoặc lắng nghe yêu cầu kết nối kênh dữ liệu trên server. Nó tương
tác với thiết bị lưu trữ file phía client.
1.1.2.2 Thiết lập kênh điều khiển và chứng thực người dùng
Trước khi kết nối được sử dụng để thực sự truyền file, kênh điều khiển cần phải
được thiết lập. Như trong các giao thức client/server khác, FTP server tuân theo một
luật passive trong kênh điều khiển. Bộ phận Server Protocol Interpreter (Server-PI) sẽ
lắng nghe cổng TCP dành riêng cho kết nối FTP là cổng 21. Phía User-PI sẽ tạo kết
nối bằng việc mở một kết nối TCP từ thiết bị người dùng tới server trên cổng đó. Nó
sử dụng một cổng bất kì làm cổng nguồn trong phiên kết nối TCP.
Khi TCP đã được cài đặt xong, kênh điều khiển giữa các thiết bị sẽ được thiết
lập, cho phép các lệnh được thực hiện truyền từ User-PI tới Server-PI, và Server-PI sẽ
đáp trả kết quả là các mã thông báo. Bước đầu tiên sau khi đã đi vào hoạt động là bước
đăng nhập của người dùng (login sequence). Bước này có hai mục đích:
• Access Control (Điều khiển truy cập): Quá trình chứng thực cho phép hạn chế
truy cập tới server với những người dùng nhất định. Nó cũng cho phép server
điều khiển loại truy cập như thế nào đối với từng người dùng.
• Resource Selection (Chọn nguồn cung cấp): Bằng việc nhận dạng người dùng
tạo kết nối, FTP server có thể đưa ra quyết định sẽ cung cấp những nguồn nào
cho người dùng đã được nhận dạng đó.
Trình tự truy cập và chứng thực FTP: quy luật chứng thực FTP khá đơn giản,
chỉ là cung cấp username/password để đăng nhập, được thể hiện theo mô hình sau:
Hình 1.3 Quy trình chứng thực người dùng
Bước thứ nhất, người dùng gửi một username từ User-PI tới Server-PI bằng
lệnh USER. Sau đó password của người dùng được gửi đi bằng lệnh PASS.
Bước thứ hai, server kiểm tra tên người dùng và password trong database người
dùng của nó. Nếu người dùng hợp lệ, server sẽ gửi trả lời một thông báo tới người
dùng rằng phiên làm việc đã được mở. Nếu người dùng không hợp lệ, server yêu cầu
người dùng thực hiện lại việc chứng thực. Sau này số lần chứng thực sai nhất định,
server sẽ ngắt kết nối.
1.1.2.3 Các phương thức kết nối
Gồm 2 phương thức kết nối: FTP active data connection và FTP passive data connection.[2]
• FTP active data connection:
o Client khởi tạo kết nối điều khiển.
o Server khởi tạo kết nối dữ liệu.
• FTP passive data connection:
o Client khởi tạo kết nối điều khiển.
o Server thông báo cho client port cần kết nối dữ liệu.
o Client kết nối dữ liệu với port đã được cho phép trên server.
1.1.3 Ưu, nhược điểm Ưu điểm:[3]
• Đây là giao thức định hướng kết nối và sử dụng các lệnh điều khiển mạnh mẽ,
• Gửi dữ liệu qua kết nối TCP riêng biệt từ các lệnh điều khiển. Điều này cho
phép truyền dữ liệu nhanh chóng,
• Đơn giản trong việc thực hiện và sử dụng,
• Cho phép truyền nhiều tin cùng 1 lúc,
• Cho phép chuyển tệp tin nếu không may mất kết nối,
• Cho phép thêm dữ liệu vào khung chờ, và lên lịch truyền,
• Khả năng đồng bộ hóa tệp tin.[3] Nhược điểm:
• Đòi hỏi nhiều bộ nhớ,
• Khả năng bảo mật kém: tên người dùng, mật khẩu được trao đổi văn bạn ở
dạng rõ; dữ liệu không được mã hóa,
• Không phù hợp cho các tổ chức, do yêu cầu phải tạo cổng kết nối khi truyền,
• Máy chủ có khả năng bị qua mặt, gửi thông tin đến các cổng ngẫu nhiên,
• Nhiều kết nối TCP/IP được sử dụng. Tường lửa cản trở việc sử dụng các kết nối như vậy,
• Khó lọc lưu lượng FTP ở chế độ hoạt động ở phía máy khách khi có tường lửa,
• Có độ trễ cao do tính chất định hướng kết nối,
• Không hỗ trợ kiểm tra tính toàn vẹn phía máy thu.[3]
Để khắc phục những nhược điểm này, chúng ta có thể sử dụng phiên bản nâng
cấp của FTP như FTPS hay SFTP.
Nếu cần chuyển các tập tin nhanh chóng và dễ dàng mà không đòi hỏi các biện
pháp bảo mật, FTP có thể là một lựa chọn tốt. Nhưng nếu bạn hoàn toàn quan tâm đến
vấn đề bảo mật, mà hầu hết các doanh nghiệp đều có, bạn nên tránh sử dụng FTP trong
hầu hết các tình huống.
CHƯƠNG 2. CƠ SỞ LÝ THUYẾT
Ở chương này, chúng ta sẽ hướng dẫn chi tiết cách thức triển khai và công cụ sử
dụng để truyền file FTP lên server. Có nhiều công cụ, phần mềm FTP tốt ví dụ như:
Cyberduck, WinSCP,… Ở bài này, chúng ta sẽ sử dụng phần mềm FileZilla Client,
máy ảo VirtualBox (server được đặt trên máy ảo VirtualBox) để mô tả cách sử dụng và
triển khai như một hướng dẫn để người đọc có thể sử dụng được.
2.1 Tải và cài đặt FileZilla Client
Tải phần mềm FileZilla Client trên trang chủ của FileZilla. Lưu ý, FileZilla có
cả FTP Client và FTP Server. Ta sẽ tải về bản FTP Client.
Hình 2.1 Tải phần mềm FileZilla Client