Truyền tải tệp tin lên Server thông qua FTP
Trang 1Đề tài: Truyền tải tệp tin lên Server thông qua FTP I.Tổng quan về FTP
1.Khái niệm
FTP là gọi tắt của File Transfer Protocol, một chương trình để nhập vào một server và handle files giống như Windows explorer, có nghĩa là drag and drop Protocol là "một" giao thức (quy định) được đặt ra để các máy tính "hiểu" được nhau khi giao tiếp với nhau FTP là một giao thức truyền file trên mạng dựa trên chuẩn TCP nên rất đáng tin cậy!Sử dụng FTP người ta có thể download hay upload mỗi lần được nhiều file (Internet Explorer chì cho max 2 file)
- FTP là 1 dịch vụ đặc biệt vì nó dùng đến 2 cổng:cổng 20 dùng để truyền dữ liệu(data aport) và cổng 21 dùng để truyền lệnh (command port).
- Thực chất của FTP thì trên máy chủ có một FTP server deamon chạy trên một port nào đó - như chúng ta thường biết là port 21 theo mặc định - FTP có 2 chế độ hoạt động:
+ Active FTP: Trong active FTP thì máy client khởi tạo connection tới cổng của máy chủ (21) để trao đổi lệnh - sau đó máy chủ mới mở cổng thứ hai - cổng dữ liệu và kết nối với cổng dữ liệu của máy client
+ Passive FTP: Trong passive FTP thì máy client làm cả hai việc này (thiết lập đường dẫn cho commands và đường dẫn cho dữ liệu) Máy chủ chỉ ngồi chơi xơi nước vì thế người ta gọi là passive Loại này là loại sinh sau loại active 2 Ưu , nhược điểm:
FTP có các tuỳ chọn bảo vệ bằng mật khẩu, nhưng chính các tên truy nhập và mật khẩu lại được gửi qua Internet mà không được mã hoá, nên kẻ xấu hoàn toàn có thể đánh cắp chìa khoá và sau đó là thông tin Vấn đề lớn hơn nữa là khả năng của FTP cho phép mọi người truy nhập tự do Mục đích ban đầu là để khuyến khích chia sẻ, nhưng mặt khác điều này cũng dễ gây ra việc vô tình mất những thông tin, dữ liệu riêng tư hoặc nhạy cảm
Mật khẩu và nội dung của tập tin được truyền qua đường dây ở thể dạng văn bản thường (clear text), và vì vậy chúng có thể bị chặn và nội dung bị tiết lộ cho những kẻ nghe trộm Hiện nay, người ta có những cải tiến để né tránh được nhược điểm này
Cần phải có nhiều kết nối TCP/IP: một dòng dành riêng cho việc điều khiển kết nối, một dòng riêng cho việc truyền tập tin lên, truyền tập tin xuống, hoặc liệt kê thư mục Các phần mềm bức tường lửa cần phải được cài đặt thêm những lôgic mới, đế có thể lường trước được những kết nối của FTP
Việc thanh lọc giao thông FTP bên trình khách, khi nó hoạt động ở chế độ năng động, dùng bức tường lửa, là một việc khó làm, vì trình khách phải tùy
1
Trang 2ứng mở một cổng mới để tiếp nhận đòi hỏi kết nối khi nó xảy ra Vấn đề này phần lớn được giải quyết bằng cách chuyển FTP sang dùng ở chế độ bị động
Người ta có thể lạm dụng tính năng ủy quyền, được cài đặt sẵn trong giao thức, để sai khiến máy chủ gửi dữ liệu sang một cổng tùy chọn ở một máy tính thứ ba Xin xem thêm về FXP
FTP là một giao thức có tính trì trệ rất cao (high latency) Sự trì trệ gây ra do
việc, nó bắt buộc phải giải quyết một số lượng lớn các dòng lệnh khởi đầu một phiên truyền tải
Phần nhận không có phương pháp để kiểm chứng tính toàn vẹn của dữ liệu được truyền sang Nếu kết nối truyền tải bị ngắt giữa lưng chừng thì không có cách gì, trong giao thức, giúp cho phần nhận biết được rằng, tập tin nhận được là hoàn chỉnh hay còn vẫn còn thiếu sót Sự hỗ trợ bên ngoài, như việc dùng kiểm tra tổng MD5, hoặc dùng kiểm độ dư tuần hoàn (cyclic redundancy
checking) là một việc cần thiết
Trên server FTP có tính năng bảo mật rất cao
Những dữ liệu cá nhân riêng mà mỗi user đưa vào folder tạo riêng được hoàn toàn bảo mật , không có một user khác nào trong FTP có quyền can thiệp
hãy nhìn thấy folder của người khác
Cách sử dụng Folder riêng trên Ftp cũng như cách sử dụng folder trong Windows
Khi chúng ta muốn đưa dữ liệu riêng của mình lên Ftp thì chỉ cần thực hiện thao tác Copy dữ liệu mà ta muốn đưa lên Ftp rồi đưa vào folder tạo riêng rồi thực hiện thao tác Paste
3 FTP Server
FTP Server là máy chủ lưu giữ những tài nguyên và hỗ trợ giao thức FTP để giao tiếp với những máy tính khác cho phép truyền dữ liệu trên Internet.
4 FTP Client:
Chương trình có thể giao tiếp được với FTP Server gọi là FTP Client.Khi mở 1 phiên làm việc cả 2 chương trình FTP Server và FTP Client đều dùng giao thức FTP Để thiết lập 1 phiên giao dịch,ta cần phải có điạ chỉ IP hay tên máy tính,1 user name &password.FTP Server thường hỗ trợ cho user Anonymous-password rỗng.
Trang 3Sử dụng FTP người ta có thể download hay upload mỗi lần được nhiều file (Internet Explorer chì cho max 2 file) Dể vào được một FTP server bạn cần những thông tin sau:
- IP hay là URL
- port (thường là 21 cho public FTP) - user password
Lưu ý:Khi log on vào một FTP server thì thông tin về bạn sẽ được lưu trữ trên đó Muốn giấu thông tin của mình người ta dùng Proxy, có nghĩa là configure trong ftp qua cổng proxy và proxy sẽ load data về cho mình
3
Trang 4* Một số lệnh phổ biến của FTP
ascii chuyển sang chế độ truyền file theo dạng văn bảnbinary chuyển sang chế độ truyền file theo dạng nhị phâncd [directory] chuyển vào thư mục directory
cdup chuyển lên thư mục cấp trên một cấpclose ngắt kết nối với máy chủ
del [remote-file] xóa 1 file trên máy chủ
dir [remote-directory|file] liệt kê nội dung của thư mục hoặc danh sách các
file trên máy chủ
help [command] cho biết hướng dẫn về lệnh command
lcd [local-directory] đặt lại thư mục làm việc trên client là local-directory ls [remote-directory|file] [-la] liệt kê nội dung của thư mục hoặc danh sách
các file trên máy chủ; tham số -la sẽ liệt kê tất cả có kèm theo mô tả về quyền
mdelete [remote-files] xóa nhiều file trên máy chủ mget [remote-files] download các files trên máy chủ về mkdir <directory-name> tạo thư mục có tên directory-name mput [local-files] upload các files lên máy chủ
open host [port] kết nối đến máy chủ FTP có hostname là host và đang chạy dịch vụ FTP ở cổng port
put <local-file> [remote-file] upload local-file lên máy chủ với tên mới là
remote-file nếu được
pwd cho biết thư mục đang làm việc hiện thời
quit thoát
[b]recv <remote-file> [local-file] nhận remote-file trên máy chủ và lưu trên
máy tính với tên local-file nếu được
rename [from] [to] đổi tên file hoặc thư mục from thành tormdir directory-name xóa thư mục có tên directory-name
send local-file [remote-file] gởi local-file từ máy tính lên máy chủ với tên mới là remote-file nếu được
status cho biết trạng thái của phiên làm việc hiện tại syst cho biết hệ điều hành của máy chủ
user user-name [password] [account] login vào với tên là user-name, mật
khẩu là password, tài khoản là account
II Xây dựng ứng dụng đơn giản truyền tải tệp tin lên Server thông qua FTP
FTP được xây dựng theo mô hình khách-chủ, như vậy để truyền thành công tệp tin từ máy tính này tới máy tính khác, cần phải có sự tham gia của cả hai ứng dụng, FTP server và FTP client FTP client sẽ được sử dụng tại máy tính nơi phát sinh yêu cầu về di chuyển tệp tin FTP server sẽ chạy tại máy tính ở phía đầu bên kia, dùng chạy phần mềm cung cấp dịch vụ FTP, gọi là trình
Trang 5chủ, lắng nghe yêu cầu về dịch vụ của các máy tính khác trên mạng lưới FTP thực hiện việc chuyển tệp tin từ máy tính này tới máy tính khác, là một ứng dụng tuyệt vời khi bạn muốn truyền nhiều tệp tin một lúc Tuy nhiên, bạn không thể xem hoặc soạn thảo một tệp tin một cách trực tiếp thông qua FTP
Ở đây chúng tôi dùng phần mềm FilezillaServer để đóng vai trò như môt FTP Server
5
Trang 61 Giới thiệu về FilezillaServer
Giao diện chương trình
Trang 7Tạo tài khoản người dùng
Nhấn nút Add để thêm tài khoản mới Nhập username, nhấn OK Mục Account settings click chọn Enable account và nhấn mục Password, sau đó nhập password cho tài khoản này.
7
Trang 8Tạo thư mục & phân quyền cho người dùng
Mục Shared folders dùng để cài đặt thư mục làm việc của tài khoản (nghĩa là khi khách hàng dùng tài khoản đó login vào thì sẽ vào được thư mục nào) Nhấn nút Add để thêm thư mục Phần Files & Directories dùng để phân quyền cho tài khoản.
Trang 92.Xây dựng FTP client
3.Thử nghiệm chương trình:
Bước 1: Khởi động FTP Server
9
Trang 10Bước 2: Tạo tài khoản và phân quyền
Bước 3: Khởi động ứng dụng FTP Client và thực hiện upload file
Trang 11Giao diện chương trình sau khi ứng dụng chạy thành công:
Trên đây là các bước để truyền tải tệp tin lên Server thông qua FTP
11