Tabela de Conteúdos

Página desactualizada Esta página contém uma versão anterior deste guia que pode estar desatualizada. Para a consultar a versão mais recente clique aqui.

5.2.2 Servidor SMTP com autenticação

A instalação do Servidor SMPT limita a utilização apenas à rede interna.

Case seja necessário aceder ao servidor a partir o exterior (por exemplo, a partir da Internet) deve ser previsto um mecanismo que limite o acesso apenas a utilizadores devidamente autorizados, para não correr o risco de o nosso servidor ser considerado um open relay.

Objectivo

Complementar a instalação do Servidor SMTP com um mecanismo de autenticação de utilizadores. Como mecanismo de autenticação iremos usar o suporte sasl do dovecot.

Configuração

A configuração está dividida em duas partes: a configuração do dovecot para trabalhar com o postfix e a configuração do postfix para autenticar utilizadores no dovecot:

Dovecot

A configuração que é necessário alterar é guardada no ficheiro /etc/dovecot/dovecot.conf.

/etc/dovecot/dovecot.conf
# [...]
auth default {
  # Space separated list of wanted authentication mechanisms:
  #   plain login digest-md5 cram-md5 ntlm rpa apop anonymous gssapi
  mechanisms = plain login
# [...]
  # It's possible to export the authentication interface to other programs:
  socket listen {
    #master {
      # Master socket is typically used to give Dovecot's local delivery
      # agent access to userdb so it can find mailbox locations. It can
      # however also be used to disturb regular user authentications.
      # WARNING: Giving untrusted users access to master socket may be a
      # security risk, don't give too wide permissions to it!
      #path = /var/run/dovecot/auth-master
      #mode = 0600
      # Default user/group is the one who started dovecot-auth (root)
      #user =
      #group =
    #}
    client {
      # The client socket is generally safe to export to everyone. Typical use
      # is to export it to your SMTP server so it can do SMTP AUTH lookups
      # using it.
      path = /var/spool/postfix/private/auth
      mode = 0660
      user = postfix
      group = postfix
    }
  }
}
# [...]

Reiniciar o serviço dovecot:

root@server:~# /etc/init.d/dovecot restart

Postfix

A configuração a alterar está guardada no ficheiro /etc/postfix/main.cf:

Acrescentar os parâmetros SASL:

/etc/postfix/main.cf
# [...]
# SASL parameters
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_authenticated_header = yes
broken_sasl_auth_clients = yes
# [...]

As restrições de segurança devem permitir o acesso a utilizadores autenticados via sasl:

/etc/postfix/main.cf
# [...]
## Seguranca
# Aceita ligações apenas a partir da rede local ou utilizadores autenticados
smtpd_client_restrictions = permit_mynetworks,
                            permit_sasl_authenticated,
                            reject

# Utilizadores locais ou autenticados podem enviar emails para qualquer endereco
# Rejeitar todos os outros
smtpd_recipient_restrictions = permit_mynetworks,
                               permit_sasl_authenticated,
                               reject_unauth_destination
# [...]

Reiniciar o serviço postfix:

root@server:~# /etc/init.d/postfix restart

Configuração Clientes

Nas opções de segurança da configuração do servidor smtp dos clientes deverá ser indicado o utilizador a autenticar:

Ao enviar uma mensagem, será pedida a respectiva password.

Referências