Problema con los certificados SSL / TLS de Postfix

2

Estoy tratando de configurar postfix para enviar correo a través del servidor SMTP de Gmail en el puerto 587. Esto es lo que he puesto en mi /etc/postfix/main.cf :

relayhost = [smtp.gmail.com]:587
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
smtp_tls_CAfile = /etc/postfix/cacert.pem
smtp_use_tls = yes

Sin embargo, tengo un problema de TLS ya que /etc/postfix/cacert.pem , que parece sugerirse en cualquier lugar en línea, no existe realmente en mi sistema (OS X 10.9.3).

Por lo tanto, ¿cuál es el CAfile correcto para usar? Cualquier ayuda es muy apreciada.

En una nota al margen, por ahora estoy usando la solución

smtp_tls_security_level = may

que funciona. Sin embargo, supongo que esta es una solución barata y me preocupa la seguridad.

    
pregunta 4ae1e1 13.06.2014 - 08:50

2 respuestas

2

La opción especifica dónde se encuentran los certificados raíz de los emisores de confianza.

En OS X se almacenan en el llavero.

Puedes extraerlos con

$ sudo security find-certificate -a -p /System/Library/Keychains/SystemRootCertificates.keychain > /etc/pki/tls/certs/ca-bundle.crt

Y luego

smtpd_tls_CAfile = /etc/pki/tls/certs/ca-bundle.crt

Editar Ten en cuenta que cuando Apple actualice los certificados raíz en el Llavero, tendrás que volver a exportarlos.

    
respondido por el Matteo 13.06.2014 - 09:46
0

Puede configurar Postfix para enviar correo electrónico a través de su cuenta de Google en OS X modernos agregando las siguientes líneas a /etc/postfix/main.cf ( por ejemplo, por sudo sh -c 'cat >> /etc/postfix/main.cf' ):

relayhost=smtp.gmail.com:587
smtp_sasl_auth_enable=yes
smtp_sasl_password_maps=hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options=noanonymous
smtp_sasl_mechanism_filter=plain
smtp_use_tls=yes
smtp_tls_security_level=encrypt
tls_random_source=dev:/dev/urandom

Luego, genere una contraseña específica de la aplicación y úsela para crear el contenido de /etc/postfix/sasl_passwd (por ejemplo, por sudo sh -c 'cat > /etc/postfix/sasl_passwd ):

smtp.gmail.com:587 [email protected]:my_app_spec_password

(Recuerde corregir los permisos, por ejemplo, sudo chmod 440 /etc/postfix/sasl_passwd ).

Inicie el servidor de Postfix (si aún no está iniciado)

$ sudo launchctl start org.postfix.master

o (si ya se ha iniciado Postfix) vuelve a cargar la configuración

$ sudo postfix reload

Ahora puedes enviar un correo electrónico desde la línea de comandos:

$ mailx -s 'Test email 1' [email protected]
Testing, testing...^D

El servidor de correo se detiene de nuevo en algún momento , por lo que es posible que tengas que volver a iniciar la próxima vez que lo necesites:

$ sudo launchctl start org.postfix.master
    
respondido por el J P 15.12.2015 - 09:51

Lea otras preguntas en las etiquetas