Buenas les voy a enseñar como tener un backup de correos utilizando le versión gratuita de google apps.
Si mucho parloteo vamos a los bifes:
1) Crear una cuenta en google apps https://www.google.com/a/spgr.com/
Aquí crean la cuenta de google apps, agregan el sitio y lo validan (lo mejor es agregar el archivo html), luego crean todas las cuentas de correo usando un archivo csv.
También es necesario que por cada cuenta activen la recepción imap, para ello puede ver este howto:
http://knol.google.com/k/advisor-steve/google-apps-for-admins-configuring-pop/1p0i914w5kwkv/6#
Antes de pasar al siguiente paso prueben de que hayan creado y activado alguna de las cuentas. Yo utilicé el mismo archivo CSV para GoogleAps y para mi script, les dejo las primeras líneas aquí:
username,first name,last name,password
aXXXXla,Argine,XXXXX,XXXX
aXXXma,XXXXX,de Palma,XXXXX
cdeXXXlis,Clara,XXXXX,XXXXX
2) Creamos un script que hace la scincronización de dos vías
OJOOOO: Aumentar el ulimit -n (max files open) a 65535, con 1024 seguro se cuelga si hacen el sync.
[root@c1 ~]# vi /sbin/mailsync
o el editor que mas os guste y colocan el siguiente código:
#!/bin/bash host1=tuserver.com host2=imap.gmail.com mailfile=/etc/mailsync/mails.csv domain="midominio.com" ops="--noauthmd5 --useheader 'Message-Id' --skipsize --fast" logfile="/var/log/mailsync.log" { while IFS=’,’ read username firstname lastname password; do email="$username@$domain" imapsync --host1 $host1 --user1 $email --password1 $password --host2 $host2 --user2 $email --password2 $password --ssl2 --port2 993 $ops &> /var/log/mailsync_in_$username.log imapsync --host1 $host2 --user1 $email --password1 $password --host2 $host1 --user2 $email --password2 $password --ssl1 --port1 993 $ops &> /var/log/mailsync_out_$username.log done ; } < $mailfile
Si no les funciona el imapsync es porque le falta algún módulo al perl, ejecutan cpan, y corren dentro de cpan los siguientes comandos:
install Mail::IMAPClient
install Term::ReadKey
install Net::SSLeay
install Getopt::Long
install MIME::Base64
install Digest::MD5
install IO::Socket::SSL
3) Agregamos el mailsync al cron.
4) Agregamos los servidores de google a nuestra DNS zone, con menor prioridad, en este caso estoy usando los DNS de every dns, pero podría ser cualquier DNS, tendrían que quedar así:
mail.midominio.com CNAME tuserver.com
midominio.com MX 10 smtp.miempresa.com
midominio.com MX 20 aspmx.l.google.com
midominio.com MX 30 alt1.aspmx.l.google.com
Mantenimiento, desgraciadamente con esta configuración tendremos 3 lugares donde hacer los cambios:
a) el servidor primario.
b) en google apps.
c) el archivo de sincronización.
¿Qué hacer si cae el servidor de primario? Lo único que quedaría por hacer es cambiar el CNAME de mail.spgr.com y que apunte a imap.gmail.com.
Bueno, espero que les sirva.
Un agradecimiento a Manuel que me dió una mano parseando el archivo csv.
Tags: gmail, google apps, google mail, Mail backup
Esto sirve si uso Google Apps como mi servidor de correo principal y quiero tener un backup en un servidor propio ?
Desde ya muchas gracias, alejandra.
Sirve para ambos casos Ale.
Beso.
MN
Hola, quiero hacer bakcup de todos los mails en la cuenta en mi cuenta de apps, pero algunos usuarios no tengo user y pass, puedo backapear todos como admin? Grs! m
Hola la verdad que me mataste.
No que yo sepa, como para tenerlo sincronizado. Quizás google permita un backup general, pero no estoy seguro.