TLS: Erro ao ler o arquivo

3

Estou configurando um novo servidor com o Debian 8. O Exim4 está pré-instalado e estou tentando fazer o TLS funcionar.

Eu copiei a chave snakeoil e cert para a pasta / etc / exim4 e configurei as permissões e propriedade corretas:

-r--r-----  1 root Debian-exim  1704 Sep 28 20:01 ssl-cert-snakeoil.key
-r--r-----  1 root Debian-exim  1257 Sep 28 20:01 ssl-cert-snakeoil.pem

Eu os configurei no Exim4

De um segundo servidor, eu tentei conectar-me ao SMTP e iniciar o TLS assim:

root@second: ~# telnet mynewserver.net.au 25
Trying xxx.xxx.xxx.xxx...
Connected to mynewserver.net.au.
Escape character is '^]'.
220 mynewserver.net.au ESMTP Exim 4.84_2 Wed, 28 Sep 2016 20:12:12 +1000
ehlo second
250-mynewserver.net.au Hello second [xxx.xxx.xxx.xxx]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-STARTTLS
250 HELP
STARTTLS
454 TLS currently unavailable

E o log de depuração do mynewserver é assim:

  665 SMTP>> 250-mynewserver.net.au Hello second [xxx.xxx.xxx.xxx]
  665 250-SIZE 52428800
  665 250-8BITMIME
  665 250-PIPELINING
  665 250-STARTTLS
  665 250 HELP
  665 SMTP<< STARTTLS
  665 initialising GnuTLS as a server
  665 GnuTLS global init required.
  665 initialising GnuTLS server session
  665 Expanding various TLS configuration options for session credentials.
  665 certificate file = '/etc/exim4/ssl-cert-snakeoil.pem'
  665 key file = '/etc/exim4/ssl-cert-snakeoil.key'
  665 LOG: MAIN
  665   TLS error on connection from second (second) [xxx.xxx.xxx.xxx] (cert/key setup: cert='/etc/exim4/ssl-cert-snakeoil.pem' key='/etc/exim4/ssl-cert-snakeoil.key'): Error while reading file.
  665 SMTP>> 454 TLS currently unavailable

Eu verifiquei os certificados, que a chave e o certificado correspondem, como no teste a seguir, onde o módulo é o mesmo:

root@mynewserver: exim4# openssl x509 -noout -modulus -in ssl-cert-snakeoil.pem | openssl md5
(stdin)= 4d56fe03bcdc3103788344d0d7a2eb8d
root@mynewserver: exim4# openssl x509 -noopenssl rsa -noout -modulus -in ssl-cert-snakeoil.key | openssl md5
(stdin)= 4d56fe03bcdc3103788344d0d7a2eb8d

Eu também configurei o novo servidor para permitir que o Debian-exim fizesse login, logasse e pudesse visualizar os arquivos de certificado sem problemas.

Toda a minha pesquisa identificou problemas com os certificados sendo legíveis, com conteúdo correto, correspondência e com as permissões corretas, ou sendo especificados na configuração do exim4 corretamente. Eu cobri todas essas áreas e ainda assim ele falha.

Você tem alguma ideia de onde eu deveria verificar em seguida?

    
por muz the axe 28.09.2016 / 20:59

1 resposta

0

É um significado literal - ele realmente não pode ler o arquivo [certificado]. Eu tentei adicionar várias entradas ao meu arquivo de configuração como:

tls_certificate=xxx.crt
tls_privatekey=xxx.key

e

MAIN_TLS_CERTIFICATE=xxx.crt
MAIN_TLS_PRIVATEKEY=xxx.key

Mas nada disso parece funcionar. Por padrão, o exim4 procura por CONFIGDIR / exim.crt e CONFIGDIR / exim.key (CONFIGDIR é para meu / etc / exim4)

Portanto, copie seu certificado e chave para esses dois nomes de arquivos. Remova todas as entradas de configuração adicionadas anteriormente, para que o exim4 procure as entradas padrão sem qualquer distração. Assegure-se de que seu certificado e chave sejam legíveis pelo exim4:

  1. Defina o grupo para o Debian-exim (chrgrp Debian-exim exim. *)
  2. Defina a permissão de leitura do grupo em (chmod g + r exim. *)
  3. Reinicie seu exim4
  4. Eu usei o checktls.com para garantir que o TLS e o certificado fossem funcionando corretamente.

HTH

    
por 22.03.2018 / 02:40

Tags