Слайд 1SMTP – почтовый протокол (RFC-821, -822)
RFC-822 – формат сообщений
UUCP (ASCII
-> UUENCODE/UUDECODE)
Слайд 2
EHLO dxmint.cern.ch
500 command unrecognized
HELO crnvma.cern.ch
MAIL FROM: ,
RCPT
TO:
DATA
Слайд 3Алгоритм работы протокола SMTP
tn dxmint.cern.ch 25 (команда telnet с использованием
порта 25)
220 dxmint.cern.ch sendmail ready at sun, 9 jul 1995
11:13:57 +0200 (связь установлена, код отклика 220 является положительным)
EHLO dxmint.cern.ch (поддерживает ли сервер расширение mime?) 500 command unrecognized (не поддерживает)
HELO crnvma.cern.ch (команда выхода на конкретный сервер)
MAIL FROM:
Эта команда сообщает SMTP-получателю, что стартует новая процедура и следует сбросить в исходное состояние все статусные таблицы, буферы и т.д. Если команда прошла, получатель реагирует откликом: 250 OK.
Слайд 4Алгоритм работы протокола SMTP
250 ... sender ok (команда прошла успешно)
RCPT TO: ysemenov@cernvm.cern.ch (указываем адрес места назначения) 250 ... recipient
ok
DATA (начало ввода текста сообщения) nu-i-nu... (текст сообщения)
. (знак конца сообщения)
QUIT (прерывание или завершение процедуры)
Слайд 5
VRFY и EXPN (проверка корректности имени адресата (VRFY) и расширение
списка адресов (EXPN). В некоторых системах аргументом команды EXPN может
быть имя файла, содержащего список почтовых адресов
SEND FROM:
SOML FROM: Send Or MaiL
SAML FROM: Send And MaiL
RESET, HELP, NOOP,
TURN
Слайд 6POP3 (Post Office Protocol - V3, STD- 53. Порт 110)
POP3
не ставит целью предоставление широкого списка манипуляций с почтой. Почтовые
сообщения принимаются почтовым сервером и сохраняются там, пока на рабочей станции клиента не будет запущено приложение POP3. Это приложение устанавливает соединение с сервером и забирает сообщения оттуда. Почтовые сообщения на сервере стираются
Команды POP3 состоят из ключевых слов (3-4 символа), за которыми могут следовать аргументы. Каждая команда завершается парой символов CRLF.
Как ключевые слова, так и аргументы могут содержать только печатаемые ASCII-символы
Каждый аргумент может содержать до 40 символов
Длина отклика не превышает 512 символов, включая CRLF.
Существует два индикатора состояния: положительный - "+OK" и отрицательный "-ERR«
APOP name digest, где name - идентификатор почтового ящика, а digest - дайджест сообщения - MD5 (RFC-1828). Команда используется только на стадии авторизации.
Слайд 8IMAP - Internet Message Access Protocol
В отличие от POP3
IMAP хранит почтовые сообщения у себя “вечно” (пока клиент сам
не пожелает их стереть).
Каждому сообщению ставится в соответствие 32-битовый код, который при использовании совместно с уникальным идентификатором (UID) образует 64-битовую последовательность, гарантирующую однозначную идентификацию сообщения в почтовом ящике
UID для данного почтового ящика должен всегда изменяться монотонно. Если порядок записей изменен вне рамок IMAP, необходимо перегенерировать UID для данного почтового ящика, так как порядок старых значений UID в этом случае уже не будет монотонным
Слайд 9Флаги сообщений
\seen Сообщение прочитано
\answered На сообщение послан ответ
\flagged
Сообщение "помечено" как срочное, требующее особого внимания
\deleted Сообщение помечено
как стертое для последующего удаления посредством expunge
\draft Сообщения не является законченным (помечено, как проект).
\recent Сообщение только что положено в почтовый ящик. Эта сессия является первой, где фигурирует данное сообщение; для последующих сессий это сообщение не будет иметь флага \recent. Флаг не может быть изменен клиентом.
Слайд 10SPAM
Учитывая доходность рассылки SPAM, вряд ли удастся победить это явление
число аппаратно-программными способами. Здесь нужны юридические меры, которые сделают этот
бизнес более рискованным. Рискованность должна перекрывать возможность получения дохода от нелегальной рассылки.
Слайд 11Признаки SPAM
Избегайте использования слов и выражений, которые запускают систему защиты
против спама. Смотри списки ключевых слов, например, Ключевые слова и
выражения - признаки SPAM (например, все исключительно натуральное, подарочный сертификат, бесплатный, бесплатное участие, бесплатный хостинг и т.д. и т.п.)
Минимизируйте использование цветных шрифтов
Предпочтительно используйте простой текст, а не HTML
Не используйте без нужды приложения, лучше вставлять их в текст письма.
Ни в коем случае не рассылайте SPAM, даже в качестве исключения. Например, не переадресуйте заинтересовавшее вас SPAM-сообщение своим друзьям или знакомым
Не используйте слово test в поле subject, многие фильтры выбрасывают такие сообщения.
Строка subject должна быть по возможности оригинальной
Используйте подписные листы с осторожностью, чтобы исключить попадания вашего почтового сервера в репутационный список.
Слайд 12MIME (Multipurpose Internet Mail Extensions; RFC-2045-49)
Документ RFC 822, который прослужил
уже более 20 лет, регламентирует работу лишь с текстовыми сообщениями
Content-Type - "text" / "image" / "audio" / "video" / "application" / extension-token
Content-Transfer-Encoding - "7bit" / "8bit" / "binary" / "quoted-printable" / "base64" / ietf-token / x-token
Термин "сообщение", обозначает сообщение типа RFC 822, передаваемое по сети, или сообщение, инкапсулированное в тело типа "message/rfc822" или "message/partial".
Следует иметь в виду, что в отличии от транспортного кодирования Base64, Quoted-Printable кодирование применимо только для текстов, по этой причине оно зависит от используемого символьного набора.
Слайд 13Закавыченные последовательности печатных символов
Если двоичные данные закодированы в виде
закавыченных последовательностей печатных символов, следует позаботиться о том, чтобы символы
CR и LF были представлены в виде "=0D" и "=0A", соответственно. В частности, последовательность CRLF в двоичных данных должна кодироваться как "=0D=0A".
quoted-printable := qp-line *(CRLF qp-line)
qp-line := *(qp-segment transport-padding CRLF) qp-part transport-padding
qp-part := qp-section ; Максимальна длина 76 символов
qp-segment := qp-section *(SPACE / TAB) "=" ; Максимальна длина 76 символов
Слайд 14base64
0 - A 1 – B 2 – C 3 – D 4 –
E
5 – F 6 – G 7 - H 8 – I 9 –
J
A – K B – L C – M D – N E – O
F – P 10 - Q 11 – R 12 – S 13 – T
14 – U 15 – V 16 – W 17 – X 18 – Y
19 – Z 1A – a 1B – b 1C – c 1D – d
1E –e 1F – f 20 - g 21 – h 22 – I
23 –j 24 – k 25 – l 26 – m 27 – n
28 – o 29 – p 2A – q 2B – r 2C – s
2D – t 2E – u 2F – v 30 – w 31 - x
32 – y 33 – z 34 – 0 35 – 1 36 - 2
37- 3 38 – 4 39 – 5 3A – 6 3B - 7
3C – 8 3D – 9 3E – + 3F - /
Слайд 15Sendmail и ListServ
Почтовая программа sendmail должна запускаться в фоновом режиме
с помощью строки в стартовом скрипте. Например:
/usr/lib/sendmail -bd -q30m
Уязвимость для
хакеров, занимающихся рассылкой SPAM, вынудила ограничить доступ к подписным листам, введя доступ исключительно с использованием пароля. Развитие технологии форумов и lifejournal дополнительно ограничило область применения данного сервиса
Слайд 16ICQ ("I seek you").
Яр Голдфингер (Yair Goldfinger), Арик Валди
(Arik Valdi), Сефи Вигизеру (Sefi Visiger) и Амнон Амир (Amnon
Amir).
Именно эти люди создали в 1996 году компанию Mirabilis для предоставления клиентам нового вида обмена сообщениями.
Слайд 18Skype
Система Skype обеспечивает шифрованную голосовую и видео связь через Интернет
между компьютерами. В Skype используется технология P2P-сетей. Программы Skype позволяют
также платные звонки на мобильные и стационарные телефоны. Допускается реализация и аудиоконференций при числе абонентов до 25 и видеоконференций для 10 участников.
Система Skype была разработана Янусом Фриисом и Никласом Зеннстромом (Эстония), которые ранее создали файлообменную сеть Kazzaa.
Все обмены в Skype шифруются с применением алгоритмов RSA и AES.
На сентябрь 2011 года было зарегистрировано 663 млн. пользователей (данные Википедии).
Слайд 19XMPP-архитектура (Extensible Messaging and Presence Protocol)
C1, C2, C3 = XMPP
клиенты
S1, S2 = XMPP серверы
G1 = шлюз, который
осуществляет согласования XMPP и протоколов, используемых в сети без поддержки XMPP.
FN1 = внешняя сеть без поддержки XMPP
FC1 = клиент сети без поддержки XMPP
Слайд 20XMPP (RFC-2779)
Используется XML; обмен строфами (stanzas)
В 2002 рабочая группа
XMPP занялась адаптацией протокола Jabber, для обмена сообщениями в реальном
масштабе времени (IM)
Режим обратного дозвона для исключения фальсификации домена
Адрес XMPP-объекта называется идентификатором Jabber или JID
jid = [ узел "@" ] домен [ "/" ресурс ] (формализм Бакуса- Наура)
domain = fqdn / адрес-литерал
fqdn = (субдомен 1*("." субдомен))
sub-domain = (международная метка домена)
address-literal = IPv4-адрес / IPv6-адрес
JID () или полный JID (),
TLS шифрование (SASL (Simple Authentication and Security Layer))
Слайд 21Семантика присутствия
Элемент может рассматриваться как механизм широковещательного уведомления, посредством
чего многие объекты получают информацию об объекте, на которую они
подписались (в данном случае информация о доступности сети). Вообще, уведомляющий объект должен послать строфу присутствия без атрибута 'to', серверу, который должен широковещательно переслать ее всем объектам-подписчикам.
Info/Query, или IQ, представляет собой механизм запросов-откликов
Слайд 22Информационный диалог между серверами
Слайд 23Диалог запрос-отклик (cемантика IQ)
Слайд 25Тенденции в бизнесе, связанные с UC