Configurando o postfix e o dovecot para Secure IMAP e SMTP

1

Eu tenho uma instalação limpa do postfix e dovecot-core dovecot-imapd dovecot-lmtpd instalado no sistema operacional Debian 8.

Eu quero configurar o correio para trabalhar com o PAM, mas quero restringi-lo aos usuários que fazem parte do grupo usermail , de modo que nem todo usuário do Linux tem acesso ao correio.

Também gostaria de ter certeza de que os arquivos a seguir foram configurados corretamente. Quero garantir que o usuário / senha não seja enviado em texto sem formatação e criptografado.

Estou mostrando apenas as linhas que modifiquei. Para uma seção que eu não tinha certeza, fiz uma pergunta.

dovecot / 10-auth.conf

disable_plaintext_auth = yes
auth_username_chars = abcdefg....AbCdefg...0123...@

O plain login deve ser usado para SMTP Seguro e IMAPS ou apenas plain ?

auth_mechanisms = plain login 

Este if para autenticação PAM

!include auth-system.conf.ext

dovecot / 10-master.conf

Todos os outros são comentados, então apenas o IMAPS funcionará.

service imap-login {
  inet_listener imaps {
    port = 993
    ssl = yes
  }
|

O postfix é o usuário correto ou devo usar o dovecot aqui?

service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
  mode = 0600
  user = postfix
  group = postfix
}

service auth {

Preciso usar isso em vez de Postfix smtp-auth?

  unix_listener auth-userdb {
    #mode =
    #user =
    #group =
  }

Este deve estar usando postfix ou dovecot como usuário?

  # Postfix smtp-auth
  unix_listener /var/spool/postfix/private/auth {
  mode = 0666
  user=postfix
  group=postfix
}

dovecot / 10-mail.conf

Não há problema em usar o maildir em vez do Maildir? Os clientes do email ou o servidor teriam problemas usando todas as letras minúsculas?

mail_location = maildir:~/Maildir

dovecot / 10-ssl.conf

ssl = required

ssl_cert = /etc/dovecot/*.pem
ssl_key = /etc/dovecot/private/*.pem

Preciso excluir! SSLv2 e! SSLv3 para forçar o TLS?

Aqui está a saída do dovecot -n:

 mail_location = maildir:~/Maildir
 namespace inbox {
   inbox = yes
   location =
   prefix =
 }
 passdb {
   driver = pam
 }
 protocols = imap lmtp
 service auth {
   unix_listener /var/spool/postfix/private/auth {
     group = postfix
     user = postfix
     mode = 0666
   }
 }
 service imap-login {
   inet_listener imaps {
     port = 993
     ssl = yes
   }
 }
 service lmtp {
   unix_listener /var/spool/postfix/private/dovecot-lmtp {
     group = postfix
     user = postfix
     mode = 0600
   }
 }
 ssl = required
 userdb {
   driver = passwd
 }

postfix / main.cf

virtual_transport = lmtp:unix:private/dovecot-lmtp
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
smtpd_tls_auth_only = yes

postfix / master.cf

Eu apenas descomentei esta linha:

submission inet n       -       -       -       -       smtpd

ATUALIZAÇÃO:

Com essa configuração, estou recebendo uma mensagem de erro ao tentar enviar uma mensagem do cliente para uma conta do Gmail. Meu iPhone também recebe uma mensagem de erro de autenticação. O usuário foi criado e usa a senha digitada.

Warning: hostname mobile.a.b.c.d-mycingular.net does not resolve to address a.b.c.d
connect from unknown
warning: SASL: connect to private/auth failed: no such file or directory
fatal: no SASL authentication mechanisms
/usr/lib/postfix/smtpd bad command startup --throttling
    
por exxboast7 18.09.2015 / 21:17

1 resposta

2

dovecot / 10-auth.conf

Você deve definir PLAIN e LOGIN, sua configuração atual parece boa.

dovecot / 10-master.conf

Não é necessário comentar os outros serviços, com

ssl = required

Na sua configuração dovecot, os usuários só poderão fazer o login se estiverem conectados por meio do ssl. Essa é uma abordagem melhor, pois os usuários podem usar STARTTLS .

Para o soquete de autenticação, você deve usar o usuário que está executando o serviço de terceiros, nesse caso você deve definir o postfix como usuário.

dovecot / 10-mail.conf

Você pode definir maildir sem maiúsculas sem nenhum problema aqui.

dovecot / 10-ssl.conf

Você não vai forçar tls desativando SSLv2 e SSLv3, mas vai impedir que os usuários usem SSL.

postfix / main.cf

Esta parte parece boa.

warning: SASL: connect to private/auth failed: no such file or directory

significa que a autenticação do pombo não pode ser encontrada. Você deve garantir que o arquivo de soquete de autenticação esteja presente neste diretório

    
por 19.09.2015 / 13:49