Thiago Barros 1102133 ADS 640


SERVIDORES DE EMAIL:

Um servidor de E-mail gerencia os e-mails que
são enviados e recebidos. Os servidores de email podem ser servidores Internet, onde emails enviados e recebidos podem ser
transitados para qualquer lugar do mundo, ou
servidores de correio de intranet onde as
mensagens trafegam apenas dentro da
empresa.
Estudaremos aqui o Envio por SMTP, com
autenticação SASL, criptografia SSL e a leitura
por POP3







Simple Mail Transfer Protocol

É um protocolo, baseado em texto simples, em
que um ou vários destinatários de uma
mensagem são especificados, sendo depois a
mensagem transferida.
SMTP trabalha por conexão TCP, com a porta 25
O SMTP é um protocolo apenas de envio, logo
não permite que um utilizador descarregue as
mensagens de um servidor, patanto é necessário
um cliente de email que suporte POP3 ou IMAP.
Transmissão

Conexão pela porta 25

Dentro da Internet, as mensagens de correio
eletrônico são entregues quando a máquina de
origem estabelece uma conexão TCP com a porta
25 da máquina de destino.

Recepção
Transmissão

Conexão pela porta 25

Olá !!!

Transmissor espera que o receptor se comunique
primeiro.

Recepção
Transmissão

Conexão pela porta 25

Olá !!!

Transmissor espera que o receptor se comunique
primeiro.
O servidor começa enviando uma linha de texto
que fornece sua identidade e informa que está
preparado para receber mensagens. Caso não
esteja, o cliente encerrará a conexão e tentará
outra vez mais tarde.

Recepção
Transmissão

Conexão pela porta 25

Essa mensagem é minha e vai pra ele

Se o servidor estiver disposto a receber
mensagens, o cliente anunciará de quem veio a
mensagem e para quem ela está indo. Se esse
receptor existir no local de destino, o servidor
dará ao cliente o sinal para enviar a mensagem.

Recepção
Transmissão

Conexão pela porta 25

Recebi a mensagem

Em seguida, o cliente enviará a mensagem e o
servidor a confirmará.

Recepção
Transmissão

Recepção
Conexão pela porta 25 encerrada

Quando todas as mensagens tiverem sido
trocadas em ambos os sentidos, a
conexão será encerrada.
Exemplo do diálogo necessário para o envio de
mensagem
Iniciando a conexão...
Servidor se comunica ...
Remetente informa o destinatário...
Corpo da mensagem a ser enviada...
Conexão é encerrada após envio ...






Como vimos, o correio eletrônico é entregue
fazendo-se o remetente estabelecer uma conexão
TCP para o destinatário, e depois transmitir a
mensagem por ela.
Esse modelo funcionou bem durante décadas,
quando todos os hosts da Internet estavam de fato
on-line o tempo todo para aceitar conexões TCP.
Contudo, nem sempre o receptor vai estar on line,
logo o trasmissor não consiguirá estabelecer uma
conexão TCP, e desse modo não poderá executar o
protocolo SMTP


Uma solução é fazer um agente de
transferência de mensagens em uma máquina
do provedor de internet, aceitar correio
eletrônico para seus clientes e armazená-lo
nas respectivas caixas de correio, na própria
maquina do provedor. Tendo em vista que
esse agente pode estar on-line o tempo todo,
as mensagens de correio eletrônico podem
ser enviadas para ele 24 horas por dia.






Infelizmente, essa solução cria outro problema: como
o usuário conseguirá o correio eletrônico do agente
de transferência de mensagens do provedor?
A solução para esse problema é criar outro protocolo
que permita aos agentes de transferência do usuário
(em PCs clientes) entrar em contato com o agente de
transferência de mensagens (na máquina do
provedor) e permitir que as mensagens de correio
eletrônico sejam copiadas do provedor para o
usuário.

Um protocolo desse tipo é o POP3 (Post Office
Protocol Version 3), descrito na RFC 1939.
Neste primeiro exemplo de envio e conexão
quando o receptor tem uma conexão permanente
com a internet...
Agora, a leitura quando o receptor tem uma
conexão dial-up com um provedor...
O envio é feito da mesma forma...
O leitor de correio chama o provedor e estabelece
uma conexão TCP com o agente de transferência
de mensagens na porta 110...
Depois que a conexão é estabelecida, o protocolo
POP3 passa por três
estados em sequência:
1- Autorização:
Que lida com o login do usuário.
2- Transação:
Que lida com a coleta de mensagens de e-mail do
usuário e marca as mensagens para exclusão da
caixa de correio
2- Atualização:
O estado de atualização faz a mensagens de
correio eletrônico serem excluídas.
Exemplo de uso do POP3.
As linhas marcada com “C” são o cliente...
As linhas marcada com “S” são o servidor...
Conexão TCP estabelecida...
Cliente passa login e senha...
Agora cliente envia comando “LIST” que faz o
servidor listar o conteúdo da caixa de correio, uma
mensagem por linha, fornecendo de cada uma.
A lista é encerrada por um ponto...
Em seguida, o cliente pode recuperar mensagens
usando o comando RETR ...
e marcá-las para exclusão com DELE ...
e marcá-las para exclusão com DELE ...
Todas as mensagens são recuperadas e marcadas
para exclusão ...
Cliente enviará o comando “QUIT” para encerrar o
estado de transação e entrar no estado de
atualização. Quando o servidor excluir todas as
mensagens, ele enviará uma
resposta e interromperá a conexão TCP....
No nosso ambiente virtual de rede, utilizado na
disciplina de RC2, utilizaremos davinci como
servidor de E-Mail...




Para o servidor de E-Mail poder enviar
mensagens por SMTP
# apt-get install postfix

Execute o comando acima para instalar o SMTP
PostFix na Maquina Davinci ...


Sempre que for necessário
◦ Para parar o servidor SMTP
 # /etc/init.d/postfix stop
Para iniciar o servidor SMTP
 # /etc/init.d/postfix start
Para reiniciar o servidor SMTP
 # /etc/init.d/postfix reload

Execute o comando acima para instalar o SMTP
PostFix na Maquina Davinci ...


Arquivo de configuração do postfix



No diretorio:
◦ /etc/postfix



No arquivo:
◦ main.cf

As configurações devem ser feita no arquivo
/etc/postfix/main.cf...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Este é o arquivo de configuração do postfix ...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Especifica o nome do domínio do servidor de EMail ...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Especifica o nome da máquina do servidor de EMail ...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Especifica como ficará a terminação do E-Mail após
o @ ...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Os nomes dos domínios que o servidor de e-mail é
responsável....
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Especifica qual rede que o servidor de e-mail irá
trabalhar...
mydomain = thiago.com.br
myhostname = davinci. thiago.com.br
myorigin = thiago.com.br
mydestination = davinci. thiago.com.br, thiago.com.br
mynetworks = 192.168.0.0/24
home_mailbox = MeusEmails/

Especifica o diretório onde ficará as mensagens de
e-mail...
#
#
#
#

useradd -m usuario1
passwd usuario1
useradd -m usuario2
passwd usuario2

Crie duas contas de usuários com senha ...
Para verificar se o
Servidor Postfix está
funcionando, use
o Telnet para enviar
uma mensagem de
e-mail,
ousuario1 vai enviar
a mensagem de email e o usuario2 vai
receber:...


Instalação do pacote
◦ # apt-get install sasl2-bin

Será usado o serviço de autenticação SASL no
servidor SMTP para que seja enviado mensagens
de e-mail somente com a autenticação...
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_helo_required = yes
smtpd_recipient_restrictions =
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination
Abre o arquivo main.cf e adicione as seguintes
linhas para habilitar o serviço de autenticação
no Postfix:...


no arquivo /etc/default/saslauthd

START = yes
OPTIONS = "-c -m /var/spool/postfix/var/run/saslauthd -r"

Para ativar o SASL, edite no
arquivo "/etc/default/saslauthd" linhas acima:


Verifique se o usuário postfix contém o
grupo sasl:

# groups postfix




Se não tiver, adicione para o usuário postfix obter as
permissões do grupo sasl:
# usermod -G sasl postfix

Verifique se o usuário postfix contém o grupo sasl


Crie o arquivo smtpd.conf no
diretório "/etc/postfix/sasl"

pwcheck_method: saslauthd
mech_list: plain login

Adicione as linhas acima ao arquivo...
Ao termino das configurações reinicie o Postfix e o
SASL:


No diretório do Postfix, crie um novo diretório
aonde irá ficar o certificado
# mkdir /etc/postfix/ssl

Para que o Servidor de E-mail tenha mais
segurança e que os usuários tenham a garantia de
privacidade das mensagens de e-mail, basta
implementar criptografia.


No diretório do Postfix, crie um novo diretório aonde
irá ficar o certificado depois crie o Certificado TLS:

Para que o Servidor de E-mail tenha mais
segurança e que os usuários tenham a garantia de
privacidade das mensagens de e-mail, basta
implementar criptografia.


Abre o arquivo main.cf e adicione as seguintes linhas
para habilitar a criptografia no Postfix:

smtpd_tls_auth_only = yes
smtp_use_tls = yes
smtpd_use_tls = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem smtpd_tls_loglevel = 1

Salve o arquivo e reinicie o Postfix:





Para poder ler as mensagens de e-mail recebidas, será
usado o Servidor POP3:
Debian/Ubuntu: Courier.
Fedora/CentOS: Dovecot.

As distribuições Debian/Ubuntu usam o servidor
POP3 Courier , já Fedora?CentOs usam Dovecot...
:


Para poder ler as mensagens de e-mail recebidas, será
usado o Servidor POP3:



Debian/Ubuntu: Courier.



# apt-get install courier-pop-ssl

Davinci, onde instalaremos o POP3 é Debian,
execute o comando acima para instalar o POP3 na
Maquina Davinci ...
:
Para verificar se o
Servidor POP3 está
funcionando, use
o Telnet para ler
uma mensagem de
e-mail, recebidas:...
• Livro:
Tanenbaum, Andrew S.; Wetheral, David, Redes de
Computadores , 5ª Ed..

• Sites:
http://blog.cesar.augustus.nom.br/instalando-oservidor-de-e-mail-no-linux.html Acesso em nov.
2013
http://blog.felipemunhoz.com/instalando-umambiente-de-servico-de-email-passo-a-passo-nodebian-com-postfix-courier-e-squirrelmail/ Acesso
em nov. 2013

Thiago silva barros_1102133_ads_640_servidores_de_leitura_e_envio_de_e-mails

  • 1.
  • 2.
     SERVIDORES DE EMAIL: Umservidor de E-mail gerencia os e-mails que são enviados e recebidos. Os servidores de email podem ser servidores Internet, onde emails enviados e recebidos podem ser transitados para qualquer lugar do mundo, ou servidores de correio de intranet onde as mensagens trafegam apenas dentro da empresa.
  • 3.
    Estudaremos aqui oEnvio por SMTP, com autenticação SASL, criptografia SSL e a leitura por POP3
  • 4.
        Simple Mail TransferProtocol É um protocolo, baseado em texto simples, em que um ou vários destinatários de uma mensagem são especificados, sendo depois a mensagem transferida. SMTP trabalha por conexão TCP, com a porta 25 O SMTP é um protocolo apenas de envio, logo não permite que um utilizador descarregue as mensagens de um servidor, patanto é necessário um cliente de email que suporte POP3 ou IMAP.
  • 5.
    Transmissão Conexão pela porta25 Dentro da Internet, as mensagens de correio eletrônico são entregues quando a máquina de origem estabelece uma conexão TCP com a porta 25 da máquina de destino. Recepção
  • 6.
    Transmissão Conexão pela porta25 Olá !!! Transmissor espera que o receptor se comunique primeiro. Recepção
  • 7.
    Transmissão Conexão pela porta25 Olá !!! Transmissor espera que o receptor se comunique primeiro. O servidor começa enviando uma linha de texto que fornece sua identidade e informa que está preparado para receber mensagens. Caso não esteja, o cliente encerrará a conexão e tentará outra vez mais tarde. Recepção
  • 8.
    Transmissão Conexão pela porta25 Essa mensagem é minha e vai pra ele Se o servidor estiver disposto a receber mensagens, o cliente anunciará de quem veio a mensagem e para quem ela está indo. Se esse receptor existir no local de destino, o servidor dará ao cliente o sinal para enviar a mensagem. Recepção
  • 9.
    Transmissão Conexão pela porta25 Recebi a mensagem Em seguida, o cliente enviará a mensagem e o servidor a confirmará. Recepção
  • 10.
    Transmissão Recepção Conexão pela porta25 encerrada Quando todas as mensagens tiverem sido trocadas em ambos os sentidos, a conexão será encerrada.
  • 11.
    Exemplo do diálogonecessário para o envio de mensagem
  • 12.
  • 13.
  • 14.
    Remetente informa odestinatário...
  • 15.
    Corpo da mensagema ser enviada...
  • 16.
    Conexão é encerradaapós envio ...
  • 17.
       Como vimos, ocorreio eletrônico é entregue fazendo-se o remetente estabelecer uma conexão TCP para o destinatário, e depois transmitir a mensagem por ela. Esse modelo funcionou bem durante décadas, quando todos os hosts da Internet estavam de fato on-line o tempo todo para aceitar conexões TCP. Contudo, nem sempre o receptor vai estar on line, logo o trasmissor não consiguirá estabelecer uma conexão TCP, e desse modo não poderá executar o protocolo SMTP
  • 18.
     Uma solução éfazer um agente de transferência de mensagens em uma máquina do provedor de internet, aceitar correio eletrônico para seus clientes e armazená-lo nas respectivas caixas de correio, na própria maquina do provedor. Tendo em vista que esse agente pode estar on-line o tempo todo, as mensagens de correio eletrônico podem ser enviadas para ele 24 horas por dia.
  • 19.
       Infelizmente, essa soluçãocria outro problema: como o usuário conseguirá o correio eletrônico do agente de transferência de mensagens do provedor? A solução para esse problema é criar outro protocolo que permita aos agentes de transferência do usuário (em PCs clientes) entrar em contato com o agente de transferência de mensagens (na máquina do provedor) e permitir que as mensagens de correio eletrônico sejam copiadas do provedor para o usuário. Um protocolo desse tipo é o POP3 (Post Office Protocol Version 3), descrito na RFC 1939.
  • 20.
    Neste primeiro exemplode envio e conexão quando o receptor tem uma conexão permanente com a internet...
  • 21.
    Agora, a leituraquando o receptor tem uma conexão dial-up com um provedor...
  • 22.
    O envio éfeito da mesma forma...
  • 23.
    O leitor decorreio chama o provedor e estabelece uma conexão TCP com o agente de transferência de mensagens na porta 110...
  • 24.
    Depois que aconexão é estabelecida, o protocolo POP3 passa por três estados em sequência:
  • 25.
    1- Autorização: Que lidacom o login do usuário.
  • 26.
    2- Transação: Que lidacom a coleta de mensagens de e-mail do usuário e marca as mensagens para exclusão da caixa de correio
  • 27.
    2- Atualização: O estadode atualização faz a mensagens de correio eletrônico serem excluídas.
  • 28.
  • 29.
    As linhas marcadacom “C” são o cliente...
  • 30.
    As linhas marcadacom “S” são o servidor...
  • 31.
  • 32.
  • 33.
    Agora cliente enviacomando “LIST” que faz o servidor listar o conteúdo da caixa de correio, uma mensagem por linha, fornecendo de cada uma. A lista é encerrada por um ponto...
  • 34.
    Em seguida, ocliente pode recuperar mensagens usando o comando RETR ...
  • 35.
    e marcá-las paraexclusão com DELE ...
  • 36.
    e marcá-las paraexclusão com DELE ...
  • 37.
    Todas as mensagenssão recuperadas e marcadas para exclusão ...
  • 38.
    Cliente enviará ocomando “QUIT” para encerrar o estado de transação e entrar no estado de atualização. Quando o servidor excluir todas as mensagens, ele enviará uma resposta e interromperá a conexão TCP....
  • 39.
    No nosso ambientevirtual de rede, utilizado na disciplina de RC2, utilizaremos davinci como servidor de E-Mail...
  • 40.
      Para o servidorde E-Mail poder enviar mensagens por SMTP # apt-get install postfix Execute o comando acima para instalar o SMTP PostFix na Maquina Davinci ...
  • 41.
     Sempre que fornecessário ◦ Para parar o servidor SMTP  # /etc/init.d/postfix stop Para iniciar o servidor SMTP  # /etc/init.d/postfix start Para reiniciar o servidor SMTP  # /etc/init.d/postfix reload Execute o comando acima para instalar o SMTP PostFix na Maquina Davinci ...
  • 42.
     Arquivo de configuraçãodo postfix  No diretorio: ◦ /etc/postfix  No arquivo: ◦ main.cf As configurações devem ser feita no arquivo /etc/postfix/main.cf...
  • 43.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Este é o arquivo de configuração do postfix ...
  • 44.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Especifica o nome do domínio do servidor de EMail ...
  • 45.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Especifica o nome da máquina do servidor de EMail ...
  • 46.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Especifica como ficará a terminação do E-Mail após o @ ...
  • 47.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Os nomes dos domínios que o servidor de e-mail é responsável....
  • 48.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Especifica qual rede que o servidor de e-mail irá trabalhar...
  • 49.
    mydomain = thiago.com.br myhostname= davinci. thiago.com.br myorigin = thiago.com.br mydestination = davinci. thiago.com.br, thiago.com.br mynetworks = 192.168.0.0/24 home_mailbox = MeusEmails/ Especifica o diretório onde ficará as mensagens de e-mail...
  • 50.
    # # # # useradd -m usuario1 passwdusuario1 useradd -m usuario2 passwd usuario2 Crie duas contas de usuários com senha ...
  • 51.
    Para verificar seo Servidor Postfix está funcionando, use o Telnet para enviar uma mensagem de e-mail, ousuario1 vai enviar a mensagem de email e o usuario2 vai receber:...
  • 52.
     Instalação do pacote ◦# apt-get install sasl2-bin Será usado o serviço de autenticação SASL no servidor SMTP para que seja enviado mensagens de e-mail somente com a autenticação...
  • 53.
    smtpd_sasl_auth_enable = yes broken_sasl_auth_clients= yes smtpd_sasl_authenticated_header = yes smtpd_helo_required = yes smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination Abre o arquivo main.cf e adicione as seguintes linhas para habilitar o serviço de autenticação no Postfix:...
  • 54.
     no arquivo /etc/default/saslauthd START= yes OPTIONS = "-c -m /var/spool/postfix/var/run/saslauthd -r" Para ativar o SASL, edite no arquivo "/etc/default/saslauthd" linhas acima:
  • 55.
     Verifique se ousuário postfix contém o grupo sasl: # groups postfix   Se não tiver, adicione para o usuário postfix obter as permissões do grupo sasl: # usermod -G sasl postfix Verifique se o usuário postfix contém o grupo sasl
  • 56.
     Crie o arquivosmtpd.conf no diretório "/etc/postfix/sasl" pwcheck_method: saslauthd mech_list: plain login Adicione as linhas acima ao arquivo... Ao termino das configurações reinicie o Postfix e o SASL:
  • 57.
     No diretório doPostfix, crie um novo diretório aonde irá ficar o certificado # mkdir /etc/postfix/ssl Para que o Servidor de E-mail tenha mais segurança e que os usuários tenham a garantia de privacidade das mensagens de e-mail, basta implementar criptografia.
  • 58.
     No diretório doPostfix, crie um novo diretório aonde irá ficar o certificado depois crie o Certificado TLS: Para que o Servidor de E-mail tenha mais segurança e que os usuários tenham a garantia de privacidade das mensagens de e-mail, basta implementar criptografia.
  • 59.
     Abre o arquivomain.cf e adicione as seguintes linhas para habilitar a criptografia no Postfix: smtpd_tls_auth_only = yes smtp_use_tls = yes smtpd_use_tls = yes smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem smtpd_tls_loglevel = 1 Salve o arquivo e reinicie o Postfix:
  • 60.
       Para poder leras mensagens de e-mail recebidas, será usado o Servidor POP3: Debian/Ubuntu: Courier. Fedora/CentOS: Dovecot. As distribuições Debian/Ubuntu usam o servidor POP3 Courier , já Fedora?CentOs usam Dovecot... :
  • 61.
     Para poder leras mensagens de e-mail recebidas, será usado o Servidor POP3:  Debian/Ubuntu: Courier.  # apt-get install courier-pop-ssl Davinci, onde instalaremos o POP3 é Debian, execute o comando acima para instalar o POP3 na Maquina Davinci ... :
  • 62.
    Para verificar seo Servidor POP3 está funcionando, use o Telnet para ler uma mensagem de e-mail, recebidas:...
  • 63.
    • Livro: Tanenbaum, AndrewS.; Wetheral, David, Redes de Computadores , 5ª Ed.. • Sites: http://blog.cesar.augustus.nom.br/instalando-oservidor-de-e-mail-no-linux.html Acesso em nov. 2013 http://blog.felipemunhoz.com/instalando-umambiente-de-servico-de-email-passo-a-passo-nodebian-com-postfix-courier-e-squirrelmail/ Acesso em nov. 2013