Cambiar contaseñas email usuarios Plesk

cambiar contraseña email por lotesDebido a problemas de spam en un servidor VPS con Plesk observé que los usuarios estaban utilizando las contraseñas que se generaron por defecto el día que se les creó la cuenta de correo electrónico (y han pasado demasiados años desde entonces).

Aunque no es algo que deba sorprendernos (seguro que tenéis más de una anécdota de este tipo y estáis deseando compartirla en los comentarios ¿a que sí?) si que es un problema que debemos subsanar.

Como no era plan ir cambiando una a una las passwords desde el panel de control he optado por crear un script que genera (y asigna), desde la línea de comandos, nuevas contraseñas a todos los usuarios del dominio.

Espero que os “aproveche” y le guste al amigo ak!l3s (de 1GB de Información) al que va dedicado el siguiente “frikonsejo” 😉

Objetivo

Crear un script que permita cambiar la contraseña a todos los usuarios del correo electrónico de un dominio sin tener que ir uno a uno a través del panel de control.

Por no complicar el script

  • me he limitado a crear N sentencias (separadas por “;”) listas para lanzar desde la terminal
  • no he anotado en un fichero la lista de usuarios y contraseñas asignadas que vendrían bien para enviárselas al responsable de la empresa y/o para notificar a cada uno de los interesados (propietarios de la cuenta de correo). Esta decisión ha sido tomada por simplificar el script (en tu mano está mejorarlo) y porque como todas las líneas que genera el script son iguales es muy sencillo hacer un buscar/sutituir directamente sobre lo que generamos.
  • genera claves nuevas para todos los usuarios de correo electrónico existentes (siempre puedes utilizar la cláusula WHERE de la SQL para limitar y/o excluir aquellos que no te interesen)

Mejoras

  • se podría enviar a cada propietario un email indicándole que su contraseña va a cambiar y cuál será la nueva (no me parece seguro porque el spammer lo leería igualmente y dejaría de tener gracia)
  • podría generarse un fichero listo para ser lanzado con las N instrucciones que cambian la contraseña de las cuentas de correo pero se consigue con una simple redirección (pipe) a la hora de lanzarlo por lo que he optado por no hacerlo en aras de la legibilidad de la solución.
  • … (póngase aquí cualquier idea que se os pueda ocurrir y que agradeceré ver en los comentarios ;))

Vamos al “turrón”

El script, que puedes descargar integramente de PasteBin queda del siguiente modo (tranquilos, lo explico abajo, es más sencillo de lo que pueda parecer)

cambiar contraseña cpanel

Donde

  • export dominio=”@PonTuDominioAqui.es” permite cambiar, sin complicarnos, el dominio en el que vamos a modificar las cuentas de correo electrónico.
  • mysql –skip-column-names -uadmin -p`cat /etc/psa/.psa.shadow`psa -e ‘SELECT mail_name FROM mail;’) accede a la BD mysql (sin pedir contraseñas gracias a cat /etc/psa/.psa.shadow) y lista todas las cuentas de correo electrónico existentes (SELECT mail_name FROM mail)
  • export clave=$(openssl rand 6 -base64) genera una clave aleatoria nueva y lo anota en la variable clave para su uso posterior
  • echo “/usr/local/psa/bin/mail -u “$i$dominio” -passwd $clave;” imprime el comando que permitirá, desde la terminal, cambiar la contraseña del correo electrónico

Tras lanzar el script generará una lista de comandos, separados por ; similar a ésta
cambiar contraseña email cpanel

Conclusión

Pequeño script que te ahorrará tener que ir uno a uno cambiando las contraseñas de correo electrónico de los usuarios de cierto dominio en servidores con Plesk bajo Linux.

No sé si habré conseguido explicarlo correctamente pero, si no es así, no tenéis mas que comentar y aclaro aquello que sea necesario.

2 comentarios en “Cambiar contaseñas email usuarios Plesk

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s