Correio Eletrnico E-mail & SMTP Tpicos em Sistemas de Computao - - PDF document

correio eletr nico
SMART_READER_LITE
LIVE PREVIEW

Correio Eletrnico E-mail & SMTP Tpicos em Sistemas de Computao - - PDF document

UNESP - So Jos do Rio Preto Tpicos em Sistemas de Computao Correio Eletrnico E-mail & SMTP Tpicos em Sistemas de Computao 2014 Prof. Dr. Adriano Mauro Cansian adriano@acmesecurity.org Estagirio Docente: Vincius


slide-1
SLIDE 1

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

1

Correio Eletrônico

E-mail & SMTP

Tópicos em Sistemas de Computação – 2014

  • Prof. Dr. Adriano Mauro Cansian

adriano@acmesecurity.org Estagiário Docente: Vinícius Oliveira viniciusoliveira@acmesecurity.org

E-­‑mail… ¡

2

“Os ¡usuários ¡possuem ¡uma ¡relação ¡ de ¡amor ¡e ¡ódio ¡com ¡o ¡e-­‑mail: ¡eles ¡ amam ¡usá-­‑lo, ¡e ¡odeiam ¡quando ¡ele ¡ não ¡funciona.” ¡ ¡

– ¡Craig ¡Hunt ¡

(C) 2014 Adriano Mauro Cansian

slide-2
SLIDE 2

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

2

Sistema ¡de ¡E-­‑mail ¡

  • Apesar das redes sociais...
  • O Correio Eletrônico ainda é uma das aplicações mais

difundidas da Internet.

  • Facilidade de uso, velocidade e amplo poder de troca de

informações.

  • Muitas aplicações críticas usam e-mail.
  • Sistema muito fácil de usar.
  • Permite enviar mensagens de texto puro, transferir

programas, fotos, áudio vídeos, ou qualquer outro arquivo, praticamente de forma instantânea.

  • “off-line” à não depende da outra ponta estar on-line.

3

(C) 2014 Adriano Mauro Cansian

Número ¡de ¡contas ¡e ¡usuários ¡de ¡e-­‑mail ¡

(C) 2014 Adriano Mauro Cansian

4

Email Statistics Report, 2009-2013 Executive Summary www.radicati.com

slide-3
SLIDE 3

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

3 Worldwide ¡Daily ¡Email ¡Traffic, ¡2012 ¡– ¡2016 ¡(*) ¡ (em ¡bilhões ¡de ¡mensagens) ¡

(C) 2014 Adriano Mauro Cansian

5

(*) estimativas THE RADICATI GROUP, INC. http://www.radicati.com/wp/wp-content/uploads/2012/04/Email-Statistics-Report-2012-2016-Executive-Summary.pdf (17.11.2014)

QuanQdade ¡de ¡contas ¡corporaQvas ¡e ¡pessoais(*) ¡ (em ¡milhões) ¡

(C) 2014 Adriano Mauro Cansian

6

(*) estimativas THE RADICATI GROUP, INC. http://www.radicati.com/wp/wp-content/uploads/2012/04/Email-Statistics-Report-2012-2016-Executive-Summary.pdf (17.11.2014)

slide-4
SLIDE 4

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

4

Mas, ¡nem ¡todo ¡mundo ¡domina... ¡

(C) 2014 Adriano Mauro Cansian

7

(C) 2014 Adriano Mauro Cansian

8 . . . Received: from edutec.unesp.br (edutec.unesp.br [IPv6:2801:88:1000:ead::66]) by ceti.nead.unesp.br (Postfix) with ESMTP id 81204EE16D for <adriano@ibilce.unesp.br>; Fri, 14 Nov 2014 16:30:01 -0200 (BRST) Date: Fri, 14 Nov 2014 16:30:01 -0200 To: adriano@ibilce.unesp.br From: Root User <root@localhost.acmesecurity.org> Reply-To: no_reply@nead.unesp.br Subject: Informe: Ambientes Virtuais de Aprendizagem Message-ID: e261931cbe32f90066829a84298ba3a8@edutec.unesp.br
 . . .

slide-5
SLIDE 5

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

5

Conceitos ¡e ¡fundamentos ¡

E-­‑mail ¡e ¡SMTP ¡

Componentes ¡do ¡Correio ¡eletrônico ¡

MUA: Mail User Agent MTA: Mail Transfer Agent MDA: Mail Delivery Agent MAA: Mail Access Agent

10

(C) 2014 Adriano Mauro Cansian

slide-6
SLIDE 6

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

6

Componentes ¡

  • Veremos ¡inicialmente ¡o ¡dois ¡principais ¡

componentes ¡à ¡MUA ¡e ¡o ¡MTA. ¡

  • Depois ¡entenderemos ¡o ¡protocolo ¡SMTP. ¡
  • Em ¡seguida ¡veremos ¡os ¡outros ¡dois ¡

componentes ¡à ¡MDA ¡e ¡MAA. ¡

11

(C) 2014 Adriano Mauro Cansian

Componentes ¡do ¡Correio ¡eletrônico ¡

12

(C) 2014 Adriano Mauro Cansian

slide-7
SLIDE 7

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

7

Definições ¡dos ¡componentes ¡

  • O sistema de e-mail é formado duas entidades principais à MUA e MTA

MUA - Mail User Agent

MUAs são quaisquer dos programas utilizados para ler, compor, responder e dispor de mensagens eletrônicas.

Exemplos: pine, mail, Mail, elm, Pegasus Mail, Eudora, etc...

MTA - Mail Transport Agent (em alguns textos Mail Transfer Agent)

MTAs são programas que se encarregam de entregar mensagens a vários usuários e redirecionar mensagens entre computadores.

Os programas MTAs mais conhecidos são o sendmail e o postfix.

Exemplo: Postfix (http://www.postfix.org) e Sendmail (http://www.sendmail.org)

13

(C) 2014 Adriano Mauro Cansian

MUA ¡e ¡MTA ¡

14

(C) 2014 Adriano Mauro Cansian

slide-8
SLIDE 8

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

8

MUA ¡(1) ¡

  • MUA que normalmente existe em todos os ambientes unix chama-se

mail. – Geralmente o mail é apenas para os iniciados devido à sua complexidade.

  • Existem outros programas tais como mutt, pine e elm que tornam o

trabalho com o correio eletrônico extremamente simples para usuários comuns.

  • Opções, tanto de domínio público como comerciais, são numerosas.
  • Interfaces gráficas com suporte a MIME (Multipurpose Internet Mail

Extensions) também são populares. à veremos mais adiante

15

(C) 2014 Adriano Mauro Cansian

MUA ¡(2) ¡

16

(C) 2014 Adriano Mauro Cansian

Exemplo de um MUA com interface gráfica no sistema Mac OS X

slide-9
SLIDE 9

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

9

MTA ¡(1) ¡

  • O programa MTA é necessário à a entrega de correio

eletrônico em redes raramente é uma tarefa simples.

  • Como a tarefa de transportar mensagens frequentemente se

estende além dos domínios da máquina local à aumenta a necessidade de um MTA separado de um MUA. – MTAs mais usados:

  • No Unix: Postfix e Sendmail.
  • No Windows: Windows SMTP server(*) e hMailServer(**)

(*) não instalado por Default no Windows 7 e Windows 8 (**) https://www.hmailserver.com/ 17

(C) 2014 Adriano Mauro Cansian

MTA ¡(2) ¡

  • O MTA implementa o protocolo de transporte de mensagens (SMTP).

– Pode enviar mensagens de uma máquina para outra na mesma rede. – Pode também redirecionar mensagens da rede em que se encontra para outras redes. – Eventualmente redes de arquitetura radicalmente diferentes.

– Lembrar que não existem somente conexões de e-mail através da Internet! – O MTA também RECEBE as mensagens vindas do protocolo SMTP e eventualmente

  • utros.

– O MTA não é apenas o SMTP.

  • Existem muitas outras redes, com arquiteturas diferentes, além de

diferentes camadas de aplicação, que necessitam se comunicar adequadamente.

18

(C) 2014 Adriano Mauro Cansian

slide-10
SLIDE 10

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

10

MTA ¡(3) ¡

  • O MTA roteia a mensagem recebida do programa do usuário, com

base no endereço eletrônico do destino.

– Toma decisão do que fazer.

Para as mensagens em SAÍDA:

  • O MTA recebe a mensagem vinda do programa do usuário (MUA);
  • Interpreta o endereço eletrônico;
  • Re-escreve o endereço das maneira apropriada para a entrega; e
  • Roteia a mensagem através do método correto.

Para as mensagens em ENTRADA:

  • O MTA interpreta o endereço;
  • Envia para o módulo de entrega ao usuário

– (MDA à visto mais adiante);

  • Ou redireciona para outro endereço.

19

(C) 2014 Adriano Mauro Cansian

MTA ¡(4) ¡

  • Além do roteamento entre programas de

usuário e programas de entrega à à o MTA realiza mais duas funções:

– Implementa o protocolo SMTP

  • Simple Mail Transfer Protocol
  • Padrão para mensagens na Internet à RFC-821.

– Permite criação de “aliases”.

  • Sinônimos de endereços.

20

(C) 2014 Adriano Mauro Cansian

slide-11
SLIDE 11

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

11

MTA ¡(5) ¡

21

(C) 2014 Adriano Mauro Cansian

SMTP ¡[RFC ¡821] ¡

  • Usa TCP para a transferência confiável de mensagens de

correio do cliente ao servidor (porta 25/TCP).

  • Transferência direta

– servidor remetente envia direto ao servidor receptor.

  • Três fases da transferência (do SMTP / Não confunda com TCP!):

– Handshaking (cumprimento). – Transferência das mensagens. – Encerramento.

  • Interação comando/resposta

– Comandos: texto ASCII – Resposta: código e frase de status.

  • Mensagens precisam ser em ASCII de 7-bits.

22

(C) 2014 Adriano Mauro Cansian

slide-12
SLIDE 12

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

12

SMTP ¡na ¡Internet ¡(1) ¡

  • Na Internet à a recepção de e-mail ocorre

na porta 25/TCP da máquina destino.

  • Ou na 465/TCP ou 587/TCP se for ssl/autenticado.

– (exercício: administração best practice SMTP)

– O processo daemon nesta porta deve implementar o protocolo SMTP.

  • Processo (daemon) aceita as mensagens

que chegam e tenta encaminhá-las à caixa postal destino, reportando eventuais erros à máquina origem.

23

(C) 2014 Adriano Mauro Cansian

SMTP ¡na ¡Internet ¡(2) ¡

transmissão ¡direta ¡pelo ¡servidor ¡

24

(C) 2014 Adriano Mauro Cansian

slide-13
SLIDE 13

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

13

SMTP ¡na ¡Internet ¡(3) ¡

transmissão ¡via ¡SMTP ¡server ¡intermediário ¡ISP ¡

25

(C) 2014 Adriano Mauro Cansian

Operação ¡do ¡SMTP ¡(1) ¡

  • SMTP à todo baseado em texto.

– Tendo estabelecido uma conexão à porta 25 do servidor, a máquina cliente aguarda uma resposta do servidor. – O servidor envia uma linha texto indicando se está ou não preparado para receber email. – Se o servidor aceita receber email, significa que o cliente SMTP aceita a recepção. – Ocorre o “delivery”.

26

(C) 2014 Adriano Mauro Cansian

slide-14
SLIDE 14

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

14

Operação ¡do ¡SMTP ¡(2) ¡

(diálogo ¡SMTP) ¡

27

(C) 2014 Adriano Mauro Cansian

Operação ¡do ¡SMTP ¡(3) ¡

28

(C) 2014 Adriano Mauro Cansian

slide-15
SLIDE 15

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

15

Exemplo ¡de ¡diálogo ¡e ¡interação ¡SMTP ¡

S: 220 doces.br C: HELO consumidor.br S: 250 Hello consumidor.br, pleased to meet you C: MAIL FROM: <ana@consumidor.br> S: 250 ana@consumidor.br... Sender ok C: RCPT TO: <bernardo@doces.br> S: 250 bernardo@doces.br ... Recipient ok C: DATA S: 354 Enter mail, end with "." on a line by itself C: Voce gosta de chocolate? C: Que tal sorvete? C: . S: 250 Message accepted for delivery C: QUIT S: 221 doces.br closing connection

29

(C) 2014 Adriano Mauro Cansian

Observe a linha em branco terminando com um “ . ”

(C) 2014 Adriano Mauro Cansian

30 Fonte: ¡hfp://computernetworkingsimplified.com/applicaQon-­‑layer/overview-­‑email-­‑works/ ¡ ¡ ¡(17.11.2014) ¡

slide-16
SLIDE 16

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

16

SMTP ¡Reply ¡codes ¡

31

(C) 2014 Adriano Mauro Cansian

Alguns ¡códigos ¡SMTP ¡agrupados ¡por ¡comando ¡

32

(C) 2014 Adriano Mauro Cansian

slide-17
SLIDE 17

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

17

SMTP ¡

  • SMTP usa conexões persistentes.
  • SMTP requer que a mensagem (cabeçalho e corpo)

sejam em ASCII de 7-bits à já mencionado.

  • Portanto, algumas cadeias de caracteres não

são permitidas numa mensagem.

– Por exemplo: <CR/LF>.<CR/LF>

  • Uma vez que é usado pelo servidor SMTP para reconhecer
  • final da mensagem.
  • Assim, em alguns casos, a mensagem

necessita ser codificada.

– Geralmente em base-64 ou “quoted printable”.

33

(C) 2014 Adriano Mauro Cansian

Exemplos ¡de ¡interação ¡

slide-18
SLIDE 18

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

18

Computador “B” em destino.dom Computador “A” em origem.dom

Entre ¡computadores ¡ sempre ¡on-­‑line ¡

Remetente Editor de Mensagem Agente de Transporte Agente de Distribuição Local Caixa Postal Destinatário Notificador Visualizador de Mensagem SMTP Agente de Transporte

De: A@origem.dom Para: B@destino.dom

35

(C) 2014 Adriano Mauro Cansian

Computador “B” ISP ISP Computador “A”

Dois ¡computadores ¡via ¡ISP ¡(1) ¡

Remetente Editor de Mensagem Agente de Transporte Agente de Distribuição Local Caixa Postal Destinatário Visualizador de Mensagem SMTP Agente de Transporte

De: A@origem.dom Para: B@destino.dom

Agente de Transporte SMTP Caixa Postal

. . . . .

POP ou IMAP Agente de Transporte Agente de Transporte

envio recepção

36

(C) 2014 Adriano Mauro Cansian

slide-19
SLIDE 19

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

19

Dois ¡computadores ¡via ¡ISP ¡(2) ¡

(C) 2014 Adriano Mauro Cansian

37

Processo ¡completo ¡via ¡ISP ¡com ¡POP3 ¡

(C) 2014 Adriano Mauro Cansian

38

slide-20
SLIDE 20

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

20

Email ¡Gateway ¡/ ¡relay ¡

39

(C) 2014 Adriano Mauro Cansian

empresa.dom dep1.empresa.dom dep2.empresa.dom

Mail ¡Relay ¡ou ¡“bounce” ¡

Remetente “A” Editor de Mensagem SMTP Agente de Transporte Agente de Distribuição Local Remetente “B” Editor de Mensagem Agente Transporte RELAY Agente de Distribuição Local Caixa Postal Caixa Postal

. . . . . . . .

Caixa Postal Caixa Postal

. . . .

De: A@dep1.empresa.dom Para: xxxxxxxxxxxxx De: B@dep2.empresa.dom Para: xxxxxxxxxxxxx

SMTP 40

(C) 2014 Adriano Mauro Cansian

slide-21
SLIDE 21

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

21

SPAM ¡e ¡relays ¡abertos ¡

Spammer Editor de Mensagem Agente de Transporte Agente de Transporte

De: spammer@relay1.dom Para: xxxxxxxxxxxxxx

Agente de Transporte

De: spammer@relay9.dom Para: xxxxxxxxxxxxxx

. . . . . . . . . . . . . . .

relay1.dom relay9.dom

De: spammer@ilegal.dom Para: xxxxxxxxxxxxxx

41

(C) 2014 Adriano Mauro Cansian

Entrega ¡final: ¡MDA ¡e ¡MUA ¡

MAA: Mail Access Agent MDA: Mail Delivery Agent

42

(C) 2014 Adriano Mauro Cansian

slide-22
SLIDE 22

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

22

MDA ¡e ¡MAA ¡(1) ¡

  • Já mencionado: MTA e MUA:
  • Agora veremos os outros dois componentes do

sistema de correio eletrônico:

  • MDA: Mail Delivery Agent
  • MAA - Mail Access Agent:

43

(C) 2014 Adriano Mauro Cansian

MDA ¡e ¡MAA ¡(2) ¡

  • Agora veremos os outros dois componentes do sistema de correio

eletrônico:

  • MDA: Mail Delivery Agent
  • Entrega no mailbox
  • Processamento de filtragem
  • Mais usado: Procmail
  • MAA - Mail Access Agent:
  • Acesso a servidores remotos para recuperação de mensagens (“recebimento”).

– POP (Post Office Protocol) – porta 110

  • Transmite mensagens apenas da caixa postal do servidor para a do

cliente.

– IMAP (Internet Message Access Protocol) – porta 143

  • Sincroniza as caixas postais do servidor e do cliente.

44

(C) 2014 Adriano Mauro Cansian

slide-23
SLIDE 23

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

23

MDA: ¡Mail ¡Delivery ¡Agent ¡

  • Agente de Distribuição Local.

– Responsável por entregar e arquivar a mensagem na caixa postal correta.

  • Tem capacidade de filtrar mensagens.

– Alguns tem capacidade de processamento de retorno (auto-responders).

  • Agentes mais conhecidos:

– Maildrop (default). – Procmail. – Binmail. – Safecat.

45

(C) 2014 Adriano Mauro Cansian

MAA ¡-­‑ ¡a ¡“entrega ¡final” ¡

  • Os mecanismos apresentados até aqui

funcionam em máquinas capazes de enviar

  • u receber e-mail.

– Na maior parte dos casos, essa premissa é falsa.

  • Usuário tem o seu PC conectado a uma LAN.
  • A LAN é que tem os servidores de email.
  • A transferência do email numa caixa postal

para o PC do usuário é feita através dos protocolos

– POP3 (Post Office Protocol) ou – IMAP (Internet Message Access Protocol).

46

(C) 2014 Adriano Mauro Cansian

slide-24
SLIDE 24

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

24

Entrega ¡final: ¡MDA ¡e ¡MUA ¡

47

(C) 2014 Adriano Mauro Cansian

Procmail ou outros

MAA: ¡Mail ¡Access ¡Agent ¡

  • SMTP ¡à ¡entrega ¡(armazena?) ¡no ¡servidor ¡do ¡receptor. ¡
  • MAA: ¡Mail ¡Access ¡Agent ¡: ¡recupera ¡do ¡servidor. ¡

– POP3: ¡Post ¡Office ¡Protocol ¡[RFC ¡1939] ¡

  • Mecanismo ¡simples ¡cliente–servidor ¡de ¡transferência. ¡

– IMAP: ¡Internet ¡Message ¡Access ¡Protocol ¡[RFC ¡1730] ¡

  • Mais ¡comandos ¡e ¡mais ¡opções ¡(mais ¡complexo). ¡
  • Acesso ¡a ¡mensagens ¡armazenadas ¡no ¡servidor. ¡

servidor de correio do remetente

SMTP SMTP POP3 ou IMAP

servidor de correio do receptor

agente de usuário agente de usuário

48

(C) 2014 Adriano Mauro Cansian

slide-25
SLIDE 25

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

25

POP3 ¡

49

(C) 2014 Adriano Mauro Cansian

Até ¡aqui ¡vimos ¡todos ¡ ¡

  • s ¡componentes ¡do ¡Correio ¡eletrônico ¡

50

(C) 2014 Adriano Mauro Cansian

Procmail ou outros

slide-26
SLIDE 26

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

26

Anatomia ¡de ¡um ¡E-­‑mail ¡

Cabeçalho, ¡envelope, ¡body ¡ MIME ¡ Formato ¡de ¡uma ¡mensagem ¡de ¡e-­‑mail ¡

RFC ¡822: ¡padrão ¡para ¡formato ¡ de ¡mensagem ¡de ¡texto: ¡

  • Linhas ¡de ¡cabeçalho, ¡p.ex., ¡

– To: ¡(obQdo ¡do ¡ENVELOPE) ¡ – From: ¡ – Subject: ¡

  • São ¡diferentes ¡dos ¡

comandos ¡de ¡smtp! ¡

  • Corpo ¡

– a ¡“mensagem”, ¡somente ¡de ¡ caracteres ¡ASCII ¡. ¡ – Termina ¡com ¡um ¡“.” ¡ponto ¡

cabeçalho corpo

linha em branco

52

(C) 2014 Adriano Mauro Cansian

slide-27
SLIDE 27

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

27

Envelope ¡e ¡header ¡(2) ¡

(C) 2014 Adriano Mauro Cansian

53

Envelope ¡e ¡header ¡(1) ¡

54

(C) 2014 Adriano Mauro Cansian

slide-28
SLIDE 28

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

28

Campos ¡de ¡header ¡(1) ¡

55

(C) 2014 Adriano Mauro Cansian

Campos ¡de ¡header ¡(2) ¡

56

(C) 2014 Adriano Mauro Cansian

slide-29
SLIDE 29

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

29

Exemplo ¡de ¡header ¡E-­‑mail ¡

57 Delivered-To: adriano.cansian@sjrp.unesp.br Received: by 10.70.38.201 with SMTP id i9csp238353pdk; Mon, 14 Oct 2014 14:46:10 -0700 (PDT) X-Received: by 10.58.207.15 with SMTP id ls15mr3600453vec.17.1381787170131; Mon, 14 Oct 2014 14:46:10 -0700 (PDT) Return-Path: xxxa@gmail.com Received: by angel.acmesecurity.org (Postfix) id 217BCDEBAC; Mon, 14 Oct 2014 18:46:07 -0300 (BRT) Delivered-To: adriano@acmesecurity.org Received: by angel.acmesecurity.org (Postfix, from userid 65534) id 1FC24DEBAF; Mon, 14 Oct 2014 18:46:07 -0300 (BRT) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on angel.acmesecurity.org X-Spam-Level: X-Spam-Status: No, score=0.9 required=4.0 tests=FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_LOW,SUBJ_ALL_CAPS,T_FREEMAIL_DOC_PDF autolearn=no version=3.3.2 Received: from mail-qe0-f49.google.com (mail-qe0-f49.google.com [209.85.128.49]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by angel.acmesecurity.org (Postfix) with ESMTPS id CD606DEBAC for <adriano@acmesecurity.org>; Mon, 14 Oct 2014 18:46:00 -0300 (BRT) Received: by mail-qe0-f49.google.com with SMTP id a11so639104qen.8 for <adriano@acmesecurity.org>; Mon, 14 Oct 2014 14:45:58 -0700 (PDT) Mon, 14 Oct 2014 14:45:58 -0700 (PDT) Received: by 10.49.35.137 with HTTP; Mon, 14 Oct 2014 14:45:57 -0700 (PDT) Date: Mon, 14 Oct 2014 18:45:57 -0300 Message-ID: <CAEEv5YB=fTMxeUaj=Ht4PrfEFvfT5hVotipuWF0qXJdRWjsr5g@mail.gmail.com> Subject: NADA COMO SER FAMOSO ;-) From: Otavio Cunha <xxxa@gmail.com> To: Adriano Cansian <adriano@acmesecurity.org> Content-Type: multipart/mixed; boundary=001a11c2c0d4b6de6504e8ba64b6

  • (C) 2014 Adriano Mauro Cansian

Formato ¡MIME ¡

Ou: ¡ enviando ¡mensagens ¡mulQmídia ¡em ¡algo ¡ que ¡foi ¡feito ¡pra ¡enviar ¡texto ¡puro. ¡ ¡

slide-30
SLIDE 30

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

30

MIME ¡ ¡(MulApurpose ¡Internet ¡Mail ¡Extension) ¡ ¡

Além de texto, pode ser necessário enviar e receber outros tipos de informação, tais como:

– Mensagens em linguagens com caracteres especiais. – Mensagens em outros alfabetos. – Mensagens em linguagens pictográficas (ex. chinês).

– Mensagens com outras mídias.

  • Propósito do MIME é acrescentar

regras de codificação para outros tipos de informação que não sejam texto puro.

59

(C) 2014 Adriano Mauro Cansian

Evolução ¡

  • RFC-821: Protocolo SMTP (1982)
  • RFC-822: Standard for the Format
  • fARPA Internet Text Messages (1982)
  • RFC-2045 e RFC-2046- Multipurpose Internet

Mail Extensions (MIME) Part-I e Part-II (1996)

  • RFC-2822: Internet Message Format (2001)

– Revisa e atualiza o RFC-822

  • (torna este obsoleto).

(C) 2014 Adriano Mauro Cansian

60

slide-31
SLIDE 31

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

31 Formato ¡de ¡uma ¡mensagem ¡MIME ¡

  • MIME: multimedia mail extension: RFC 2045 e 2046
  • Linhas adicionais no cabeçalho da mensagem. declaram tipo

do conteúdo MIME.

From: ana@consumidor.br To: bernardo@doces.br Subject: Imagem de uma bela torta MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data

tipo, subtipo de dados multimídia, declaração parâmetros método usado para codificar dados versão MIME Dados codificados

61

(C) 2014 Adriano Mauro Cansian

Tipos ¡MIME ¡ ¡

Fomato: ¡Content-Type: tipo/subtipo; parâmetros ¡

Text ¡

  • sub-­‑Qpos: ¡ ¡plain, html,

charset=“iso-8859-1”, ascii

Image ¡

  • sub-­‑Qpos ¡exemplos ¡: ¡jpeg,

gif, tiff.

Video ¡

  • sub-­‑Qpos ¡exemplos ¡: ¡mpeg,

quicktime, MP4 ¡

Audio ¡

  • Sub-­‑Qpos ¡exemplos ¡: ¡basic ¡

(8-­‑bit ¡codificado ¡mu-­‑law), ¡ 32kadpcm (codificação ¡32 ¡ kbps), ¡MP3 ¡ ¡

ApplicaQon ¡

  • Outros ¡dados ¡que ¡precisam ¡

ser ¡processados ¡por ¡um ¡leitor ¡ para ¡serem ¡“visualizados”. ¡

  • subQpos ¡exemplos ¡: ¡

msword, octet-stream

62

(C) 2014 Adriano Mauro Cansian

slide-32
SLIDE 32

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

32

Delimitador ¡MIME ¡

From: ana@consumidor.br To: bernardo@doces.br Subject: Imagem de uma bela torta MIME-Version: 1.0 Content-Type: multipart/mixed; boundary=98766789

  • -98766789

Content-Transfer-Encoding: quoted-printable Content-Type: text/plain caro Bernardo, Anexa a imagem de uma torta deliciosa.

  • -98766789

Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data ..... ......................... ......base64 encoded data

  • -98766789--

delimitador

63

(C) 2014 Adriano Mauro Cansian

MIME ¡

64

(C) 2014 Adriano Mauro Cansian

slide-33
SLIDE 33

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

33

Tipos ¡e ¡subQpos ¡

65

(C) 2014 Adriano Mauro Cansian

Aliases ¡

slide-34
SLIDE 34

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

34

Aliases ¡(1) ¡

  • “Aliases” são sinônimos de endereços de e-mail

– à muito importantes para o servidor MX.

  • São usados para:

– Criar nomes “falsos” ou apelidos para contas de usuários verdadeiros. – Redirecionar (forward) e-mail para outros hosts ou endereços. – Criar listas de distribuição de mensagens.

  • Os aliases são definidos no arquivo

– /etc/aliases (ou equivalente no seu sistema).

  • Em alguns sistemas este arquivo de aliases pode ser

– /usr/lib/aliases

67

(C) 2014 Adriano Mauro Cansian

Aliases ¡(2) ¡

  • Sintaxe de configuração /etc/aliases

nome_do_alias: destinatario [, destinatario, ...]

  • Nome_do_alias à é o nome para onde o e-mail é endereçado (o

endereço para o qual ele chega).

  • recipient à é o nome verdadeiro para onde o e-mail deve ser

entregue.

  • O recipient pode ser à um username válido, o nome de outro alias,
  • u um endereço de e-mail completo, contendo username e

hostname.

– Vários recipients podem ser associados a um único alias à forma-se uma lista de distribuição.

68

(C) 2014 Adriano Mauro Cansian

slide-35
SLIDE 35

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

35

Exemplo ¡/etc/aliases ¡

69

(C) 2014 Adriano Mauro Cansian

.forward ¡

  • Em adição ao redirecionamento fornecido pelo /etc/

aliases o sistema de e-mail permite definir endereços de redirecionamento pessoal (forward).

  • Usuário à pode definir o redirecionamento desejado

em seu arquivo ~/.forward (no seu home-dir pessoal).

– O MDA verifica este arquivo após verificar os aliases do sistema, e antes de realizar a entrega final para o usuário.

  • Se o .forward existe para o usuário, ele realiza a

entrega conforme a configuração deste arquivo.

  • A sintaxe é a mesma usada no /etc/aliases.

(C) 2014 Adriano Mauro Cansian

70

slide-36
SLIDE 36

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

36

Esquema ¡geral ¡do ¡e-­‑mail ¡

(C) 2014 Adriano Mauro Cansian

71

Resumo ¡

Neste tópico vimos:

  • 1. Todos os fundamentos importantes sobre e-mail.

– Todos os componentes: MUA, MTA, SMTP, MDA, MAA, …

  • 2. Funcionamento detalhado do e-mail e do SMTP.

– Interações para envio de uma mensagem, headers e envelope.

  • 3. Anatomia de um email.
  • 4. Formato MIME.
  • 5. Aliases e forward.

(C) 2014 Adriano Mauro Cansian

72

slide-37
SLIDE 37

UNESP - São José do Rio Preto Tópicos em Sistemas de Computação

  • Prof. Dr. Adriano Mauro Cansian

37

Orientações ¡para ¡estudo ¡

Créditos - este material foi produzido a partir do livro: Hunt, Craig – “TCP/IP Network Administration” – Edit. O’Reilly & Associates, Inc. - 1.a Edição - Capítulo 10,

  • pag. 213.

Figuras e textos de outros autores utilizados com finalidade didática.

(C) 2014 Adriano Mauro Cansian

73