Книга: Сетевые средства Linux

Пример сеанса взаимодействия по протоколу IMAP

Пример сеанса взаимодействия по протоколу IMAP

Как и POP, IMAP представляет собой протокол получения почты, однако IMAP позволяет использовать расширенные средства управления сообщениями. Применяя IMAP, пользователь, перед тем как копировать письма на свой компьютер, может ознакомиться с их заголовками. Наличие дополнительных возможностей предполагает реализацию дополнительных команд; таковых в IMAP-4 предусмотрено больше двадцати. (IMAP-4 является текущей версией данного протокола и использует при работе порт 143.) Пример сеанса взаимодействия по протоколу IMAP приведен в листинге 11.2. В ходе этого сеанса достигается такой же результат, как и при использовании протокола POP (листинг 11.1). Отличие лишь в том, что листинг 11.2 включает команду копирования сообщения в папку IMAP.

Листинг 11.2. Пример сеанса IMAP-4

$ telnet nessus 143
Trying 192.168.1.3...
Connected to nessus.rodsbooks.com.
Escape character is '^]' .
* OK nessus.rodsbooks.com IMAP4rev1 v12.264.phall server ready
A1 LOGIN rodsmith password
A1 OK LOGIN completed
A2 SELECT Inbox
* 1 EXISTS
* NO Trying to get mailbox lock from process 29559
* 1 RECENT
* OK [UIDVALIDITY 997295985] UID validity status
* OK [UIDNEXT 4] Predicted next UID
* FLAGS (Answered Flagged Deleted Draft Seen)
* OK [PERMANENTFLAGS (* Answered Flagged Deleted Draft Seen)]
Permanent flags
* OK [UNSEEN first unseen message in /var/spool/mail/rodsmith
A2 OK [READ-WRITE] SELECT completed
A3 FETCH 1 BODY [HEADER]
* 1 FETCH (BODY[HEADER] {494}
>From rodsmith Wed Aug 8 16:02:47 2001
Return-Path:
Delivered-To: [email protected]
Received: from speaker.rodsbooks.com (speaker.rodsbooks.com [192.168.1.1])
 by nessus.rodsbooks.com (Postfix) with SMTP id 2C7121A2BD
 for <[email protected]>; Wed, 8 Aug 2001 16:02:25 -0400 (EDT)
Message-Id: <[email protected]>
Date: Wed, 8 Aug 2001 16:02:25 -0400 (EDT)
From: [email protected]
To : undisclosed-recipients: ;
* 1 FETCH (FLAGS (Recent Seen))
A3 OK FETCH completed
A4 FETCH 1 BODY [TEXT]
* 1 FETCH (BODY[TEXT] {25}
This is a test message.
A4 OK FETCH completed
A5 COPY 1 demos
A5 OK COPY completed
A6 LOGOUT
* BYE nessus.rodsbooks.com IMAP4rev1 server terminating connection
A6 OK LOGOUT completed
Connection closed by foreign host.

Листинг 11.2 демонстрирует дополнительные возможности IMAP, которые отсутствуют в протоколе POP. IMAP требует от клиента передавать ему нумерованные команды, например, вместо LOGOUT в листинге указано A6 LOGOUT. Эта особенность скрыта от пользователя, так как обработка команд полностью производится клиентской программой. IMAP позволяет копировать заголовки отдельно от текста сообщений (команды A3 и A4 в приведенном листинге). Использование папок предполагает выбор нужной папки в ходе сеанса взаимодействия (команда A2), но пользователь получает возможность копировать письма из одной папки в другую (команда A5). В листинге 11.2 представлена лишь часть возможностей IMAP. Существует много разновидностей приведенных команд, в частности, различные способы обработки писем обеспечиваются с помощью команды FETCH. Дополнительные сведения о протоколе IMAP можно получить в специальных документах, один из которых находится по адресу http://www.ietf.org/rfc/rfc2060.txt.

Несмотря на то что рассмотрение низкоуровневых команд позволяет получить представление о работе IMAP, вам, как системному администратору, вряд ли необходимо знать детали функционирования этого протокола. Однако наличие некоторых команд оказывает влияние на конфигурацию сервера. Поскольку IMAP позволяет работать с папками, эти папки надо где-то хранить. Расположение папок зависит от используемого сервера. В настоящее время наиболее популярен сервер IMAP, разработанный в Вашингтонском университете (UW IMAP; http://www.washington.edu/imap/). Этот сервер хранит все папки в рабочем каталоге пользователя. Исключение составляет папка INBOX, которая находится в одном из стандартных каталогов, используемых почтовой системой, а именно, в /var/spool/mail/имя_пользователя. Когда пользователь впервые обращается к серверу IMAP, для него существует только папка INBOX. В процессе работы пользователь может создавать новые папки, применяя для этого соответствующие команды программы просмотра почты. Получив подобную команду, сервер UW IMAP создает каталог в рабочем каталоге пользователя. Прочие серверы используют для организации папок другие каталоги. Необходимые сведения по этому вопросу вы можете получить из документации на конкретный сервер. Выполняя администрирование системы, необходимо знать, где размещаются папки, чтобы выделить необходимое для них дисковое пространство. Это особенно важно на крупных серверах, обслуживающих большое количество пользователей, либо в тех случаях, когда пользователи хранят на сервере почтовые сообщения большого объема.

Оглавление книги


Генерация: 1.698. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз