LAB2 Апухтин М.А. (544693), страница 2
Текст из файла (страница 2)
Тело письма
Тело письма отделяется от заголовка пустой строкой, а заканчивается (согласно стандартам SMTP) строчкой, состоящей из единственной точки (и символа перевода строки). Часть почтовых клиентов (например, Thunderbird) показывают эту точку, часть нет. В не-smtp стандартах формат письма зависит от стандарта системы (например, MAPI), но перед «выходом» письма за пределы MAPI-совместимой системы (например, перед пересылкой через Интернет) обычно приводится к SMTP-совместимому виду (иначе маршрутизация письма была бы невозможной, так как стандартом передачи почты в Интернете является SMTP).
Одним из существенных ограничений стандартов на почтовую пересылку является применение 7-битной кодировки (ASCII). Для английского текста это не представляет особой проблемы, однако, большинство неанглоязычных языков используют 8 (и более) битные кодировки, передача которых без искажений не гарантируется. Для целей совместимости, все не 7-битные кодировки приводятся в 7-битный вид (используя различные методы кодирования текста).
Протоколы передачи писем
POP3
POP3 (англ. Post Office Protocol Version 3 – протокол почтового отделения, версия 3) используется почтовым клиентом для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP.
Предыдущие версии протокола (POP, POP2) устарели. Альтернативным протоколом для сбора сообщений с почтового сервера является IMAP.
В протоколе POP3 предусмотрено 3 состояния сеанса:
-
авторизация: клиент проходит процедуру аутентификации;
-
транзакция: клиент получает информацию о состоянии почтового ящика, принимает и удаляет почту;
-
обновление: сервер удаляет выбранные письма и закрывает соединение.
IMAP
IMAP (англ. Internet Message Access Protocol) – протокол прикладного уровня для доступа к электронной почте. IMAP предоставляет пользователю богатые возможности для работы с почтовыми ящиками, находящимися на центральном сервере. Почтовая программа, использующая этот протокол, получает доступ к хранилищу корреспонденции на сервере так, как будто эта корреспонденция расположена на компьютере получателя. Электронными письмами можно манипулировать с компьютера пользователя (клиента) без необходимости постоянной пересылки с сервера и обратно файлов с полным содержанием писем. Для отправки писем используется протокол SMTP.
Преимущества по сравнению с POP3
IMAP был разработан для замены более простого протокола POP3 и имеет следующие преимущества по сравнению с последним:
-
Письма хранятся на сервере, а не на клиенте. Возможен доступ к одному и тому же почтовому ящику с разных клиентов. Поддерживается также одновременный доступ нескольких клиентов. В протоколе есть механизмы, с помощью которых клиент может быть проинформирован об изменениях, сделанных другими клиентами.
-
Поддержка нескольких почтовых ящиков (или папок). Клиент может создавать, удалять и переименовывать почтовые ящики на сервере, а также перемещать письма из одного почтового ящика в другой.
-
Возможно создание общих папок, к которым могут иметь доступ несколько пользователей.
-
Информация о состоянии писем хранится на сервере и доступна всем клиентам. Письма могут быть помечены как прочитанные, важные и т. п.
-
Поддержка поиска на сервере. Нет необходимости скачивать с сервера множество сообщений для того чтобы найти одно нужное.
-
Поддержка онлайн-работы. Клиент может поддерживать с сервером постоянное соединение, при этом сервер в реальном времени информирует клиента об изменениях в почтовых ящиках, в том числе о новых письмах.
-
Предусмотрен механизм расширения возможностей протокола.
Текущая версия протокола имеет обозначение IMAP4rev1 (IMAP, версия 4, ревизия 1). Протокол поддерживает передачу пароля пользователя в зашифрованном виде.
SMTP
SMTP (англ. Simple Mail Transfer Protocol – простой протокол передачи почты) – это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.
ESMTP (англ. Extended SMTP) – масштабируемое расширение протокола SMTP. В настоящее время под протоколом SMTP, как правило, подразумевают ESMTP и его расширения.
SMTP используется для отправки почты от пользователей к серверам и между серверами для дальнейшей пересылки к получателю. Для приёма почты почтовый клиент должен использовать протоколы POP3 или IMAP.
Чтобы доставить сообщение до адресата, необходимо переслать его почтовому серверу домена, в котором находится адресат. Для этого обычно используется запись типа MX (англ. Mail eXchange – обмен почтой) системы DNS. Если MX запись отсутствует, то для тех же целей может быть использована запись типа A. Некоторые современные реализации SMTP-серверов (например, Exim) для определения сервера, обслуживающего почту в домене адресата, также могут задействовать SRV-запись (RFC 2782).
Широкое распространение SMTP получил в начале 1980-х годов. До него использовался протокол UUCP, который требовал от отправителя знания полного маршрута до получателя и явного указания этого маршрута в адресе получателя, либо наличия прямого коммутируемого или постоянного соединения между компьютерами отправителя и получателя.
Sendmail был одним из первых (если не первым) агентом отправки сообщений, который начал работать с SMTP. В настоящее время протокол SMTP является стандартным для электронной почты и его используют все клиенты и серверы.
Безопасность SMTP и спам
Изначально SMTP не поддерживал единой схемы авторизации. В результате этого спам стал практически неразрешимой проблемой, так как было невозможно определить, кто на самом деле является отправителем сообщения - фактически можно отправить письмо от имени любого человека. В настоящее время производятся попытки решить эту проблему при помощи спецификаций SPF, Sender ID, Yahoo Domain Keys. Единой спецификации на настоящий момент не существует.
Типы и принципы построения почтовых серверов, модель их работы
Самыми распространенными являются три типа почтовых серверов:
-
Почтовые серверы POP3 (Post Office Protocol 3) хранят входящие сообщения до проверки пользователем электронной почты, когда они пересылаются на его компьютер. POP3 — наиболее распространенный тип учетной записи для личной электронной почты. Сообщения обычно удаляются с сервера после проверки пользователем своей электронной почты.
-
Серверы IMAP (Internet Message Access Protocol) позволяют работать с сообщениями электронной почты без предварительной загрузки их на компьютер пользователя. Можно просматривать, удалять и упорядочивать сообщения непосредственно на сервере электронной почты, при этом копии хранятся на сервере, пока пользователь не удалит их. IMAP обычно используется для учетных записей деловой электронной почты.
-
Серверы SMTP (Simple Mail Transfer Protocol) используются для отправки сообщений электронной почты в Интернет. Серверы SMTP обрабатывают исходящую электронную почту и используются в сочетании с сервером входящей электронной почты POP3 или IMAP.
Методы борьбы со спамом
Идеология
Очевидно, что спам приносит экономическую выгоду его заказчикам. Это означает, что пользователи, несмотря на неприязнь к спаму, всё-таки пользуются рекламируемыми посредством спама услугами. До тех пор, пока отдача от спама превышает затраты на преодоление защиты, спам не исчезнет. Таким образом, самым надёжным способом борьбы является отказ от услуг, рекламируемых посредством спама. Встречаются предложения о применении общественного осуждения, вплоть до прекращения общения, против лиц, покупающих рекламируемые спамом товары и услуги.
Другие способы направлены на затруднение спамерам доступа к пользователям.
Превентивные меры защиты
Самый надёжный способ борьбы со спамом — не позволить спамерам узнать электронный адрес. Это трудная задача, но некоторые меры предосторожности можно предпринять.
-
Не следует публиковать свой адрес на общедоступных сайтах.
-
Если по каким-то причинам адрес электронной почты приходится публиковать, его можно закодировать наподобие «u_s_e_r_(a)_d_o_m_a_i_n_._n_e_t». Спамеры используют специальные программы для сканирования сайтов и сбора почтовых адресов, поэтому даже такая маскировка адреса может помочь. Следует помнить, однако, что в самых простых случаях «закодированный» адрес сможет распознать и программа. К тому же, это создает неудобства не только для спамеров, но и для обычных пользователей.
-
Большинство публичных сайтов не публикует адреса электронной почты зарегистрированных пользователей, но даёт возможность отправить сообщение по нику. Реальный адрес подставляется сервером из профиля пользователя, и другим пользователям невидим.
-
Адрес можно представить в виде картинки. Существуют онлайн-службы, делающие это автоматически (однако, не следует забывать, что некоторые из этих служб могут сами собирать и продавать введенные пользователями почтовые адреса). Кроме того, это можно сделать в любом графическом редакторе или просто написать электронный адрес от руки и сфотографировать.
-
На web-страницах адреса электронной почты можно кодировать при помощи JavaScript.
-
Можно завести специальный ящик для регистрации в службах, не вызывающих особого доверия, и не использовать его для обычной работы. Существуют даже службы, выдающие одноразовые адреса электронной почты специально для того, чтобы указывать их в сомнительных случаях. Самая известная из них — mailinator.com.
Никогда не следует отвечать на спам или переходить по содержащимся в нём ссылкам, в том числе и по ссылкам, предназначенным якобы для отписки от рассылки. Такое действие подтвердит, что электронный адрес реально существует, активно используется, а его получатель читает спам, и приведёт к увеличению количества спама.
Факт загрузки картинок, включенных в письмо, при прочтении, может использоваться для проверки активности почтового адреса. Поэтому рекомендуется при запросе почтового клиента о разрешении загрузки картинки запрещать действие, если вы не уверены в отправителе.
Выбирая адрес электронной почты, следует, по возможности, остановиться на длинном и неудобном для угадывания имени. Так, имеется менее 12 миллионов имён, состоящих из не более 5 латинских букв. Даже если добавить цифры и символ подчерка, количество ников менее 70 миллионов. Спамер может отправить почту на все такие имена и отсеять те, с которых ему пришёл ответ «адресата не существует». Таким образом, желательно, чтобы имя было не короче 6 символов, а если в нём нет цифр — не короче 7 символов. Желательно также, чтобы имя не было словом в любом языке, включая распространённые имена собственные, а также записанные латиницей русские слова. В этом случае адрес может быть угадан путём перебора слов и комбинаций по словарю.
Можно время от времени менять свой адрес, но это связано с очевидными трудностями: нужно сообщить новый адрес людям, от которых хотелось бы получать почту.
Компании часто не публикуют свой адрес, вместо этого используя CGI для связи с пользователями.
У всех методик сокрытия адреса есть принципиальный недостаток: они создают неудобства не только предполагаемым спамерам, но и реальным адресатам. К тому же, зачастую адрес опубликовать просто необходимо — например, если это контактный адрес фирмы.
Фильтрация
Поскольку рекламные письма, как правило, сильно отличаются от обычной корреспонденции, распространённым методом борьбы с ними стало отсеивание их из входящего потока почты. На настоящее время этот метод — основной и наиболее широко используемый.
Автоматическая фильтрация
Существует программное обеспечение (ПО) для автоматического определения спама (т. н. спам-фильтры). Оно может быть предназначено для конечных пользователей или для использования на серверах. Это ПО использует два основных подхода.
Первый заключается в том, что анализируется содержание письма и делается вывод, спам это или нет. Письмо, классифицированное как спам, отделяется от прочей корреспонденции: оно может быть помечено, перемещено в другую папку, удалено. Такое ПО может работать как на сервере, так и на компьютере клиента. В последнем случае пользователь не видит отфильтрованного спама, но продолжает нести издержки, связанные с его приемом, так как фильтрующее ПО получает каждое письмо и только потом решает, показывать его или нет. С другой стороны, если ПО работает на сервере, пользователь не несёт издержек по передаче его на свой компьютер, однако, в этом случае пользователь рискует не получить письмо, ошибочно воспринятое фильтром как спам.
Второй подход заключается в том, чтобы, применяя различные методы, опознать отправителя как спамера, не заглядывая в текст письма. Это ПО может работать только на сервере, который непосредственно принимает письма. При таком подходе дополнительный трафик тратится только сервером на общение со спамерскими почтовыми программами (т. е. на отказы принимать письма) и обращения к другим серверам (если таковые нужны) при проверке.
Существуют также специализированные online-сервисы, например, «Лаборатория Касперского» (сервис Kaspersky Hosted Security), Outcom "СПАМОРЕЗ, ИНКАП «Антиспам-Пост», ContrSpam, Антиспамус предоставляющие платную защиту от спама. Изменение MX-записи в доменном имени предприятия особым образом позволяет перенаправить почту для защищаемого домена на специализированный почтовый сервер, где она очищается от спама и вирусов, а затем направляется на корпоративный почтовый сервер. Метод подходит для корпоративных пользователей и не годится для обладателей почтовых ящиков в публичных почтовых системах.
Ещё одна проблема автоматической фильтрации в том, что она может по ошибке отмечать как спам полезные сообщения. Поэтому многие почтовые сервисы и программы по желанию пользователя могут не стирать те сообщения, которые фильтр счёл спамом, а помещать их в отдельную папку.
Методы автоматической фильтрации