Đôi điều về Telnet
1- Giới thiệu:
Là một chương tŕnh cho phép bạn kết nối và đăng nhập vào một máy tính ở xa (trong LAN, internet). Khi kết nối thành công, máy tính của bạn sẽ thực hiện chức năng như trạm trung gian để gửi yêu cầu đến máy tính ở xa.
Bạn có thể dùng máy tính của ḿnh để truy cập thông tin, thực thi các chương tŕnh và sử dụng một số tài nguyên khác trên máy tính ở xa.
2- Sử dụng telnet:
Bắt đầu từ command prompt, gơ vào telnet, nếu bạn dùng 9x, nó sẽ đưa bạn vào tŕnh windows telnet. Bạn cũng có thể chạy ở menu Start/Run.
Ở chế độ đánh lệnh, bạn có thể dùng các lệnh sau:
OPEN <hostname/site address> <port number> : mở một kết nốI đến máy tính ở xa, gọi là 1 telnet session
CLOSE : đóng kết nối và trở về dấu nhắc đợI lệnh
QUIT: đóng kết nối và thoát telnet
<ENTER> : nhấn phím enter sẽ đưa bạn thoát khỏI chế độ dấu nhắc lệnh và trở lại telnet session
SET ECHO: bật/tắt chế độ hiện các lệnh đánh vào trong windows telnet. Lưu ư trong 2k sẽ là SET LOCAL_ECHO
Để kết nối, ta dùng lệnh OPEN hoặc cũng có thể trực tiếp bằng lệnh
telnet <hostname/site address> <port number>
vd:
telnet anyhost.com 12345
Trying 123.123.112.12 port 12345
Connected to anyhost.com
Escape character is….
Sau khi kết nối xong, bạn đă ở trong một telnet session. Có thể dùng kí tự escape ở trên để trở về dấu nhắc lệnh.
3- Ứng dụng telnet để truy cập POP email
a- Đọc mail
Các internet mail server cho phép truy cập thông qua giao thức POP (Post Office Protocol), cổng 110. Nếu POP server bạn đang dùng là anyhost.com, th́ ta sẽ dùng lệnh sau: telnet anyhost.com 110
Một số các lệnh có thể bạn cần dùng khi truy cập POP email
USER <username> : mở hộp thư của username
PASS <password> : mật khẩu cho hộp thư
LIST : liệt kê các emails trong hộp thư
RETR <email number> : xem thư có thứ tự là number, được liệt kê trong lệnh LIST
TOP <email number> <message lines> : xem thư như RETR, nhưng dừng lại khi hiện được số ḍng nhất định
DELE <email number> : xóa thư có thứ tự number
QUIT : đóng telnet session
Ví dụ, ta sẽ truy cập vào yahoo để xem mail, ta thực hiện lệnh
telnet pop.mail.yahoo.com 110 <enter> và chờ một chút...
Nếu thành công, bạn sẽ nhận được ḍng thông tin sau:
+OK hello from popgate
Kể từ đây, nếu trước khi mở 1 telnet session, bạn có dùng SET ECHO, th́ những ǵ bạn đánh vào sẽ hiện lên, không th́ bạn phải nhập các lệnh thật chính xác
Nhập tên user
USER huutung_2001
+OK password required
Nhập mật khẩu
PASS tungxeng
+OK maildrop ready, 2 messages (2983 octets) (34232 2324232)
Ở đây, mail box của tôi có 2 tin, kế đến là tổng kích thước của các email, các số c̣n lại bạn không cần quan tâm
Bạn dùng lệnh list để liệt kê các email, bao gồm stt và size:
list
1 1728
2 1205
.
Để xem một mail có stt nào đó, bạn dùng lệnh retr <message number>
retr 1
Chờ một chút, bạn sẽ nhận được những thông tin đầy đủ về mail đó, bao gồm toàn bộ header và nội dung
vd:
+OK 1783 octets
X-Apparently-To: huutung_2001@yahoo.com via web20306.mail.yahoo.com; 04 Jan 2002 23:4
8:08 -0800 (PST)
X-RocketRCL: 1037;1;2465408753
Received: from web11904.mail.yahoo.com (216.136.172.18
by mta621.mail.yahoo.com with SMTP; 04 Jan 2002 23:48:08 -0800 (PST)
Message-ID: <20020105074808.35179.qmail@web11904.mail.yahoo.com>
Received: from [61.214.156.105] by web11904.mail.yahoo.com via HTTP; Fri, 04 Jan
2002 23:48:08 PST
Date: Fri, 4 Jan 2002 23:48:08 -0800 (PST)
From: yen ruoi <senxanh411@yahoo.com>
Subject: Re: hi?
To: F M <huutung_2001@yahoo.com>
In-Reply-To: <20020102080654.68330.qmail@web20307.mail.yahoo.com>
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary="0-888944639-1010216888=:34368"
......vvv
.
Về những thông tin trong email header,bạn tự t́m hiểu lấy! )
Nếu những thông tin liệt kê ở trên quá nhiều, bạn không kịp xem, hăy dùng lệnh top <mess number> <showed lines> để liệt kê theo số lượng ḍng nhất định
vd: top 1 10 -> sẽ liệt kê 10 ḍng đầu (kể cả header) của email số 1, sau khi hiện xong 10 ḍng cho bạn xem, chờ vài giây, nó sẽ tiếp tục hiện các ḍng kế tiếp cho đến khi toàn bộ email được xem!?
Để xóa 1 email, bạn dùng lệnh dele <email number>
vd: dele 2 -> sẽ xóa email thứ 2 trong danh sách
Sau khi check xong emails, bạn đóng telnet session bằng lệnh QUIT, bạn sẽ được đưa về dấu nhắc lệnh
Bất lợi của việc check email POP dùng telnet là bạn không có được giao diện dễ nh́n như các tŕnh check POP mail khác. Bạn cũng không thể trả lời từ các mail đă đọc được.
b- Gửi mail
Tương tự như trên, các internet mail server sẽ cung cấp một giao thức là SMTP (Simple Mail Transfer Protocol) cho phép bạn send email thông qua server đó, cổng 25.
Một số lệnh bạn cần dùng:
HELO <hostname> : giới thiệu host, thông tin này không cần thiết
MAIL FROM: <email của người gửi>
RCPT TO: <emails của người nhận>
DATA <nhập data của bạn>: sau khi enter, bạn nhập nội dung email. Sau khi nhập xong, muốn kết thúc, bạn phải xuống hàng và nhập dấu chấm '.'
RSET xóa các thông tin lần gửi mới nhất, dùng khi bạn muốn gửi đến một người khác
QUIT : thoát
HELP <lệnh> xem trợ giúp về các lệnh, lệnh này tùy thuộc vào mail server bạn đang connect
Ví dụ, đối với yahoo:
Bạn thực hiện lệnh telnet smtp.mail.yahoo.com 25
Chờ một lúc, nếu kết nối thành công, bạn sẽ nhận được thông tin sau:
220 smtp011.mail.yahoo.com ESMTP
Kết nối:
helo smtp.mail.yahoo.com
250 smtp011.mail.yahoo.com
Nhập thông tin người gửi:
mail from: huutung_2001@yahoo.com
250 ok
Nhập thông tin người nhận:
rcpt to: senxanh411@yahoo.com yen ruoi
250 ok
Nhập nội dung:
data blsdfsdfsd
354 go ahead
Subject: hen chat !
Hi em,
em co khoe khong ?
hom nay len chat voi anh nhe !
hen gap...
tungxeng
.
250 ok 1010373599 qp 48077
Đóng telnet session
Quit
Bạn có thể thao khảo một vd về send mail thông qua SMTP tại:
http://www.kbcafe.com/articles/smtp.html ps: các ví dụ trên đă test trên 2k, các bạn có thể thực hiện tương tự trên wins 9x. Tùy mail server mà các thông tin xác nhận và thông báo các lệnh của bạn có thể khác nhau.
Dạo chơi cùng Telnet
Telnet là ǵ?
Telnet là một chương tŕnh terminal đầu cuối. Nó thường dùng để login vào một máy chủ nào đó trên các daemon khác nhau của máy chủ đó! Trong bài viết này, tôi sẽ chỉ cho bạn cách thu thập một số thông tin về máy chủ qua telnet. Bạn cũng sẽ được cách check mail, gởi mail và đặc biệt là có thể tham gia vào các kênh chat IRC của nước ngoài nữa đó! Tất cả chỉ bằng Telnet!
Daemon là ǵ?
Daemon(hay c̣n được gọi là "service") là một chương tŕnh chạy trên một cổng nhất định nào đó. Nó sẽ chịu đáp ứng lại mọi yêu cầu của client khi client này kết nối đến server trên cổng đó. Ví dụ như smtp daemon theo mặc định chạy trên cổng 25. Để có thể check mail, máy của bạn phải kết nối đến server này trên cổng 25, cổng mà smtp daemon đang nắm giữ!
Một số lệnh cơ bản của Telnet
Đây là một số lệnh cơ bản của Telnet mà bạn cần nhớ!
close đóng kết nối hiện tại
logout
display hiển thị các tham số điều khiển
mode thay đổi mode kí tự
open kết nối đến một site
quit thoát telnet
send gởi các kí tự đặc biệt
set đặt các tham số điều khiển
unset gở bỏ các tham số điều khiển đă đặt
status cho biết các thông tin về trạng thái hiện tại
toggle chốt các tham số điều khiển
slc thay đổi trạng thái của các kí tự đặc biệt
z pause telnet
! tạo một subtelnet(telnet con)
environ thay đổi các biến trạng thái
? gọi hướng dẫn sử dụng telnet
(Để biết thêm thông tin về telnet, bạn hăy gơ "man telnet" trong Linux*)
Phát hiện WEB SERVER bằng telnet
http://www.tnh.com.vn/ đang dùng web server ǵ nhỉ? Bạn hăy mở "MS-DOS Prompt" và gơ vào:
C:\> telnet www.tnh.com.vn 80
Chúng ta telnet đến
http://www.tnh.com.vn/ ở cổng 80!
Tiếp theo bạn gơ vào "GET / HTTP/1.1"(không có dấu nháy ") và nhấn phím <Enter> hai lần, bạn sẽ nhận được những thông tin sau:
HTTP/1.1 400 Bad Request
Server: Microsoft-IIS/4.0
Date: Wed, 04 Jul 2001 06:52:31 GMT
Content-Type: text/html
Content-Length: 87
<html><head><title>Error</title></head><body>The parameter is incorrect. </body>
</html>
Connection to host lost.
Hăy xem chúng ta thu thập được những ǵ?
ḍng 1: phiên bản của http service: HTTP/1.1 (có khi là PHP/4.0). Đây là mă trạng thái HTML
ḍng 2: http server, Microsoft-IIS/4.0
ḍng 3: ngày giờ +GTM
ḍng 4: phân loại nội dung
ḍng 5: chiều dài của các kí tự
Chỉ cần để ư đến ḍng 2, bạn có thể biết chắc ăn 100% là
http://www.tnh.com.vn/ đang chạy IIS v4.0!
(Lưu ư: bạn hăy bật chế độ ghi nhật kí cho Telnet, mắt bạn không tài nào nh́n thấy được các ḍng trên đâu! Nó hiện ra quá nhanh...! Hăy vào Terminal/Start Logging... và chỉ định một file nhật kí cho Telnet...!)
Bây giờ bạn thử telnet đến
http://www.astalavista.box.sk/ xem sao?!
C:\> telnet www.astalavista.box.sk 80
GET / HTTP/1.1
HTTP/1.1 400 Bad Request
Date: Wed, 04 Jul 2001 06:51:37 GMT
Server: Apache/1.3.19 (Unix) PHP/4.0.4pl1
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1
Bạn có thể thấy ngay là
http://www.astalavista.box.sk/ đang chạy Apache v1.3.19 trên nền Unix cùng với PHP v4.0.4!
Download và upload file bằng Telnet
Nếu bạn biết chính xác địa chỉ của một file trên http server, bạn có thể download nó về bằng cách telnet đến http server đó (ở cổng 80) và gơ vào theo dạng sau "HEAD <đường dẫn đến file cần download> HTTP/1.1" thay cho "GET / HTTP/1.1". Ví dụ như "HEAD /wordlist.txt HTTP/1.1"
Nếu http server cho phép bạn upload file(thường th́ không có chuyện này đâu!), bạn hăy dùng lệnh "PUT" để upload file lên. Ví dụ như "PUT /contact.htm HTTP/1.1"
Gởi thư bằng Telnet(dùng SMTP)
SMTP - Simple Mail Transfer Protocol là một daemon thường dùng để send mail. Cổng mặc định của nó là 25. Okay, bây giờ bạn hăy mở telnet đi!
C:\> telnet mail.newmail.net 25
------ connected ------
220 digital Microsoft ESMTP MAIL Service, Version: 5.0.2195.1600 ready at Wed,
4 Jul 2001 18:47:27 +1000
-----------------------
ḍng 1: mă số trạng thái 220: digital(domain hoặc địa chỉ ip của server): esmtp(extended) version 5.0.2195.1600
ḍng 2: thời gian +GMT
Bây giờ th́ bạn cần phải biết một số lệnh của smtp. Hăy gơ vào lệnh '?(hoặc '/?') và 'help' để gọi hướng dẫn! Tiếp theo, hăy send mail...!
----- các lệnh ------
HELO server.com (x authentication)
MAIL FROM: admin@server.com (địa chỉ email của người gởi)
RCPT TO: victim@victimserver.net (địa chỉ email của người nhận)
DATA (các dữ liệu trong thư)
SUBJECT email subject (ḍng subject)
một message cơ bản, cũng có khi là giả mạo
. (kết thúc message bằng một ḍng chỉ có một dấu chấm '.')
----------------------
(Tôi không đề cập chi tiết cách gởi thư nặc danh ở đây, bạn hăy tham khảo bài viết "Gởi thư nặc danh và dội bom thư bằng Sendmail" sẽ rơ!)
Nhận thư qua Telnet(dùng POP3)
POP3 - Post Office Protocol Version 3. POP3 daemon thường được chạy ở cổng 110(đây là cổn chuẩn của nó). Để check mail, bạn phải kết nối đến server đang chạy POP3 daemon ở cổng 110!
C:\> telnet mail.newmail.net 110
------ connected ------
+OK DPOP Version number supressed. <1206.994279150@newmail.net>
-----------------------
Bây giờ th́ bạn có thể vào check mail được rồi đó! Hăy xem qua các lệnh sau:
----- các lệnh ------
USER username (username của bạn)
+OK dazzed nice to hear from you - password required
PASS password (mật khẩu để vào ḥm thư của bạn)
+OK password accepted
LIST (liệt kê tất cả các thư)
1. 3045bytes
2. 345bytes
3. 8837bytes
RETR 2 (đọc lá thư thứ 2)
----------------------
Dễ không?
Tham gia vào các kênh chat IRC của nước ngoài!
Hăy theo tôi..!
Đầu tiên bạn telnet đến nether.net, đăng nhập với tên login là newuser và tạo một account cho bạn!
C:\> telnet nether.net
login: newuser
Okay, bây giờ hăy login vào với shell account mà bạn vừa đăng kí và chat IRC!
<user@nether.net> IRC
mở IRC client
/SERVER irc.box.sk 6667
kết nối đến irc.box.sk ở cổng 6667
/NICK Dazzed
hăy chọn một nickname...!
/JOIN #lameindustries
bây giờ hăy tham gia vào kênh chat mà bạn muốn! :)
Port surfing(duyệt cổng)
Port surfing nghĩa là kết nối đến các cổng của một máy chủ để thu thập các thông tin, chẳng hạn như thời gian, hệ điều hành, các dịch vụ đang chạy, ...! Sau đây là danh sách một số cổng mà bạn nên biết!
Interesting ports
7 echo bất ḱ những ǵ bạn nhập vào sẽ được host gởi trả lại(echo) bạn, không hữu ích cho lắm!
11 systat rất nhiều thông tin về users
13 daytime thời gian và ngày tháng ở máy chủ
15 netstat thông tin về networks
21 ftp file transfer protocol
23 telnet nơi bạn có thể login.
25 smpt simple mail transfer protocol
37 time time
39 rlp resource location
43 whois thông tin về hosts và networks
53 domain nameserver
79 finger rất nhiều thông tin về users (thường bị disable)
80 http web server
110 pop incoming email
119 nntp usenet news groups
443 https một web server khác nhưng an toàn hơn!
512 biff mail notification
513 rlogin - remote login
514 shell remote command, không cần dùng mật khẩu! syslog remote system logging
520 route routing information protocol
Bạn thấy telnet thế nào? Tuyệt vời...!