Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
servidores:mail:mail_administracion [2008/12/05 18:58] fmolinuevo |
servidores:mail:mail_administracion [2020/06/04 08:01] (actual) fmolinuevo [Restaurar una carpeta de un backup] |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
+ | ====== Mail: Cyrus/Postfix: administrando cuentas de correo-e ====== | ||
+ | |||
+ | //Por Félix Molinuevo, [[fmsi>|FMSI Sistemas de Informática]]// | ||
+ | |||
+ | ===== Crear cuentas ===== | ||
+ | |||
+ | -Ingresar al administrador de Cyrus: <code> | ||
+ | cyradm -u cyrus -p | ||
+ | </code> | ||
+ | -Crear casilla: <code> | ||
+ | cm user.mailbox | ||
+ | </code> **Es necesario** escribir el "user.". Mailbox puede ser cualquier cosa sin puntos ni espacios, sólo letras y números. | ||
+ | -Agregar el alias en /etc/aliases: <code> | ||
+ | mailbox: mailbox | ||
+ | </code> y ejecutar el comando "newaliases" para renovar el listado de aliases para el SMTP | ||
+ | -Crear el usuario y la contraseña para la cuenta (sólo servidores con autenticación SASL): <code> | ||
+ | saslpasswd mailbox | ||
+ | </code> | ||
+ | -Crear el usuario y la contraseña para la cuenta (sólo servidores con autenticación PAM): <code> | ||
+ | passwd mailbox | ||
+ | </code> | ||
+ | -En el caso de los clientes que tienen configurado el "catch-all", agregar en la configuración de Fetchmail la cuenta, para que éste sepa que tiene otra más a la cual distribuir los mensajes | ||
+ | -En el caso de los clientes que tienen configurado virtual domains en Postfix, se debe agregar la cuenta nueva en /etc/postfix/virtual: <code> | ||
+ | mailbox@dominio.com: mailbox | ||
+ | mailbox@dominio.com.ar: mailbox | ||
+ | </code> y ejecutar postmap: <code> | ||
+ | postmap /etc/postfix/virtual | ||
+ | </code> para regenerar la tabla de dominios virtuales | ||
+ | -Probar la cuenta | ||
+ | |||
+ | ===== Eliminar una cuenta ===== | ||
+ | - Conectarse al servidor usando: | ||
+ | |||
+ | <code> | ||
+ | # cyradm -u cyrus localhost --auth login | ||
+ | </code> | ||
+ | |||
+ | - Darle permisos a cyrus para borrar el acl del mailbox, revisar los permisos de ese mailbox y borrarlo. | ||
+ | <code> | ||
+ | localhost.localdomain> sam user.test cyrus c | ||
+ | localhost.localdomain> lam user.test | ||
+ | cyrus c | ||
+ | user.test lrswipcda | ||
+ | localhost.localdomain> dm user.test | ||
+ | </code> | ||
+ | |||
+ | ===== Renombrar Cyrus mailboxes ===== | ||
+ | |||
+ | -Crear una nueva mailbox principal para el nuevo usuario | ||
+ | -Crear todas las carpetas subordinadas, haciendo coincidir exactamente los mismos nombres del árbol de carpetas anterior | ||
+ | -Reemplazar el árbol de carpetas nuevo y vacío, con el árbol anterior | ||
+ | -Borrar la mailbox anterior | ||
+ | -Reconstruir la nueva cuenta con el comando de cyradm "reconstruct", o el utilitario "cyrreconstruct". En el último caso, se debe ejecutar lo siguiente: <code> | ||
+ | su - cyrus | ||
+ | /usr/sbin/cyrreconstruct -r user.<mailbox> | ||
+ | </code> | ||
+ | -Configurar la quota sobre la nueva cuenta | ||
+ | |||
+ | |||
+ | |||
+ | ===== Restaurar una carpeta de un backup ===== | ||
+ | |||
+ | -Restaurar el backup en una carpeta dentro de la cuenta en cuestión. También se puede crear una cuenta nueva y restaurar allí dentro el backup, especialmente si es muy grande | ||
+ | -Luego cambiar el dueño y grupo:<code> | ||
+ | chown -R cyrus:mail recuperado/ | ||
+ | </code> | ||
+ | -Reconstruir la mailbox con el comando cyrreconstruct, utilizando el usuario cyrus:<code> | ||
+ | su - cyrus -c "/usr/sbin/cyrreconstruct -rf user.usuario.carpeta" | ||
+ | </code> | ||
+ | -Verificar que las carpetas estén almacenadas en la DB de Cyrus, y los permisos de acceso estén correctos:<code> | ||
+ | su - cyrus -c "/usr/sbin/ctl_mboxlist -d /var/lib/imap/mailboxes.db | grep user.usuario.recuperado" | ||
+ | </code> | ||
+ | -Si el backup es restaurado en una cuenta que **no es del mismo usuario original** se debe también cambiar los permisos de acceso para los mails restaurados, usando cyradm. En caso de no realizarse este paso, **el nuevo usuario no tendrá acceso a las carpetas restauradas, y por lo tanto ni siquiera podrá suscribirse**:<code> | ||
+ | cyradm -u cyrus localhost</code> Y luego: <code> | ||
+ | sam user.usuario.recuperado\* usuario all | ||
+ | </code> | ||
+ | |||
+ | ===== Eliminar mensajes de la cola (queue) de Postfix ===== | ||
+ | |||
+ | Todos los mails de MAILER-DAEMON: | ||
+ | |||
+ | mailq | tail -n +2 | head -n -2 | grep -v '^ *(' | awk 'BEGIN { RS = "" } { if ($7 == "MAILER-DAEMON") print $1 }' | tr -d '*!' | postsuper -d - | ||
+ | | ||
+ | Todos los mails para un destinatario: | ||
+ | |||
+ | mailq | tail -n +2 | grep -v '^ *(' | gawk 'BEGIN {RS = ""} /cuenta@localhost/ {print $1}' | tr -d '*!' | sudo postsuper -d - | ||