banner

[Rule] Rules  [Home] Main Forum  [Portal] Portal  
[Members] Member Listing  [Statistics] Statistics  [Search] Search  [Reading Room] Reading Room 
[Register] Register  
[Login] Loginhttp  | https  ]
 
Forum Index Những thảo luận khác Giới thiệu về FTP! <Sưu tầm>  XML
  [Question]   Giới thiệu về FTP! Sưu tầm 27/06/2006 02:59:40 (+0700) | #1 | 1101
[Avatar]
doi_canba
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 02:55:36
Messages: 38
Offline
[Profile] [PM]
Bài này ko biết tác giả là ai nữa, híc, tại toàn cái cơ bản nên cũng ko câu nệ tác giả làm gì, anh em cứ post lên để những ai cần đọc! Chúc anh em và mọi người vui vẻ!


Tìm hiểu về FTP

Giới thiệu

FTP là chữ viết tắc của File Transfer Protocol - Giao thức truyền file. 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!

Một số lệnh phổ biến của FTP

Sau đây là danh sách một số lệnh thường dùng kèm theo hướng dẫn mà bạn cần biết!

ascii chuyển sang chế độ truyền file theo dạng văn bản
binary chuyển sang chế độ truyền file theo dạng nhị phân
cd [directory] chuyển vào thư mục directory
cdup chuyển lên thư mục cấp trên một cấp
close 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
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 to
rmdir 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
? gọi hướng dẫn
Các ví dụ

Để dễ hiểu, các bạn hãy xem các ví dụ sausmilietôi sử dụng các này để upload mấy file lên website đó, không cần dùng các chương trình FTP mạnh như WS_FTP Pro, FTPNet, CuteFTP, AbsoluteFTP, ...!) Tôi lưu trang web cần tải lên server trong c:\website! Bây giờ tôi sẽ tải nó lên!

C:\website>ftp myftpsrv // kết nối đến máy chủ myftpsrv
Connected to myftpsrv.
User (ftpsrvsmilienone)): dt
331 User name okay, need password.
Password:
230 User logged in, proceed.
ftp> pwd // cho biết thư mục hiện tại đang làm việc!
257 "/home/dt" is current directory.
ftp> status // xem trạng thái hiện tại
Type: ascii; Verbose: On ; Bell: Off ; Prompting: On ; Globbing: On
Debugging: Off ; Hash mark printing: Off . // ascii=1
ftp> cd www // chuyển vào thư mục www
250 Directory changed to /home/dt/www
ftp> put index.html // upload file index.html lên server
200 PORT Command successful.
150 Opening ASCII mode data connection for index.html.
226 Transfer complete.
ftp: 2095 bytes sent in 0.00Seconds 2095000.00Kbytes/sec.
ftp> mkdir tools // tạo thư mục /home/dt/www/tools
257 "/home/dt/www/tools" directory created.
ftp> cd tools // chuyển vào thư mục tools
250 Directory changed to /home/dt/www/tools
ftp> lcd c:\website\tools // thay đổi lại local directory = c:\website\tools
Local directory now C:\website\tools.
ftp> bin // chuyển sang chế độ truyền file nhị phân
200 Type set to I.
ftp> mput *.* // upload tất cả các file trong c:\website\tools lên server, vào /home/www/tools/
mput test.zip? y
200 PORT Command successful.
150 Opening BINARY mode data connection for test.zip.
226 Transfer complete.
ftp: 10168 bytes sent in 0.06Seconds 169.47Kbytes/sec.
mput test.exe? y
200 PORT Command successful.
150 Opening BINARY mode data connection for test.exe.
226 Transfer complete.
ftp: 54625 bytes sent in 0.11Seconds 496.59Kbytes/sec.
ftp> ls -la // liệt kê nội dung của /home/www/tools
200 PORT Command successful.
150 Opening ASCII mode data connection for /bin/ls.
drwxr--r-- 1 dt group 0 Sep 30 14:13 .
drwxr--r-- 1 dt group 0 Sep 30 14:13 ..
-rwxr--r-- 1 dt group 54625 Sep 30 14:14 test.exe
-rwxr--r-- 1 dt group 10168 Sep 30 14:14 test.zip
226 Transfer complete.
ftp: 247 bytes received in 0.00Seconds 247000.00Kbytes/sec.
ftp> del test.exe // tôi lỡ tay upload lên file test.exe, bây giờ tôi cần phải xóa nó
250 DELE command successful.
ftp> cd .. // chuyển lên thư mục cấp trên
250 Directory changed to /home/dt/www
ftp> mkdir cgi-bin2 // tạo thư mục mới
257 "/home/dt/www/cgi-bin2" directory created.
ftp> rename cgi-bin2 cgi-bin // tôi đã nhập vào sai mất rồi, bây giờ phải đổi tên lại thôi!
350 File or directory exists, ready for destination name
250 RNTO command successful.
ftp> cd cgi-bin // chuyển vào thư mục cgi-bin
250 Directory changed to /home/dt/www/cgi-bin
ftp> lcd c:\website\cgi-bin // đặt lại local directory!
Local directory now C:\website\cgi-bin.
ftp> ascii // chuyển sang chế độ truyền file văn bản vì tôi cần upload một số file .cgi + .pl
200 Type set to A.
ftp> put test.cgi // upload file test.cgi
200 PORT Command successful.
150 Opening ASCII mode data connection for test.cgi.
226 Transfer complete.
ftp: 222 bytes sent in 0.00Seconds 222000.00Kbytes/sec.
ftp> ls -la // xem nội dung của /home/www/cgi-bin
200 PORT Command successful.
150 Opening ASCII mode data connection for /bin/ls.
drwxr--r-- 1 dt group 0 Sep 30 14:16 .
drwxr--r-- 1 dt group 0 Sep 30 14:16 ..
-rwxr--r-- 1 dt group 222 Sep 30 14:17 test.cgi
226 Transfer complete.
ftp: 182 bytes received in 0.00Seconds 182000.00Kbytes/sec.
ftp> site chmod 755 test.cgi // đặt quyền 755(wrxx-xr-x) cho file test.cgi
ftp> ls -la // tôi liệt kê lại thư mục cgi một lần nữa
200 PORT Command successful.
150 Opening ASCII mode data connection for /bin/ls.
drwxr-xr-x 1 dt group 0 Sep 30 14:16 .
drwxr-xr-x 1 dt group 0 Sep 30 14:16 ..
-rwxr-xr-x 1 dt group 222 Sep 30 14:17 test.cgi
226 Transfer complete.
ftp: 182 bytes received in 0.00Seconds 182000.00Kbytes/sec.
ftp> bye // tất cả đã xong, bây giờ tôi có thể ngắt kết nối được rồi!
221 Goodbye!

C:\website>

Hi vọng là bạn hiểu được ví dụ trên!

Nói thêm về FTP

Làm thế nào để kết nối với một máy chủ FTP qua một proxy-server, chẳng hạn như Wingate? Chỉ cần ftp đến proxy-server này và gõ vào như dạng sau, user@host[:port]. Ví dụ máy tôi đang chạy Wingate-FTP ở cổng 21 và Serv-U FTP-Server v2.5i ở cổng 2121, tôi có thể kết nối đến Serv-U FTP-Server v2.5i qua Wingate-FTP như sau:

C:\>ftp localhost
Connected to dt.
220 WinGate Engine FTP Gateway ready
User (dtsmilienone)): dt@localhost:2121
331 User name okay, need password.
Password:
230 User logged in, proceed.
ftp>

Okay, bây giờ tôi upload và download file như bình thường được rồi!

Hack với FTP

Đôi khi FTP cũng cho biết một số thông tin rất quan trọng! Bạn dễ dàng đoán được hệ điều hành của máy chủ FTP! Hãy xem các ví dụ sau:

C:\>ftp localhost
Connected to dt.
220 dt Microsoft FTP Service (Version 1.0).
User (dtsmilienone)): anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
Password:
230-Windows 95 FTP Service.
230 Anonymous user logged in as anonymous.

Yeah! Chắc ăn là server này là PWS chạy trên Windows!

Nếu như admin vô hiệu hóa dòng quảng cáo trên thì sao!? Vẫn còn cách khác! Bạn login vào và phát lệnh syst như sau:

ftp> literal syst
215 Windows_NT version 4.10

Hình như hệ điều hành của máy chủ là Win9.x hoặc WinNT thì phải!
(Nếu bạn đang chạy Linux* thì chỉ cần gõ syst).

Hi vọng qua bài viết này, bạn sẽ hiểu rõ hơn về FTP! Chúc bạn may mắn!

[Up] [Print Copy]
  [Question]   Giới thiệu về FTP! Sưu tầm 27/06/2006 03:01:44 (+0700) | #2 | 1103
[Avatar]
doi_canba
Member

[Minus]    0    [Plus]
Joined: 26/06/2006 02:55:36
Messages: 38
Offline
[Profile] [PM]
Thêm bài này nữa, hy vọng anh em thích!


--------------------------------------------------------------------------------
File Transfer Protocol (FTP) :

Giao thức truyền tải file, thường được gọi là FTP, là công cụ quản lý files giữa các máy. FTP cho phép truyền và tải files, quản lý thư mục, và lấy mail. FTP không được thiết kế để truy nhập và thi hành files, Nhưng nó là công cụ tuyệt vời để truyền tải files.

FTP dùng 2 kênh TCP. TCP cổng 20 là kênh dữ liệu, và cổng 21 là kênh lệnh. FTP khác với tất cả ứng dụng TCP/IP là phải dùng 2 kênh, cho phép giả lập truyền tải lệnh và dữ liệu của FTP. Nó cũng khác các giao thức khác một chức năng quan trọng: FTP truyền tải files ở foreground, so với giao thức khác ở background. Hay nói cách khác, FPT không dùng spoolers hay queues, do vậy việc truyền tải thực hiện bằng thời gian thực.

Trong FTP, có 2 kênh tồn tại giữa 2 máy gọi là protocol interpreter, hay PI, và data transfer process, hay DTP. Cấu trúc truyền tải PI dùng kênh lệnh 21 TCP, và truyền tải dữ liệu DTP trên kênh dữ liệu 20 TCP.

FTP gần giống Telnet trong cách dùng chương trình máy chủ chạy liên tục và ngắt quảng chương trình chạy trên máy khách. Trên hệ thống UNIX, các chương trình được goi là ftpd và ftp.


Lệnh của FTP

Trước khi xem làm thế nào dùng FTP để truyền files, bạn nên xem các lệnh của giao thức này. Tương tự lệnh của Telnet, nhiều lệnh chỉ dùng cho giao thức và không dùng cho người dùng (mặc dù administrators đôi khi dùng lệnh FTP để gỡ rối và chẩn đoán).Lệnh nội bộ của FTP gồm 4 ký tự ASCII cách nhau bởi newline character. Nhiều lệnh cần phải có tham số. Một lợi ích chính dùng ký tự ASCII cho lệnh là người dùng có thể quan sát các lệnh chạy và hiểu được nó. Nó giúp ích cho quá trình gỡ rối. Nó cũng mở rộng kiến thức về giao tiếp trực tiếp với FTP server component (ftpd).


Quote
Command Description

ABOR Abort previous command
ACCT User account ID
ALLO Allocate storage for forthcoming operation
APPE Append incoming data to an existing file
CDUP Change to parent directory
CWD Change working directory
DELE Delete file
HELP Retrieve information
LIST Transfer list of directories
MKD Make a directory
MODE Set transfer mode
NLST Transfer a directory listing
NOOP No operation
PASS User password
PASV Request a passive open
PORT Port address
PWD Display current directory
QUIT Terminate the connection
REIN Terminate and restart a connection
REST Restart marker (restart transfer)
RETR Transfer copy of file
RMD Remove a directory
RNFR Old pathname for rename command
RNTO New pathname for rename command
SITE Provides service specifics
SMNT Mount a file system
STAT Returns status
STOR Accept and store data
STOU Accept data and store under different name
STRU File structure
SYST Query to determine operating system
TYPE Type of data
USER User ID



FTP cũng dùng các mã đơn giản để báo tình trạng truyền tải. Mỗi return code là số có 3 chữ số, số đầu tiên báo thi hành thành công (số đầu tiên là 1, 2, hay 3) hoặc thất bại (số đầu tiên là 4 hay 5). Số thứ 2 và 3 diễn giải chi tiết thêm tình trạng.

Quote
First Digit Description

1 Action initiated. Expect another reply before sending a new command.
2 Action completed. Can send a new command.
3 Command accepted but on hold due to lack of information.
4 Command not accepted or completed. Temporary error condition exists.
Command can be reissued.
5 Command not accepted or completed.
Reissuing the command will result in the same error (don't reissue).



Quote
Second Digit Description

0 Syntax error or illegal command
1 Reply to request for information
2 Reply that refers to connection management
3 Reply for authentication command
4 Not used
5 Reply for status of server




FTP cho phép truyền files ở nhiều dạng khác nhau, tùy thuộc hệ thống. Hệ thống chính (bao gồm hệ thống UNIX) chỉ có 2 chế độ: text và binary. Nhiều hệ thống mainframe hỗ trợ EBCDIC, nhiều trang có những dạng tự định nghĩa để tăng tốc độ truyền tải trong mạng nội bộ (có thể dùng 32- hoặc 64-bit words).

Truyền tải dạng Text dùng ký tự ASCII phân cách bởi ký tự carriage-return và newline characters, trong khi truyền tải binary truyền các ký tự không có định dạng. Binary mode nhanh hơn text và cho phép truyền tất cả giá trị của ASCII (cần thiết cho các file non-text). Trên nhiều hệ thống, FTP bắt đầu ở text mode, mặc dù nhiều nhà quản trị hệ thống thiết lập FTP ở binary mode mặc định cho sự tiện lợi của người dùng.

Trước khi truyền tải files bằng FTP, phải chắc chắn dùng đúng dạng truyền. Truyền tải binary file bằng ASCII mode sẽ thành một đống rác! Hỏi nhà quản trị hệ thống nếu chưa rõ mode, hoặc xem kết quả trả lời của FTP để biết mode.


--------------------------------------------------------------------------------

[Up] [Print Copy]
[digg] [delicious] [google] [yahoo] [technorati] [reddit] [stumbleupon]
Go to: 
 Users currently in here 
1 Anonymous

Powered by JForum - Extended by HVAOnline
 hvaonline.net  |  hvaforum.net  |  hvazone.net  |  hvanews.net  |  vnhacker.org
1999 - 2013 © v2012|0504|218|