Протокол POP3
Формально, взаимодействие по протоколу POP3 можно разделить
на две фазы: фазу аутентификации и фазу обмена данными. В фазе аутентификации
пользователь должен сообщить свой идентификатор и пароль. Если аутентификация
была произведена успешно, то система позволяет работать с домашним ящиком
пользователя. Сам протокол POP3 очень похож на SMTP с той только разницей,
что сообщения можно принимать, но нельзя отправлять.
Исследуем этот протокол на примере. Для этого будем использовать
программу Telnet. Программа Telnet входит в поставку всех операционных
систем, которые поддерживают tcp/ip.
Для пользователей Windows: Start(Пуск)->Run(Выполнить). В окошке
набираем:
telnet smtp.mail.ru 110
Должна запуститься программа и сразу подсоединиться к серверу. Об удачном
подключении будет свидетельствовать сообщение от сервера (что-нибудь
в таком роде):
+OK POP3 server ready
Далее нам нужно аутентифицироваться на сервере. Для этого
есть две команды user и pass (логин и пароль). Попробуем их использовать:
user sergey
+OK
pass mypassword
+OK
Далее нам нужно узнать, что находится в нашем почтовом ящике. Используем
для этого команду stat:
stat
+OK 6 12576
Этот ответ говорит о том, что в нашем почтовом ящике есть 6 писем общим
объемом 12576 байт.
Посмотрим на эти письма более конкретно (с помощью команды list):
list
+OK 6 messages (12576 octets)
1 1447
2 2640
3 2296
4 1100
5 3025
6 2068
.
Например, мы хотим получить четвертое письмо. Для этого
используем команду retr номер_письма:
retr 4
Received: from host.talk.ru (host.talk.ru [194.67.45.136])
by saloon-o.mail.ru (Postfix) with ESMTP id 48BAC1AA60
for <sss@mail.ru>; Tue, 17 Aug 2004 11:19:24 +0400 (MSD)
Received: from mail by host.talk.ru with local (Exim 3.36 #5)
id 1BwyFg-00051X-00
for sss@mail.ru; Tue, 17 Aug 2004 11:19:02 +0400
From: mailoffice@talk.ru
Reply-To: mailoffice@talk.ru
Subject: talk.mail.ru
To: sss@mail.ru
Mime-Version: 1.0
Content-Type: text/plain; charset=koi8-r
Content-Transfer-Encoding: 8bit
Message-Id: <E1BwyFg-00051X-00@host.talk.ru>
Sender: mail <mail@host.talk.ru>
Date: Tue, 17 Aug 2004 11:19:02 +0400
.
Теперь, когда мы прочитали это сообщение, мы можем его удалить. Пометить
для удаления можно с помощью команды dele номер _сообщения (сообщение
удалиться после того, как мы закончим сеанс, то есть введем команду
quit):
dele 4
+OK Message 4 has been deleted.
Нужно вспомнить о еще одной команде. Это команда - rset.
С помощью этой команды можно отменить пометку об удалении сообщений
(она будет действовать, пока мы не закончим сеанс). Например:
rset
+OK Maildrop has 6 messages (12576 octets)
Теперь нам остается только закончить сеанс:
quit
+OK Pop server signing off.
Здесь указано все примерно, ответы сервера могут отличатся
от приведенных здесь, но принцип остается тот же.
:: Комментарии ::
|