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

Como detectar equipos obsoletos en AD con oldcmp


Muchas veces nos sucede a la gente que trabajamos en IT que nuestros compañeros de soporte técnico  formatean la PC sin avisarnos ni sacarla de dominio, por lo cual nos quedan equipos obsoletos en el Active Directory. En este documento vamos a ver los pasos necesarios para borrar dichos  equipos en Active Directory en Windows server 2003.
Para poder ver cuales son los equipos obsoletos en Active Directory vamos a usar la herramienta olcmp. La cual la podemos bajar de el siguiente link. www.joeware.net/freetools/tools/oldcmp/
Una vez descargada la aplicación la guardamos en la raíz de nuestro disco c:\>
Desde una línea de comandos ejecutamos: oldcmp /report /age 180
Este comando nos genera un archivo html con la PCs que no se registraron al dominio en los últimos 180 dias.





Ahora seleccionamos el text del campo Search Filter y lo copiamos
(&(objectcategory=computer)(pwdLastSet<=128777925504890000))
Nos conectamos a un Domain Controller y creamos una consulta de Active Directory:
Inicio -> ejecutar -> dsa.msc



Pulsamos con el botón derecho sobre Consultas guardadas -> Nuevo -> Consulta.



Le damos un nombre a la consulta en el campo Nombre y pulsamos sobre Definir consulta…

En el desplegable Buscar: Seleccionamos Búsqueda personalizada.
En la pestaña Opciones avanzadas pegamos el valor Search File que hemos conseguido con el programa oldcmp y pulsamos sobre Aceptar y Aceptar de nuevo.
Ahora en la columna de la derecha en la mmc de Usuarios y equipos de Active Directory nos aparecerán todos los equipos que no se han validado en el dominio durante más de 180 días. (NO SE PUEDEN ELIMINAR TODAVÍA).
Pulsamos con el botón derecho sobre la consulta creada y pulsamos sobre Exportar lista para crear un fichero que podamos usar para hacer un ping a cada uno de los equipos. Esto nos servirá para comprobar realmente si estos se pueden eliminar.
Advertencia: En ocasiones existen equipos que no contactan con Active Directory en 180 días bien por que no se han reiniciado o por que nadie ha iniciado sesión desde ellos, en ese caso aparecerá en esta lista.
Para chequear que todos los equipos que vamos a eliminar van a ser realmente válidos para su eliminación vamos a realizar un último paso que es realizar un ping a la lista de elementos que nos ha devuelto la consulta LDAP.
Para hacerlo podemos seguir este procedimiento:
Suponiendo que el fichero exportado se llama equiposobsoletos.txt desde una línea de comandos ejecutamos el siguiente comando:

(for /F %i in (equiposobsoletos.txt) do ping -n 1 %i) >resultado.txt

Cuando tengamos el proceso finalizado debemos ejecutar el siguiente comando para detectar los equipos que responden a ping:

C:\>@find /i "Haciendo ping a" resultado.txt

El resultado de este find son los equipos que no debemos eliminar. También podemos hacer un ping inverso “ping –a” para detectar si realmente no es un problema con el dns.
Finalmente y para terminar con este proceso ya podemos eliminar todos los equipos devueltos por la consulta excepto los listados en el paso anterior.

FUENTE: http://www.megacrack.es