Trạng thái AUTHORIZATION

Một phần của tài liệu Hệ thống phục vụ việc truyền thư tín điện tử trên cơ sở tìm hiểu về mô hình truyền thông thư tín, các giao thức truyền thông chuẩn, các hoạt động của hệ mail Server (Trang 35)

Khi một phiên giao dịch POP3 đ−ợc kích hoạt bởi một POP3 Client, POP3 Server sẽ gửi một thơng báo cho phía Client. T−ơng tự nh− phần trình bày về giao thức SMTP, ta cũng sử dụng Telnet để kích hoạt dịch vụ này. Một ví dụ cĩ thể là:

S: +OK dewey POP3 server ready

Chú ý rằng, đây là thơng tin phản hồi từ phía POP3 Server. Dấu ”+” cĩ nghĩa là thành cơng, ng−ợc lại, dấu ”-” là khơng thành cơng bị lỗi. Phiên làm việc POP3 hiện tại đang ở trạng thái AUTHORIZATION. Phía Client bây giờ cần phải đ−a vào các lệnh để xác định ng−ời nhận th− cho POP3 Server. Để thực hiện việc này, phía Client sử dụng hai lệnh là USER và PASS. Đầu tiên, Client sử dụng lệnh USER với tham số là account của ng−ời nhận.

Nếu thơng tin phản hồi từ phía POP3 Server bắt đầu bằng dấu ”+” (+OK) thì phía Client cĩ thể gửi tiếp lệnh PASS với tham số là mật khẩu của ng−ời nhận để kết thúc việc định danh hoặc cũng cĩ thể gửi lệnh QUIT để kết thúc phiên giao dịch.

Trong tr−ờng hợp ng−ợc lại, nếu thơng tin phản hồi bắt đầu bằng dấu ”-” (-ERR) cho lệnh USER thì phía Client cĩ thể thực hiện lại việc định danh hoặc kết thúc phiên giao dịch bằng lệnh QUIT.

Khi phía Client đ−a vào lệnh PASS, POP3 Server sẽ sử dụng kết hợp hai đối số đ−a vào bởi hai lệnh USER và PASS để xác định xem ng−ời sử dụng này cĩ tồn tại hay khơng, cĩ đ−ợc quyền truy nhập vào mailbox hay khơng,.v.v

Sau khi đã xác định phía Client đ−ợc quyền truy nhập, POP3 Server sẽ thực hiện việc khố mailbox để chống lại việc sửa đổi hoặc xố th− trong mailbox từ các phiên POP3 khác, tr−ớc khi chuyển sang trạng thái UPDATE.

Nếu nh− việc khố mailbox thành cơng, phiên giao dịch POP3 sẽ chuyển sang trạng thái TRANSACTION. Vào thời điểm này, ch−a cĩ một th− nào bị đánh dấu xố.

Trong tr−ờng hợp ng−ợc lại, nếu nh− vì một lý do nào đĩ khơng thể khố đ−ợc mailbox (ví dụ nh− khơng đ−ợc quyền truy nhập hoặc mailbox đã bị khố,.v.v) thì POP3 Server sẽ gửi một thơng tin phản hồi ”-ERR” và kết thúc luơn phiên giao dịch.

Sau khi POP3 Server đã mở đ−ợc mailbox, nĩ sẽ gắn chỉ số cho mỗi một bức th− và tính luơn kích th−ớc từng bức th−. Chỉ số đ−ợc bắt đầu từ 1. Trong các lệnh của POP3 và các thơng tin phản hồi, tất cả các chỉ số và kích th−ớc th− đều ở dạng cơ số 10.

Sau đây là một số lệnh cĩ thể thực hiện trong trạng thái AUTHORIZATION: a. Lệnh USER [name]

• Tham số: là một xâu ký tự định danh của mailbox, duy nhất đối với Server. • Hạn chế: Chỉ cĩ thể thực hiện trong trạng thái AUTHORIZATION vào thời

điểm ban đầu hoặc sau khi việc định danh USER và PASS khơng thành cơng. • Chi tiết: Lệnh này dùng để định danh ng−ời sử dụng.

• Thơng tin phản hồi:

+OK name is welcome here -ERR Never heard of name

Ví dụ:

C: USER mrose

S: +OK mrose is a real hoopy frood ...

C: USER frated

S: -ERR sorry, frated doesn't get his mail here b. Lệnh PASS [string]

• Tham số: là một xâu ký tự định danh của mật khẩu t−ơng ứng với mailbox. • Hạn chế: Chỉ cĩ thể thực hiện trong trạng thái AUTHORIZATION vào thời

điểm ban đầu hoặc sau khi việc định danh USER thành cơng.

• Chi tiết: Lệnh này dùng để xác định mật khẩu t−ơng ứng với ng−ời sử dụng đã định danh bằng lệnh USER.

• Thơng tin phản hồi:

+OK maildrop locked and ready -ERR invalid password

-ERR unable to lock maildrop

Ví dụ:

C: USER mrose

C: PASS secret

S: +OK mrose’s maildrop has 2 messages (320 octets)

... (adsbygoogle = window.adsbygoogle || []).push({});

C: USER mrose

S: +OK mrose is a real hoopy frood C: PASS secret

S: -ERR unable to lock mrose’s maildrop, file already locked

c. Lệnh QUIT

• Tham số: khơng. • Hạn chế: khơng

• Chi tiết: Lệnh này dùng để kết thúc phiên giao dịch. • Thơng tin phản hồi:

+OK

Ví dụ:

C: QUIT

S: +OK dewey POP3 server signing off 1.6.4. Trạng thái TRANSACTION

Mỗi lần phía Client thực hiện thành cơng việc định danh với POP3 Server, mailbox t−ơng ứng sẽ đ−ợc khố và phiên làm việc bây giờ sẽ ở trạng thái TRANSACTION.

Phía Client cĩ thể sử dụng bất cứ một lệnh POP3 nào để thực hiện giao dịch với POP3 Server. Các lệnh này cĩ thể lặp lại mà khơng bị hạn chế gì cả. Sau mỗi lệnh, phía POP3 Server sẽ gửi trả một thơng tin phản hồi và kết quả thực hiện.

Cuối cùng, phía Client thực hiện lệnh QUIT để chuyển phiên giao dịch sang trạng thái UPDATE.

Sau đây là một số lệnh cĩ thể thực hiện trong trạng thái TRANSACTION: a. Lệnh STAT

• Tham số: khơng.

• Hạn chế: Chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: Lệnh này dùng để lấy thơng tin về số th− trong mailbox và kích th−ớc của mailbox t−ơng ứng với ng−ời sử dụng. Cấu trúc của dịng thơng tin phản hồi này là: “+OK”, tiếp theo là một dấu cách trống, số l−ợng th− trong mailbox và kích th−ớc của mailbox t−ơng ứng với ng−ời dùng đã xác định.

• Thơng tin phản hồi: +OK nn mm

Ví dụ:

C: STAT S: +OK 2 320

b. Lệnh LIST [msg]

• Tham số: (cĩ thể cĩ hoặc khơng) là một số hiệu của th− trong số những th− hiện cĩ trong mailbox của ng−ời dùng. L−u ý, những th− bị đánh dấu xố sẽ bị bỏ qua.

• Hạn chế: Chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: Lệnh này dùng để liệt kê danh sách các th− cĩ trong mailbox và kích th−ớc t−ơng ứng hoặc lấy thơng tin về một th− cụ thể nào đĩ. Trong tr−ờng hợp khơng đ−a vào tham số thì POP3 Server sẽ trả lại “+OK” và một danh sách các th− và số hiệu t−ơng ứng trong mailbox của ng−ời dùng. Trong tr−ờng hợp ng−ợc lại, cĩ tham số, nếu tham số nằm trong khoảng cho phép từ 1 đến số th− thì POP3 Server sẽ trả lại “+OK” và số hiệu của th− và kích th−ớc t−ơng ứng. Ng−ợc lại, POP3 Server sẽ trả lại “-ERR”.

• Thơng tin phản hồi:

+OK scan listing follows -ERR no such message

Ví dụ:

C: LIST

S: +OK 2 messages (320 octets) S: 1 120 S: 2 200 S: . ... C: LIST 2 S: +OK 2 200 ... C: LIST 3

S: -ERR no such message, only 2 messages in maildrop c. Lệnh RETR [msg] (adsbygoogle = window.adsbygoogle || []).push({});

• Tham số: Số hiệu của th− cần lấy.

• Hạn chế: Chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: Lệnh này dùng để hiện thị nội dung th− t−ơng ứng với số hiệu đ−a vào. Nếu thực hiện đ−ợc POP3 Server sẽ gửi trả một thơng tin phản hồi đa dịng, bắt đầu bằng ”+OK”, tiếp theo là các dịng chứa đựng thơng tin về nội dung th− cũng nh− tiêu đề của th− đ−ợc chọn. Trong tr−ờng hợp cĩ lỗi, POP3 Server sẽ gửi trả ”-ERR”

• Thơng tin phản hồi: +OK message follows -ERR no such message

Ví dụ:

C: RETR 1 S: +OK 120 octets

S: <the POP3 server sends the entire message here> S: .

d. Lệnh DELE [msg]

• Hạn chế: chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: lệnh này dùng để xố một th− t−ơng ứng với số hiệu đ−a vào. Nếu thực hiện đ−ợc, POP3 Server sẽ gửi trả một thơng tin phản hồi bắt đầu bằng ”+OK”, tiếp theo là thơng tin về th− đã bị xĩa. Trong tr−ờng hợp cĩ lỗi, POP3 Server sẽ gửi trả ”-ERR”. L−u ý, POP3 Server chỉ thực hiện việc đánh dấu xố trên bức th− đĩ. Nĩ chỉ bị xố thực sự sau khi phiên giao dịch chuyển sang trạng thái UPDATE.

• Thơng tin phản hồi: +OK message deleted -ERR no such message

Ví dụ:

C: DELE 1

S: +OK message 1 deleted ...

C: DELE 2

S: -ERR message 2 already deleted

e. Lệnh NOOP • Tham số: khơng.

• Hạn chế: chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: lệnh này dùng để xác nhận kết nối với POP3 Server. POP3 Server khơng làm gì cả mà chỉ gửi trả lại ”+OK” cho Client.

• Thơng tin phản hồi: +OK Ví dụ: C: NOOP S: +OK f. Lệnh LAST • Tham số: khơng.

• Hạn chế: chỉ đ−ợc thực hiện trong trạng thái TRANSACTION.

• Chi tiết: POP3 server đặt một trả lời xác định với dịng chứa số thơng điệp cao nhất hiện tại mà nĩ đ−ợc truy cập trong maildrop. Trong tr−ờng hợp cịn đang ở trong trạng thái TRANSACTION mà các th− đã bị đánh dấu xĩa ch−a cĩ lệnh RSET thì số th− hiện cĩ trong maildrop vẫn khơng thay đổi tính luơn cả các th− đã đ−ợc đánh dấu xố.

• Thơng tin phản hồi: +OK nn Ví dụ: C: STAT S: +OK 4 320 C: LAST S: +OK 1 C: RETR 3

S: +OK 120 octets

S: <the POP3 server sends the entire message here> S: .

C: LAST S: +OK 3 C: DELE 2

S: +OK message 2 deleted C: LAST S: +OK 3 C: RSET S: +OK C: LAST S: +OK 1 g. Lệnh RSET • Tham số: khơng.

• Hạn chế: chỉ cĩ thể thực hiện trong trạng thái TRANSACTION.

• Chi tiết: lệnh này dùng để khơi phục lại những th− đã bị đánh dấu xĩa. Nếu thực hiện đ−ợc POP3 Server sẽ gửi trả thơng tin phản hồi ”+OK” để xác nhận đã bỏ đánh dấu đối với những th− đã bị đánh dấu xĩa. Trong tr−ờng hợp cĩ lỗi, POP3 Server sẽ gửi trả lời ”-ERR”

• Thơng tin phản hồi: +OK (adsbygoogle = window.adsbygoogle || []).push({});

Ví dụ:

C: RSET

S: +OK maildrop has 2 messages (320 octets) 1.6.5. Trạng thái UPDATE

Khi phía Client thực hiện lệnh QUIT đang ở trong trạng thái TRANSACTION. phiên giao dịch POP3 sẽ chuyển sang trạng thái UPDATE.

L−u ý rằng nếu lệnh QUIT đ−ợc thực hiện trong trạng thái AUTHORIZATION thì phiên giao dịch POP3 khơng chuyển sang trạng thái UPDATE.

Nếu một phiên giao dịch bị kết thúc vì một lý do nào đĩ mà khơng phải do phía Client thực hiện lệnh QUIT thì phiên giao dịch POP3 cũng khơng chuyển sang trạng thái UPDATE và cũng khơng thực hiện việc xĩa bất kỳ một th− nào từ mailbox.

•••• Lệnh QUIT

• Tham số: khơng. • Hạn chế: khơng.

• Chi tiết: Lệnh này dùng để kết thúc phiên giao dịch một cách hợp lệ. POP3 Server sẽ xĩa vật lý tất cả th− đã bị đánh dấu xĩa trong mailbox. Sau đĩ, nĩ sẽ gỡ bỏ khĩa đối với mailbox đĩ và cĩ một thơng tin phản hồi để xác nhận thao tác này. Kết nối TCP sẽ kết thúc.

• Thơng tin phản hồi:

Ví dụ:

C: QUIT

S: +OK dewey POP3 server signing off (maildrop empty)

...

C: QUIT

S: +OK dewey POP3 server signing off (2 messages left) ...

1.6.6. Ví dụ về một phiên giao dịch POP3

S: <wait for connection on TCP port 110> ...

C: <open connection>

S: +OK dewey POP3 server ready(Comments to:

PostMaster@UDEL.EDU) C: USER mrose

S: +OK mrose is a real hoopy frood C: PASS secret

S: +OK mrose's maildrop has 2 messages (320 octets) C: STAT

S: +OK 2 320 C: LIST

S: +OK 2 messages (320 octets) S: 1 120

S: 2 200 S: .

C: RETR 1

S: +OK 120 octets

S: <the POP3 server sends message 1> S: .

C: DELE 1 (adsbygoogle = window.adsbygoogle || []).push({});

S: +OK message 1 deleted C: RETR 2

S: +OK 200 octets

S: <the POP3 server sends message 2> S: .

C: DELE 2

S: +OK message 2 deleted C: QUIT

S: +OK dewey POP3 server signing off (maildrop empty) C: <close connection>

S: <wait for next connection>

1.7. MIME (MULTIPURPOSE INTERNET MAIL EXTENSIONS)

Laứ caực quy ủũnh về ủũnh kieồu vaứ caỏu truực dửừ lieọu do noọi dung mail ủeồ noự coự theồ chửựa ủửụùc caực loái taứi lieọu phửực hụùp khaực nhau nhử: hỡnh aỷnh, ãm thanh, file nhũ phãn…MIME coứn ủửụùc bieỏt ủeỏn nhử một giao thức Internet mới mẻ đ−ợc phát triển để cho phép trao đổi các thơng điệp th− điện tử cĩ nội dung phong phú thơng qua

mạng khơng đồng nhất (heterogeneous network), máy mĩc, và các mơi tr−ờng th− điện tử. Trong thực tế, MIME cũng đã đ−ợc sử dụng và mở rộng bởi các ứng dụng khơng phải th− điện tử. Hiện nay, trên mạng diện rộng Internet, đối với RFC 822 chỉ làm những cơng việc định nghĩa các header nh−ng cịn nội dung bên trong thì vẫn cịn lỗi thời, chính vì thế mà vấn đề này khơng cịn thích hợp nữa. Các vấn đề bao gồm việc gửi và nhận th− nh− sau:

1. Những thơng điệp sử dụng các ngơn ngữ cĩ dấu. ví dụ: Tiếng Pháp và tiếng Đức.

2. Những thơng điệp sử dụng các ngơn ngữ khơng phải chữ cái Latin. ví dụ: Tiếng Do thái, tiếng Nga. . .

3. Những thơng điệp sử dụng các ngơn ngữ khơng cĩ trong các bảng chữ cái. ví dụ: Tiếng Trung Quốc, tiếng Nhật. . .

4. Những thơng điệp sử khơng chứa văn bản. ví dụ: Cĩ âm thanh và hình ảnh.

Một giải pháp đã đ−ợc đ−a ra trong RFC 1341 và đ−ợc cập nhật mới nhất trong RFC 1521. Giải pháp này đ−ợc gọi là MIME, hiện nay đ−ợc sử dụng rộng rãi.

Khái niệm cơ bản của MIME là tiếp tục sử dụng định dạng RFC 822, nh−ng thêm cấu trúc vào phần thân của thơng điệp và định nghĩa các nguyên tắc mã hĩa các thơng điệp khơng phải các bảng mã ASCII. Để khỏi bị lệch h−ớng của RFC 822, các thơng điệp MIME cĩ thể đ−ợc gửi đi đ−ợc sử dụng các giao thức và ch−ơng trình th− hiện cĩ. Tất cả các ch−ơng trình này phải đ−ợc thay đổi thành các ch−ơng trình gửi và nhận sao cho ng−ời dùng cĩ thể dùng đ−ợc.

MIME định nghĩa năm header thơng điệp mới đ−ợc trình bày trong hình bên d−ới. Các header này tr−ớc tiên báo cho UA nhận thơng điệp mà nĩ đang dùng bằng thơng điệp MIME và phiên bản của MIME đang dùng. Bất cứ thơng điệp nào khơng chứa header MIME-Version: đ−ợc giả định là một thơng điệp hình thức đ−ợc mã hĩa bằng tiếng Anh và nĩ đ−ợc xử lý nh− thế.

Header Meaning

MIME-Version: Indentifies the MIME version

Content-Description: Human-readable string telling what is in the message Content-Id: Unique identifier

Content-Transfer-Encoding: How the body is wrapped for transmission Content-Type: Nature of the message

Các header RFC 822 đ−ợc MIME thêm vào.

Bảy kiểu chính mơ tả MIME đ−ợc định nghĩa trong RFC 1521, mỗi kiểu của nĩ lại cĩ một hay nhiều kiểu phụ. Kiểu chính và kiểu phụ (xem hình bên d−ới) đ−ợc phân biệt bởi một dấu vạch chéo, nh− cĩ dạng sau: Content-Type: video/mpeg

Type Subtype Description

Text Plain Unformatted text

Richtext Text including simple formatting commands Image Gif Jpeg Still picture in GIF format Still picture in JPEG format

Audio Basic Audible sound

Applicatio n

Octel-stream An uninterpreted byte sequence Postscript A printable document in Postscript Message

Rfc 822 A MIME RFC 822 message (adsbygoogle = window.adsbygoogle || []).push({});

Partial Message has been split for transmission External-body Message itself must be fetched over the net Multipart

Mixed Independent parts in the specified order Alternative Same message in different formats Parallel Parts must be viewed simultaneously Digest Each part is a complete RFC 822 message Các kiểu chính và kiểu phụ đ−ợc định nghĩa trong RFC 1521

1.8.POP BEFORE SMTP(CHệÙNG THệẽC QUYỀN TRUY CẬP THEO GIAO THệÙC POP TRệễÙC KHI SệÛ DUẽNG SMTP)

ẹeồ traựnh tỡnh tráng caực maựy chuỷ mail server bũ lám dúng gửỷi mail ồ át hay coứn gói laứ “bom thử”, cụ cheỏ POP before SMTP yẽu cầu maựy khaựch muoỏn sửỷ dúng dũch vú mai cuỷa maựy chuỷ trửụực heỏt phaỷi ủaờng nhaọp vaứo taứi khoaỷn(account) theo giao thửực POP. Neỏu quaự trỡnh ủaờng nhaọp thaứnh cõng, cụ cheỏ gụỷi mail baống SMTP mụựi coự theồ dieĩn ra tieỏp theo.

1.9.MAIL CLIENT, WEB MAIL

ẹãy laứ caực chửụng trỡnh thửụứng ủửụùc duứng nhaỏt trong quaự trỡnh gửỷi, nhaọn, ủóc mail. Nhửừng chửụng trỡnh ửựng dúng thuoọc dáng mail client coự raỏt nhiều vớ dú nhử :Outlook Express, Netscap Communicator…neỏu chửụng trỡnh mail client ủửụùc vieỏt dửụựi dáng giao dieọn Web seừ ủửụùc gói laứ Web mail. Thaọt ra Web mail tửụng taực khoự khaờn hụn caực ửựng dúng mail client thõng thửụứng vỡ phaỷi dửùa voaứ trỡnh chuỷ Web Server. Tuy nhiẽn ửu ủieồm cuỷa Web mail laứ bán coự theồ truy caọp mail ủửụùc ụỷ mói luực mói nụi, baỏt cửự khi naứo keỏt noỏi ủửụùc vaứo Internet.

CHệễNG 4 : GIễÙI THIỆU VỀ CÁC CÔNG NGHỆ LIÊN QUAN

JRun laứ ửựng dúng trỡnh chuỷ Java (Java Web Server) nhaốm phửùc vú nhửừng cõng ngheọ mụựi nhaỏt cuỷa Java nhử Servlet/JSP vaứ EẽB. Maởc duứ hieọn nay coự raỏt nhiều trỡnh chuỷ Web daứnh cho Java nhử Java Web Server, Web Logic, Apache,…Trong ủề taứi naứy tõi seừ ửựng dúng JRun Web Server cháy trẽn mõi trửụứng

Một phần của tài liệu Hệ thống phục vụ việc truyền thư tín điện tử trên cơ sở tìm hiểu về mô hình truyền thông thư tín, các giao thức truyền thông chuẩn, các hoạt động của hệ mail Server (Trang 35)