Mostrando entradas con la etiqueta Postfix. Mostrar todas las entradas
Mostrando entradas con la etiqueta Postfix. Mostrar todas las entradas

martes, 27 de marzo de 2012

postfix gmail error warning: SASL authentication failure: No worthy mechs found

Problema

El postfix una vez configurada una cuenta de gmail para el envio de correo nos da el siguiente error var.log.mail.log

Sep 23 15:10:24 monitor postfix/qmgr[1683]: 4CF941E68211: from=, size=356, nrcpt=1 (queue active)
Sep 23 15:10:24 monitor postfix/smtp[1685]: warning: SASL authentication failure: No worthy mechs found
Sep 23 15:10:24 monitor postfix/smtp[1685]: 4CF941E68211: SASL authentication failed; cannot authenticate to server smtp.gmail.com[209.85.229.109]: no mechanism available
Sep 23 15:10:24 monitor postfix/smtp[1685]: warning: SASL authentication failure: No worthy mechs found
Sep 23 15:10:24 monitor postfix/smtp[1685]: 4CF941E68211: to=, relay=smtp.gmail.com[209.85.229.108]:587, delay=313, delays=313/0.01/0.18/0, dsn=4.7.0, status=deferred (SASL authentication failed; cannot authenticate to server smtp.gmail.com[209.85.229.108]: no mechanism available)


Solucion

#apt-get install libsasl2-modules
#/etc/init.d/postfix restart


FUENTE:http://elmurodelsaber.com

viernes, 9 de marzo de 2012

Mensajes de voz por correo


En este documento detallaremos los pasos necesarios para que cuando alguien nos deje un mensaje de voz en nuestro buzón, se envié por mail un archivo wav con el mensaje que nos dejaron. En este caso utilizaremos una cuenta de gmail para el envió del mensaje.

Prerequisitos
Tener instalado Postfix

#apt-get install postfix libsasl2-modules
En el archivo /etc/asterisk/voicemail.conf configuramos la casilla del interno y agregamos las siguientes líneas:
[default]
1004 => 1234,Jefe Ventas,micuenta@yahoo.com

Configurar una cuenta Gmail en Postfix para enviar correo de Asterisk

Utilizamos una cuenta creada en gmail  "cuenta@gmail.com" y su contraseña: "contraseña"
Pasos:

1) editamos el archivo /etc/postfix/main.cf.
2) Eliminamos el contenido.
3) Agregamos las siguientes líneas: 

# SMTP relayhost
relayhost = [smtp.gmail.com]:587
## TLS Settings
smtp_tls_loglevel = 1
smtp_tls_CAfile = /etc/postfix/certs/CAcert.pem
smtp_tls_cert_file = /etc/postfix/certs/mycert.pem
smtp_tls_key_file = /etc/postfix/certs/mykey.pem
smtp_use_tls = yes
smtpd_tls_CAfile = /etc/postfix/certs/CAcert.pem
smtpd_tls_cert_file = /etc/postfix/certs/mycert.pem
smtpd_tls_key_file = /etc/postfix/certs/mykey.pem
smtpd_tls_received_header = yes
smtpd_use_tls = yes
# configuracion tls
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
# alias de mapeo interno a externo
smtp_generic_maps = hash:/etc/postfix/generic

4) Creamos el archivo sasl_passwd en /etc/postfix/
5) Agregamos las siguientes líneas:
[smtp.gmail.com]:587  cuenta@gmail.com:contraseña
6) Creamos el archivo generic en /etc/postfix/
7) Agregamos las siguientes líneas:
root@localhost.localdomain cuenta@gmail.com

aquí tenemos que cambiar el localhost por el nombre de la maquina y el
localdomain por el dominio local, lo podemos ver en /etc/hosts.

8) Cambiamos los permisos escribiendo lo siguiente:
chmod 600 /etc/postfix/sasl_passwd
chmod 600 /etc/postfix/generic
9) Se cifran los archivos
postmap /etc/postfix/sasl_passwd
postmap /etc/postfix/generic

 En muchos foros aparece que para crear los certificados se deben seguir los siguientes pasos

[root@asterisk]# mkdir /etc/postfix/certs/
[root@asterisk]# cd /etc/postfix/certs/
[root@asterisk]# cd certs
[root@asterisk]# openssl dsaparam 1024 -out dsa1024.pem
[root@asterisk]# openssl req -x509 -nodes -days 3650 -newkey
dsa:dsa1024.pem -out mycert.pem -keyout mykey.pem
[root@asterisk]# ln -s mycert.pem CAcert.pem
[root@asterisk]# openssl req -x509 -new -days 3650 -key /etc/postfix/
certs/mykey.pem -out /etc/postfix/certs/mycert.pem
[root@asterisk]# rm dsa1024.pem
Cuando uno utiliza estos certificados para con una cuenta de gmail nos sale un error que se puede ver en los logs de mail (/var/log/mail) que decía:

certificate verification failed for smtp.gmail.com[74.125.157.109]:587: untrusted issuer /C=US/O=Equifax/OU=Equifax Secure Certificate Authority 

El problema radica en el hecho de que Google ha cambiado proveedores de certificados de Thawte a Equifax, y su sistema de correo no reconoce la autoridad de certificación de Equifax como válido. La solución es añadir una copia del certificado de Equifax como certificado root   local de Postfix.  Para solucionar este problema hacemos el paso 10.
 Hacer previamente estos pasos:

[root@asterisk]# mkdir /etc/postfix/certs/
[root@asterisk]# cd /etc/postfix/certs/
[root@asterisk]# ln -s mycert.pem CAcert.pem
10) Creamos una copia local de los certificados Equifax y  Thawte que utiliza Gmail :

Creamos  un archivo llamado Equifax_Secure_CA.pem en el  /etc/postfix/ que contenga lo siguiente:
-----BEGIN CERTIFICATE-----
MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJVUzEQMA4GA1UE
ChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5
MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoT
B0VxdWlmYXgxLTArBgNVBAsTJEVxdWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCB
nzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPR
fM6fBeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+AcJkVV5MW
8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kCAwEAAaOCAQkwggEFMHAG
A1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UE
CxMkRXF1aWZheCBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoG
A1UdEAQTMBGBDzIwMTgwODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvS
spXXR9gjIBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQFMAMB
Af8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUAA4GBAFjOKer89961
zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y7qj/WsjTVbJmcVfewCHrPSqnI0kB
BIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee95
70+sB3c4
-----END CERTIFICATE-----

Creamos  un archivo llamado Thawte_Premium_Server_CA.pem en el  /etc/postfix/ que contenga lo siguiente:

-----BEGIN CERTIFICATE-----
MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkExFTATBgNVBAgT
DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3dGUgQ29uc3Vs
dGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UE
AxMYVGhhd3RlIFByZW1pdW0gU2VydmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZl
ckB0aGF3dGUuY29tMB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYT
AlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsGA1UEChMU
VGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2
aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNlcnZlciBDQTEoMCYGCSqGSIb3DQEJARYZ
cHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2
aovXwlue2oFBYo847kkEVdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIh
Udib0GfQug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMRuHM/
qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQQFAAOBgQAm
SCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUIhfzJATj/Tb7yFkJD57taRvvBxhEf
8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JMpAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7t
UCemDaYj+bvLpgcUQg==
-----END CERTIFICATE-----

11) Agregamos los certificados a nuestro certificado root
cat /etc/postfix/Equifax_Secure_CA.pem >> /etc/postfix/cacert.pem
echo >> /etc/postfix/cacert.pem
cat /etc/postfix/Thawte_Premium_Server_CA.pem >> /etc/postfix/cacert.pem

12) Reiniciamos el postfix
 /etc/init.d/postfix reload

13) Probamos el envió desde la terminal:
echo "contenido a ser enviado en el correo" | mail -s "asunto del correo"  tucuenta@email.com

martes, 17 de mayo de 2011

Filtrar subject y mensajes con Postfix

Este tutorial nos muestra como poder bloquear subjects y  contenidos de mensajes que contengan algun texto que provenga como correo SPAM.
para esto realizamos lo siguiente:

Editamos el archivo main.cf

#vim /etc/postfix/main.cf

Agregamos estas lineas






body_checks = regexp:/etc/postfix/body_checks
header_checks = regexp:/etc/postfix/header_checks.regexp

Creamos el archivo para filtrar asuntos.

#vim /postfix/header_checks.regexp

Y colocamos la/s palabra/s que queremos filtrar






/^Subject:.*palabra_a_filtrar.*$/ REJECT "Asunto no valido"
/^Subject:.*Viagra.*$/ REJECT "Asunto no valido"

En la segunda linea estamos filtrando la palabra Viagra,lo que colocamos dentro de las comillas (Asunto no valido) es lo que va aparecer en el mail rejectado del remitente.

Creamos el archivo para filtrar contenido de mensaje.

#vim /etc/postfix/body_checks






/palabra_a_filtrar/ REJECT
/Viagra/ REJECT
/casino en linea/ REJECT

En la segunda linea estamos filtrando la palabra Viagra si apareciera en el cuerpo del mensaje.

Luego hacemos:

#postmap /etc/postfix/body_checks
#postmap /etc/postfix/header_checks.regexp

Se crearan los archivos con el mismo nombre con extension .db
Por ultimo reiniciamos postfix para que tome los cambios que realizamos

#/etc/init.d/postfix restart