Correio Electrónico
Transcrição
Correio Electrónico
E-mail Correio Electrónico (E-mail) [email protected] Joao Neves Digitally signed by Joao Neves DN: cn=Joao Neves, o=FEUP, ou=DEEC, [email protected] t, c=PT Date: 2013.01.11 17:10:20 Z Assunto • Protocolo para troca de mensagens entre caixas do correio – Simple Mail Transfer Protocol (SMTP) – Recomendação ITU-T X.400 • Protocolo para o acesso remoto a uma caixa do correio – Post Office Protocol (POP3) – Internet Message Access Protocol (IMAP4) • Mensagens com conteúdos multimédia – Multipurpose Internet Mail Extensions (MIME) 1 E-mail Origens • Computadores Interligados – Ligações Ponto-a-Ponto » Linha telefónica comutada » Linha dedicada – Redes Locais » Ethernet » Token-ring – Redes de grande área » X.25 Origem Implementações Proprietárias • VAX MAIL 11 • Packetnet Switched Interface Mail (PSI MAIL) • BITNET IBM • Unix-to-Unix Copy Program (UUCP) • Sendmail DEC Unix 2 E-mail Evolução • O sistema de e-mail depende de: •Fabricante •Solução de interligação dos sistemas INCOMPATIBILIDADE João Neves, 2013 5 Evolução • O sistema de e-mail depende de: •Fabricante •Solução de interligação dos sistemas INCOMPATIBILIDADE • Endereçamento • Bang!, RFC822, X400 • Troca de Mensagens • Síncrona (PSI MAIL) • Assíncrona (Store and Forward) • Gateways João Neves, 2013 6 3 E-mail Evolução • O sistema de e-mail depende de: •Fabricante •Solução de interligação dos sistemas INCOMPATIBILIDADE NECESSIDADE NORMALIZAÇÃO João Neves, 2013 7 Evolução • O sistema de e-mail depende de: •Fabricante •Solução de interligação dos sistemas INCOMPATIBILIDADE NECESSIDADE NORMALIZAÇÃO João Neves, 2013 • De facto, SMTP • ITU-T X.400 8 4 E-mail O Modelo do e-mail • O correio electrónico é caracterizado por: – O utilizador que lê, escreve, envia, organiza mensagens – O interface do utilizador é fornecido pelo Agente do Utilizador (UA) – A comunicação entre interlocutores é assíncrona – A transferência das mensagens é feita pelo Agente de Transferência de Mensagens (MTA) – A troca de mensagens entre ambientes de protocolos diferentes é feita por gateways (MTAs que entendem ambos os protocolos) Interface do Utilizador (UA) 5 E-mail Comunicação assíncrona Gateway de e-mail Gateway de e-mail Internet O Transporte... • Modelo UUCP • Modelo X.400 • Modelo Internet 6 E-mail Modelo UUCP hosta hostb hostd user1 hostc user2 From: hosta!user1 To: hostb!hostd!user2 Subject: .... POP/IMAP Verifica Mail Servidor POP/SMTP Cliente SMTP Envia Mensagens Modelo Internet Resto do Mundo João Neves, 2013 14 7 E-mail O Modelo O Modelo 8 E-mail Localização no modelo de camadas SNMP FTP SMTP TCP POP3 DNS ASN.1 TFTP NFS BootP UDP Internetwork Protocol (IP) Nível do Interface da rede e protocolos de acesso Modelo X.400 João Neves, 2013 18 9 E-mail Recomendação X.400 • O Modelo MHS e serviços Message Handling System • Está conforme o modelo OSI • Utiliza os serviços do nível de apresentação e do nível de aplicação Modelo MHS MS = Arquivo de Mensagens (Message Store) UA UA MTA = Agente de Transferência de Mensagens (Message Transfer Agent) Terminal E/S Terminal E/S MTA UA = Agente do Utilizador (User Agent) Sistema de processamento UA Terminal E/S UA Terminal Inteligente MS MTA Sistema de processamento MTA Sistema de processamento 10 E-mail Modelo MHS Sistema de Processamento (DSA "stand-alone") DUA UA Terminal Inteligente (coexistem o DUA e o UA) DSA DSA DUA DUA MTA MTA Sistema de Processamento (DUA e MTA "stand-alone") DUA I/O device UA Sistema de Processamento (coexistem UA, DUA, MTA e DSA) DSA = Agente do Sistema de Directório DUA = Agente do Utilizador do Directório MTA = Agente de transferência de Mensagens UA = Agente do Utilizador Well-known Entry Point João Neves, 2013 22 11 E-mail Mensagens idênticas... Sistema A Sistema B Aplicação Aplicação • Trajecto de uma mensagem quando é enviada de uma aplicação de um sistema para outra aplicação remota na rede local. • A camada n no sistema B recebe o mesmo objecto que foi enviado pela camada n do sistema A. • Os protocolos estruturados em camadas permitem que a camada n no destino receba exactamente o mesmo objecto enviado pela camada n na origem. mensagem idêntica Transporte Transporte pacote idêntico Internet Internet datagrama idêntico Interface da rede trama idêntica Interface da rede Rede física 1 O e-mail é como o correio postal... Envia corpo P2 e endereço Recebe corpo P2 AGENTE DO UTILIZADOR (UA) AGENTE DO UTILIZADOR (UA) Adiciona cabeçalho P2 ao corpo P2 Recebe cabeçalho e corpo P 2 no envelope P3 Coloca no envelope P3 AGENTE DE TRANSFERÊNCIA DA MENSAGEM (MTA) AGENTE DE TRANSFERÊNCIA DA MENSAGEM (MTA) Aceita envelope P3 Aceita envelope P 1 Coloca cabeçalho e corpo P2 no envelope P1 Transfere cabeçalho e corpo P2 do envelope P 1 para a envelope P 3 Envia envelope P3 João Neves, 2013 24 12 E-mail Formato das Mensagens Estrutura da Mensagem Interpessoal (IP) Estructura básica da mensagem Envelope Envelope + Cabeçalho Corpo Mensagem IP parte do corpo • • • • • Conteúdo parte do corpo Formato e Conteúdo TO: FROM: MESSAGE IDENTIFIER: CONTENT TYPE: TO: FROM: SUBJECT: ENVELOPE Cabeçalho Exmo Sr, ...... CORPO CONTEÚDO MENSAGEM João Neves, 2013 26 13 E-mail O Cabeçalho To: <endereço> Lista de um ou mais destinatários Cc: <endereço> Lista de um ou mais destinatários (Carbon Copy) Bcc: <endereço> Lista de um ou mais destinatários (Blind Carbon Copy) From: <endereço> Remetente Subject: Reply-To: <endereço> Substitui o endereço do campo From: na resposta In-Reply-To: Reply-By: data Message-Id: Return-Receipt-To: <endereço> Importance: Expiry-Date: data • Cada linha do cabeçalho é terminada pelos caracteres <CR><LF>. • Uma linha de um campo do cabeçalho pode ser continuada na linha seguinte, tendo esta no início o caracter <espaço> ou <TAB> • Todas as linhas da mensagem devem obedecer à regra 998/78 Endereçamento Mailbox Host/Domain Separador • UUCP (bang notation !) • DECnet (::) • BITNET (@ ou “at”) • RFC822 • X.400 João Neves, 2013 Domain Separador host1 ! host2 ! usera VAXOB::VAXMT::SYSTEM usera at PTEARN [email protected] S=mail-user;OU=gonzo;PRMD=inescn;A= ;C=pt 28 14 E-mail Endereços UUCP hosta hostb hostd user1 hostc user2 From: hosta!user1 To: hostb!hostd!user2 Subject: .... Endereços UUCP hosta hostb hostd user1 hostc user2 From: hosta!user1 To: hostb!hostd!user2 Subject: .... 15 E-mail Endereços UUCP hosta hostb hostd user1 hostc From: hosta!user1 To: hostb!hostd!user2 Subject: .... user2 ??? Endereços UUCP hosta hostb hostd user1 hostc From: hosta!user1 To: hostb!hostd!user2 Subject: .... ??? user2 hostb!hostc!hostd!user2 16 E-mail Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA 17 E-mail Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA • Dinâmica – decisões de encaminhamento • Estática – política de gestão da rede • Adição de novos caminhos devido a custos ou falhas 18 E-mail Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA host1 ! host2 ! host30 ! hosta ! hostb ! user Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA host1 ! host2 ! host30 ! hosta ! hostb ! user Nomes compridos • Erros de escrita • Dificuldade de memorizar 19 E-mail Notação “Bang!” • O Utilizador tinha necessidade de conhecer os nós intervenientes para a mensagem chegar ao destino PROBLEMAS! 1. A topologia altera-se frequentemente A solução é usar gateways bem conhecidas 2. Quando o destinatário existe num sistema cujo acesso implica atravessar vários MTA mcsun ! dec4pt ! user MHS O/R-addresses Originator/Recipient Addresses Country (C) Administrative Management Domain (ADMD ou A) Private Management Doman (PRMD) X.121 Address Terminal Identifier (t.id) Organization (O) Organization Unit(OU) Surname (S) Given Name (G) Initials (I) Caracteres inválidos = %, “_”, # João Neves, 2013 40 20 E-mail Os Caracteres Inválidos... • Problema nas gateways Recusa de mensagens tradução e retroversão de endereços com caracteres válidos num ambiente e inválidos noutros (o exemplo do “_”) • Relaying implícito no endereço user%[email protected] Os Caracteres Inválidos... Isto do relaying implícito pode ser um problema!... • Problema nas gateways Será que não se pode Recusa de mensagens resolver de outra maneira? tradução e retroversão de endereços com caracteres válidos num ambiente e inválidos noutros (o exemplo do “_”) • Relaying implícito no endereço user%[email protected] 21 E-mail Tamanho dos Endereços ENDEREÇOS LONGOS LEGÍVEIS vs ENDEREÇOS CURTOS CRIPTICOS ERROS DE DACTILOGRAFIA MENOR NUMERO DE COMBINAÇÕES DIFICEIS DE MEMORIZAR João Neves, 2013 43 RFC 987 “Mapping between X.400 and RFC 822” RFC2156 - MIXER (Mime Internet X.400 Enhanced Relay): Mapping between X.400 and RFC 822/MIME [email protected] S=jneves;OU=gonzo;PRMD=inescn;ADMD= ;C=pt G=Joao;S=Neves;OU=bart;PRMD=inescn;ADMD= ;C=pt [email protected] João Neves, 2013 44 22 E-mail "plussed' addresses... • Todos os caracteres que sejam colocados a seguir ao “+”, inclusive e à esquerda do “@” não são interpretados • Ambos os endereços identificam a mesma mailbox user+lixo+tipo+SPAM @ mail.dominio.pt user @ mail.dominio.pt • Funcionalidade disponível em servidores Unix Domínios de Topo top-level domains (TLDs) Código ISO dos Países (ISO 3166) • • • • • • • • • • Portugal Alemanha Dinamarca Espanha EUA França Hungria Itália Japão Reino Unido PT DE DK ES US FR HU IT JP UK ARPAnet, .ARPA deu origem a: • • • • • • COM EDU GOV MIL NET ORG Novos TLDs: • • • • • • • aero biz coop info name museum pro Fonte: ftp://ftp.ripe.net/iso3166-countrycodes http://www.icann.org/tlds/ João Neves, 2013 46 23 E-mail Listas e Alias • Alias • Lista de Distribuição (DL) todos - user1 - user2 - [email protected] - [email protected] [email protected] - user1 - user2 - [email protected] - [email protected] UA Alias MTA UA MTA MTA UA UA UA UA João Neves, 2013 UA UA 48 24 E-mail Listas de Distribuição (DL) João Neves, 2013 49 Gestão das DLs • A gestão das DLs é feita no MTA, enquanto os Alias são geridos no UA • Para facilitar a gestão das DLs existem programas que fazem a gestão automática de DLs moderadas ou não-moderadas: – – – – LISTSERV Majordomo Mailman ... 25 E-mail Acesso Remoto à Mailbox • Paradigma Offline – São processados os pedidos (on-demand) de um cliente – Minimizado o tempo da ligação cliente-servidor – São necessários recursos reduzidos do servidor • Paradigma Online – O acesso pode ser feito por diferentes computadores em qualquer altura – O acesso é independente a plataforma utilizada – Os clientes poderão ser “diskless” – Possibilidade de acessos simultâneos a mailboxes partilhadas – São solicitados recursos significativos do servidor – É necessária manter activa a ligação cliente-servidor POP3 vs IMAP João Neves, 2013 POP3 IMAP RFC que o descreve 1939 3501 Port TCP usado Port TCP para SSL Arquivo do e-mail Leitura Tempo de ligação Utilização dos recursos do servidor Mailboxes multiplas Recomendado para utilizadores móveis Controlo do download pelo utilizador Download parcial das mensagens Complexidade da implementação 110 995 Sistema do cliente Offline Reduzido 143 993 Servidor Online Muito Mínima Intensa Não Sim Não Sim Reduzido Muito Não Sim Não Sim 52 26 E-mail Privacidade e Segurança no Correio Electrónico • Padece dos mesmos “males” do correio postal.... • Autenticidade do remetente • Assinatura digital • Cifra de mensagens Vulnerabilidades Gateway de e-mail Gateway de e-mail Internet 27 E-mail Pode ser copiado.... Envio, recepção e autorização • Para enviar mensagens com o SMTP, normalmente, não é necessário fazer autenticação do remetente • Para aceder à caixa do correio para ler as mensagens é necessário fornecer a password João Neves, 2013 56 28 E-mail Privacidade e Segurança no Correio Electrónico • Padece dos mesmos “males” do correio postal.... • Autenticidade do remetente • Assinatura digital • Cifra de mensagens • Estabelecimento de ligações seguras Assinatura Digital 29 E-mail Verificação da Assinatura Assinatura Digital João Neves, 2013 60 30 E-mail Privacidade e Segurança no Correio Electrónico • Padece dos mesmos “males” do correio postal.... • Autenticidade do remetente • Assinatura digital • Cifra de mensagens • Estabelecimento de ligações seguras Cifrar Mensagens 31 E-mail Mensagem Cifrada João Neves, 2013 63 Cifra - Integração no UA João Neves, 2013 64 32 E-mail Partes do Corpo da Mensagem Estrutura da Mensagem Interpessoal (IP) Estructura básica da mensagem Envelope Envelope + Cabeçalho Corpo Mensagem IP parte do corpo • • • • • Conteúdo parte do corpo MIME Multipurpose Internet Mail Extensions RFC822 - STANDARD FOR THE FORMAT OF ARPA INTERNET TEXT MESSAGES RFC2822 – Internet Message Format “Abstract This standard specifies a syntax for text messages that are sent between computer users, within the framework of "electronic mail" messages. This standard supersedes the one specified in Request For Comments (RFC) 822, "Standard for the Format of ARPA Internet Text Messages", updating it to reflect current practice and incorporating incremental changes that were specified in other RFCs. ... 2.3. Body The body of a message is simply lines of US-ASCII characters. ...” João Neves, 2013 66 33 E-mail MIME Multipurpose Internet Mail Extensions • As extensões do MIME foram criadas para permitir a transmissão de dados não ASCII via e-mail. • Com o MIME é possível codificar em ASCII quaisquer dados e depois enviá-los por e-mail. • Cada mensagem MIME leva no cabeçalho informação para o destinatário que indica o tipo de dados que inclui (Content-Type:) e qual a codificação usada (Content-Transfer-Encoding:). João Neves, 2013 67 Mensagem MIME To: [email protected] From: <[email protected]> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=====================_7569549==_" --=====================_7569549==_ Content-Type: text/plain; charset="iso-8859-1"; format=flowed Content-Transfer-Encoding: quoted-printable Dear Webmaster; I would really appreciate it if [...] --=====================_7569549==_ Content-Type: image/gif; name="goodimage.gif"; x-mac-type="47494666"; x-mac-creator="4A565752" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="goodimage.gif" R0lGODlheAA8AOYAAAAAAAgICBAQEBgYGCEhISkpKSkxMTExMTk5OTk5Qik5czNDc0JCQkJKSkpK SkpKUkpSUlJSUlpaWkJSe1paY2NjY2Nja2Nra2tra2trc2tzc3Nzc3Nze3N7e3t7e0pYhFJahFVk [...] --=====================_7569549==_ João Neves, 2013 68 34 E-mail base64 Original RFC1521 – “MIME Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies” • O algoritmo de codificação representa grupos de 24 bits (três octetos) codificados em 4 caracteres: 1. Concatenação de 3 caracteres (8 bit) 2. Os 24 bits são divididos em 4 grupos de 6-bit 3. Cada grupo de 6-bit é mapeado no alfabeto base 64 4. Os caracteres base64 são enviados em linhas de 76 caracteres 5. Se não houver caracteres de entrada suficientes para obter um grupo de 24 bits faz-se o padding com os bits a zero, até completar o octeto. Os restantes caracteres base64 serão “=“ Tradução 6-bit <-> base64 João Neves, 2013 6-bit b64 6-bit b64 6-bit b64 0 1 2 A B C 26 27 28 a b c 52 53 54 0 1 2 3 4 5 D E F 29 30 31 d e f 55 56 57 3 4 5 6 7 8 G H I 32 33 34 g h i 58 59 60 6 7 8 9 10 11 J K L 35 36 37 j k l 61 62 63 9 + / 12 13 14 M N O 38 39 40 m n o 15 16 17 P Q R 41 42 43 p q r 18 19 20 S T U 44 45 46 s t u 21 22 23 V W X 47 48 49 v w x 24 25 Y Z 50 51 y z 70 35 E-mail Tipo de Conteúdo Os sete tipos básicos do Content-Type Content Type text image audio video application multipart message Texto (p. ex. um documento) Uma fotografia ou imagem gerada num computador Uma gravação de som Uma gravação de vídeo com movimento Código binário de um programa Mensagem que contem várias “body parts” com distintos “Content-Type” e codificações Uma mensagem de e-mail (p. ex. um memo reencaminhado) ou uma referência externa a uma mensagem (p. ex. um arquivo FTP e respectivo nome do ficheiro) João Neves, 2013 71 O Modelo é Complexo Numa configuração típica, para a disponibilização do serviço de E-mail são necessários servidores dedicados para: • MTA • Webmail • DNS • Serviço de Directório • Anti-SPAM / Protecção do Perímetro de Segurança • Clustering • Arquivo+backup do E-mail Todos os componentes deste modelo têm que funcionar! João Neves, 2013 72 36 E-mail Dependência do serviço DNS Registos: • MX • MR • MB • ... Dependência do serviço DNS @ IN SOA IN NS ns.inescn.pt. jneves.inescn.pt. ( 2001051714 ; Serial 28800 ; Refresh - 8 hours 7200 ; Retry - 2 hours 604800 ; Expire - 7 days 86400 ) ; Minimum TTL - 24 hours ns.inescn.pt. IN IN IN MX MX MX 10 20 100 IN IN IN IN IN IN IN IN A A MX MX MX CNAME A A [...] ; animal ns ntp0 proxy proxy 20 10 100 animal.inescn.pt. correio.inescn.pt. mail2.ip.pt. 192.35.246.1 192.35.246.1 animal.inescn.pt. correio.inescn.pt. mail2.ip.pt. animal.inescn.pt. 192.35.246.1 192.35.246.5 37 E-mail Spiced Ham, vulgo SPAM • O que é? ...presunto temperado com especiarias (Spiced Ham)!!! http://www.youtube.com/watch?v=3kjdrl6qjwY&NR • Decreto-Lei nº 7/2004 de 7 de Janeiro • Open Relays Black Lists • Sender Policy Framework vs. Sender ID SPAM Decreto-Lei nº 7/2004 de 7 de Janeiro Artigo 22º Comunicações não solicitadas 1 — O envio de mensagens para fins de marketing directo, cuja recepção seja independente de intervenção do destinatário, nomeadamente por via de aparelhos de chamada automática, aparelhos de telecópia ou por correio electrónico, carece de consentimento prévio do destinatário. ... 38 E-mail Listas “Negras” • DNS Blacklists and Whitelists (RFC 5782, Feb 2010) DNSxL (x = Blacklist | Whitelist) • Open Relays Black Lists NJABL SORBS SPAMBAG SPAMCOPS ... • Na consulta do DNS do reverse-mapping para o domínio em questão a pergunta resulta num endereço da rede 127.0.0.0/8..... • Problema das “Listas Negras” mal geridas... Por exemplo o DNSBL... bash$ host mail.clar1.k12.sc.us mail.clar1.k12.sc.us has address 207.232.152.157 bash$ host 157.152.232.207.dnsbl.njabl.org 39 E-mail Por exemplo o DNSBL... bash$ host mail.clar1.k12.sc.us mail.clar1.k12.sc.us has address 207.232.152.157 bash$ host 157.152.232.207.dnsbl.njabl.org 157.152.232.207.dnsbl.njabl.org has address 127.0.0.2 Por exemplo o DNSBL... bash$ host mail.clar1.k12.sc.us mail.clar1.k12.sc.us has address 207.232.152.157 bash$ host 157.152.232.207.dnsbl.njabl.org 157.152.232.207.dnsbl.njabl.org has address 127.0.0.2 bash $ host pD9E5693D.dip.t-dialin.net pD9E5693D.dip.t-dialin.net has address 217.229.105.61 bash $ host 61.105.229.217.dnsbl.njabl.org 61.105.229.217.dnsbl.njabl.org has address 127.0.0.3 40 E-mail SPAM • Sender Policy Framework http://spf.pobox.com • Implicações no DNS • Implicações no MTA Mail Servers Survey (2007) Source: http://www.oreillynet.com/pub/a/sysadmin/2007/01/05/fingerprinting-mail-servers.html João Neves, 2013 82 41 E-mail Distribution of Mail Servers by MTAs (2007) Source: http://www.mailradar.com/mailstat/ João Neves, 2013 83 USENET NEWS NEWS Feeder NEWS Feeder UA NEWS Feeder NETWORK NEWS TRANSPORT PROTOCOL • Inicialmente o transporte podia ser UUCP (rexec), mail. João Neves, 2013 84 42 E-mail Funções • posting (nova mensagem) UA USENET • followup (nova mensagem no thread) • replying (resposta por e-mail) • hierarquias – alt, rec, soc, biz, pt, bit, uk... Artigo USENET • Cabeçalho de e-mail + Message-id: Newsgroups Path: <end.> ! <end.> ! <end.> ! <end.> Expires: Control: Organization Approved: 43 E-mail Newsgroups João Neves, 2013 87 A hierarquia alt.* João Neves, 2013 88 44 E-mail Bibliografia • Comer, Douglas E. Internetworking With TCP/IP, Vol. I: Principles, Protocols, and Architectures 5th ed., Prentice Hall International, 2005 ISBN-10: 0-13-187671-6 • Rose, Marshall T. The Internet Message Prentice Hall ISBN 0-13-092941-7 • Request for Comments (RFCs) relacionados com o SMTP, MIME, IMAP e POP 45