Usando chave de certificado confiável e arquivos crt para habilitar o TLS no Sendmail

1

Eu tenho um certificado SSL e uma chave de uma CA confiável (não auto-assinada). Isso me dá os seguintes arquivos em um sistema Fedora:

/etc/pki/tls/certs/mydomain.crt
/etc/pki/tls/certs/mydomain.csr
/etc/pki/tls/private/mydomain.key

Meu arquivo sendmail.mc contém estas linhas:

define('confCACERT_PATH', '/etc/pki/tls/certs')dnl
define('confCACERT', '/etc/pki/tls/certs/ca-bundle.crt')dnl
define('confSERVER_CERT', '/etc/pki/tls/certs/mydomain.crt')dnl
define('confSERVER_KEY', '/etc/pki/tls/private/mydomain.key')dnl

Note que eu não tenho nenhum arquivo .pem que é comumente mostrado em exemplos de como fazer o TLS funcionar no sendmail.

Quando inicio o sendmail, recebo este erro:

Aug 22 15:10:17 cs sendmail[23424]: STARTTLS=server, error: SSL_CTX_use_PrivateKey_file(/etc/pki/tls/private/mydomain.key) failed

Eu assumo que o motivo do erro é que ele está procurando por um arquivo .pem , mas eu só tenho um arquivo .key para dar. Devo criar um arquivo .pem ? Em caso afirmativo, como faço isso de meus arquivos existentes? Quando tento executar o make mydomain.pem , ele quer criar um CSR a partir do zero.

Solução

Como apontado abaixo, havia uma senha no arquivo de chaves. Eu o removi usando o comando openssl e o sendmail conseguiu carregar o arquivo. Eu também precisava iniciar saslauthd para que tudo funcionasse.

    
por Barry Brown 23.08.2010 / 00:28

1 resposta

3

Parece correto, o arquivo .pem é o certificado ou a chave pública e também pode ser .cer ou .crt até onde eu saiba. Veja este post semelhante para mais informações.

Em relação ao erro real, a chave tem uma senha associada a ela? Você definitivamente tem os arquivos imediatamente? A tecla .key deve começar com ---BEGIN PRIVATE KEY--- e o .crt deve começar com ---BEGIN CERTIFICATE---

    
por 23.08.2010 / 00:57