Các khái niệm cơ bản Internet
Địa chỉ IP được chia thành 4 số giới hạn từ 0 - 255. Mỗi số được lưu bởi 1 byte -> IP có kích thước là 4byte, được chia thành các lớp địa chỉ. Có 3 lớp là A, B, và C. Nếu ở lớp A, ta sẽ có thể có 16 triệu điạ chỉ, ở lớp B có 65536 địa chỉ. Ví dụ: Ở lớp B với 132.25,chúng ta có tất cả các địa chỉ từ 132.25.0.0 đến 132.25.255.255. Phần lớn các địa chỉ ở lớp A llà sở hữu của các công ty hay của tổ chức. Một ISP thường sở hữu một vài địa chỉ lớp B hoặc C. Ví dụ: Nếu địa chỉ IP của bạn là 132.25.23.24 thì bạn có thể xác định ISP của bạn là ai. ( có IP là 132.25.x.)
IP thể hiện điều gì:
Trên mạng Internet nó sẽ xác định chính bạn. Khi kết nối vào mạng thì IP của bạn là duy nhất trên thế giới. Tuy nhiên số này chưa hẳn là cố định. Nếu bạn vào mạng qua một ISP thì số IP của bạn sẽ thay đổi ở các lần bạn kết nối.
Một người biết IP của bạn thì có thể lần ra vị trí của bạn. Nghĩa là khi có IP thì biết được địa chỉ của ISP rồi biết được thông tin của bạn. Trên thực tế, IP cho biết về máy tính được sử dụng để vào mạng chứ không cho biết thông tin về người sử dụng, trừ khi IP của bạn là cố định hoặc sử dụng account của riêng bạn.
Sự khác nhau giữa logic (hostname) và một địa chỉ IP:
Đơn giản chỉ bởi vì việc gọi tên, ví dụ http://k.domaindlx.com/clairsang/www.tungxeng.nt.ms/default.htm sẽ dễ hơn nhiều đối với việc phải gọi 202.32.156.14. Tuy vậy, có một sự khác biệt quan trọng giữa 2 điều này. IP là số để xác định thiết bị (device) còn hostname là một mối liên kết giữa 1 từ khoá và một số IP. Một địa chỉ IP có thể có nhiều hostname khác nhau nhưng một hostname thì chỉ có một IP liên kết với nó.
IP spoofing là gì:
Một số IP có mục đích để xác định một thiết bị duy nhất trên thế giới. Vì vậy trên mạng một máy chủ có thể cho phép một thiết bị khác trao đổi dữ liệu qua lại mà không cần kiểm tra máy chủ.
Tuy nhiên có thể thay đổi IP của bạn, nghĩa là bạn có thể gởi một thông tin giả đến một máy khác mà máy đó sẽ tin rằng thông tin nhận được xuất phát từ một máy nào đó (tất nhiên là không phải máy của bạn). Bạn có thể vượt qua máy chủ mà không cần phải có quyền điều khiến máy chủ đó. Điều trở ngại là ở chỗ những thông tin phản hồi từ máy chủ sẽ được gởi đến thiết bị có IP mà chúng ta đã giả mạo. Vì vậy có thể bạn sẽ không có được sự pảhn hồi những thông tin mà mình mong muốn. Có lẽ điều duy nhất mà spoof IP có hiệu quả là khi bạn cần vượt qua firewall, trộm account và cần dấu thông tin cá nhân!
Cổng ảo là gì? (Virtual Port)
Cổng ảo là 1 số tự nhiên đựợc gói ở trong TCP(Tranmission Control Protocol) và UDP(User Diagram Protocol) header (hiện có lẽ bạn còn xa lạ với 2 từ này, chúng tôi sẽ đề cập sau). Như mọi nguòi đã biết, Windows có thể chạy nhiều chương trình 1 lúc, mỗi chương trình này có 1 cổng riêng dùng để truyền và nhận dữ liệu. Ví dụ 1 máy có địa chỉ IP là 127.0.0.1 chạy WebServer, FTP_Server, POP3 server, etc, những dịch vụ này đều đuọc chạy trên 1 IP address là 127.0.0.1, khi một gói tin được gửi đến làm thế nào máy tính của chúng ta phân biệt được gói tin này đi vào dịch vụ nào WebServer hay FTP server hay SMTP ? Chính vì thế Port xuất hiện. Mỗi dịch vụ có 1 số port mặc định, ví dụ FTP có port mặc định là 21, web service có port mặc định là 80, POP3 là 110, SMTP là 25 vân vân.... Người quản trị mạng có thể thay đổi số port mặc định này, nếu bạn ko biết số port trên một máy chủ, bạn ko thể kết nối vào dịch vụ đó được. Chắc bạn đã từng nghe nói đến PORT MAPPING nhưng có lẽ chưa biết nó là gì và chức năng thế nào. Port mapping thực ra đơn giản chỉ là quá trình chuyển đổi số port mặc định của một dịch vụ nào đó đến 1 số khác. Ví dụ Port mặc định của WebServer là 80, nhưng thỉnh thoảng có lẽ bạn vẫn thấy http://www.xxx.com:8080 , 8080 ở đây chính là số port của host xxx nhưng đã đuợc nguòi quản trị của host này "map" từ 80 thành 8080.
RFC là gì?
RFC là viết tắt của Request For Comment, là tập hợp những tài liệu về kiến nghị, đề xuất và những lời bình luận liên quan trực tiếp hoặc gián tiếp đến công nghệ, nghi thức mạng INTERNET. Các tài liệu RFC đựợc chỉnh sửa, thay đổi đến khi tất cả các kỹ sư thành viên của IETF(Internet Engineering Task Force) đồng ý và duyệt, sau đó những tài liệu này được xuất bản và được công nhận là 1 chuẩn, nghi thức cho Internet. Tài liệu RFC nổi tiếng và làm tạo được tiếng vang lớn nhất là tài liệu RFC số 822 về Internet Email bởi Dave Crocker.
Trang chủ của RFC: http://www.ietf.org/rfc.html
DNS là gì? Tại sao ta lại dùng DNS, DNS làm việc ra sao, tên miền là gì, etc...?
DNS là viết tắt của Domain Name System. Một máy chủ DNS đợi kết nối ở cổng số 53, có nghĩa là nếu bạn muốn kết nối vào máy chủ đó, bạn phải kết nối đến cổng số 53. Máy chủ chạy DNS chuyển hostname bằng các chữ cái thành các chữ số tương ứng và ngược lại. Ví dụ: 127.0.0.1 --> localhost và localhost--->127.0.0.1
Hệ thống "tên đến địa chỉ" (name-to-address) được dùng trước đây khi DNS chưa ra đời, đây thực chất là 1 file trên server. Cấu tạo của 1 file này là 1 table với "hostname" và địa chỉ IP tương ứng, file này được cập nhật và bảo quản bởi Standford Reserch Institute Network Information Center (SRI-NIC). Vài lần 1 tuần, tổ chức này lại cập nhật nội dung file này. Những nguòi quản trị mạng nếu cần sẽ download file này xuống để dùng cho local DNS. Dần dần, số lượng của các trang web trên internet ngày càng nhiều. Cách cũ dùng "name-to-address" trở nên thiếu hiệu quả và tốn thời gian --> DNS ra đời. DNS ko phụ thuộc vào bất cứ 1 server riêng rẽ nào, DNS được phân phát cho nguòi dùng dưới dạng 1 file cơ! sở dữ liệu, file này được giũ trên khắp các DNS server trên toàn thế giới. Mỗi DNS server đều tự tìm kiếm một DNS cao hơn khi nhân được yêu cầu về 1 host nào đó ko có trong cơ sở dữ liệu trên máy mình
Máy chủ DNS (DNS Server)
DNS server là 1 máy tính bình thường có thể PC(/MAC) chạy UNIX hoặc nhân bản của Unix (Linux,etc..) và chay một chương trình quản lý domain name gọi là BIND (Berkely Internet Name Domain). DNS server có thể chạy các hệ điều hành khác như Windows, MacOS nhưng thường thì *nix hay được chọn hơn cả vì unix có tính bảo mật cao hơn và cho phép lượng truy cập lớn hơn.
Chương trình quản lý DNS được thiết kế chia làm 2 phần, phần thứ nhất là 1 "daemon" nghe ở cổng 53 đợi kết nối. Phần thứ 2 là để gửi yêu cầu lên một DNS cao hơn nếu local database ko có thông tin mà máy khách yêu cầu. Phần thứ nhất (daemon) trả lời trình duyệt web mỗi khi nhận được yêu cầu. Ví dụ, khi bạn mở Internet Explorer và đánh vào www.hackervn.org, trình duyệt của bạn sẽ gửi yêu cầu đến 1 máy chủ có dịch vụ DNS gần nhất để tìm IP của www.hackervn.org vì trình duyệt của bạn cần biết IP máy chủ hiện đang lưu trữ trang web www.hackervn.org. Máy chủ DNS ở ISP của bạn sẽ tìm trong cơ sở dữ liệu, nếu ko tìm thấy địa chỉ IP cho www.hackervn.org máy chủ chạy DNS này sẽ chuyển sang phần thứ 2 là đưa yêu cầu của máy khách đến 1 máy chủ DNS cao cấp hơn, nhiều dữ liệu hơn để giải quyết.
Định dạng cây của DNS (tree formation)
Một khi DNS server ko thể tìm thấy số IP tương ứng cho 1 hostname trong cơ sở dữ liệu của mình, server đó sẽ gửi yêu cầu đến 1 DNS server khác cao hơn 1 bậc, và DNS server này sẽ lặp lại quá trinh mà DNS server dưới đã làm để tìm địa chỉ IP của 1 host nào đó. Nếu DNS server này vẫn ko tìm thấy thì yêu cầu sẽ lại được gửi đến 1 DNS server khác cao hơn nữa và quy trình này sẽ được tiếp tục cho đến khi nào ra kết quả. Kết quả của yêu cầu này chỉ có thể là "Tìm Thấy" hoặc "Ko tìm thấy". :-) . Đến thời điểm này, chắc bạn đã hình dung ra được cấu trúc của các DNS server như thế nào rồi? N? u chưa, hãy nhìn vào ví dụ dưới đây:
Ví dụ nhà cung cấp internet của bạn là FPT. Trang web đặt trên máy chủ của FPT là www.fpt.vn. Mặc định, DNS server sẽ là dns.fpt.vn. Bây giờ bạn muốn truy cập www.hackervn.org. dns.fpt.vn sẽ tìm thông tin về host này ở trong cơ sở dữ liệu trên máy chủ DNS ở FPT xem ai đó đã gửi thông tin truy cập về host này chưa. Nếu điạ chỉ hackervn ko được tìm thấy ở "local database" hoặc trong bộ nhớ, dns.fpt.vn sẽ đưa yêu cầu này đến 1 DNS server cao cấp hơn, ở đây s? là "dns.vn". DNS server này quản lý tất cả các trang có đuôi .vn. Tuy nhiên server này có thể ko có địa chỉ này trong cơ sở dữ liệu nhưng có thể có vì có thể ai đó đã truy cập trang này. Nếu ở đây vẫn ko tìm thấy host/ip cần tìm, DNS server này cuối cùng phải gửi request đến DNS server lớn nhất quản lý tất cả các domain gọi là ".root". Máy chủ chạy .root DNS này là một máy tính rất mạnh, và cơ sở dữ liệu của .root này bao gồm tất cả các loại domain trên toàn thế giới. như .com , .net , .mil, .co.uk, vân vân.....
Thứ Bảy, 8 tháng 1, 2011
Kiến thức cơ bản hack
Tìm hiểu về FTP :
Giới thiệu
FTP là chữ viết tắt 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
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
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 [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 [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ụ sau:(tô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 (ftpsrv:(none)): 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 (dt:(none)): 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 (dt:(none)): 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).
Giới thiệu
FTP là chữ viết tắt 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
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
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
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
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ụ sau:(tô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 (ftpsrv:(none)): 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 (dt:(none)): 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 (dt:(none)): 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).
Đăng ký:
Nhận xét (Atom)