Instalar imapsync en debian 11

Seguimos con temas de correo. Una de las herramientas que uso para migrar buzones de un servidor a otro es imapsync. Vamos a verlo como lo instalamos.

He usado este manual de clouding.io. Al ejecutar el proceso he descubierto una cosa que me ha encantado! normalmente para concatenar comandos de terminal uso &&, he visto que también es posible usar ;!!! me ha gustado esta! :D

Vamos a ver como lo instalamos

Dependencias

root@imapsync:~# apt update && apt install -y libtest-simple-perl libtest-requires-perl libtest-mock-guard-perl libtest-fatal-perl libpar-packer-perl libnet-ssleay-perl libio-compress-perl libdigest-hmac-perl libcrypt-ssleay-perl libssl-dev libauthen-ntlm-perl libclass-load-perl libcgi-pm-perl libcrypt-openssl-rsa-perl libdata-uniqid-perl libencode-imaputf7-perl libfile-copy-recursive-perl libfile-tail-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-tee-perl libhtml-parser-perl libjson-webtoken-perl libmail-imapclient-perl libparse-recdescent-perl libmodule-scandeps-perl libreadonly-perl libregexp-common-perl libsys-meminfo-perl libterm-readkey-perl libtest-mockobject-perl libtest-pod-perl libunicode-string-perl liburi-perl libwww-perl libtest-nowarnings-perl libtest-deep-perl libtest-warn-perl make cpanminus git rcs gcc libproc-processtable-perl

Otra dependencia que me he encontrado que ha pedido instalar (donde he descubierto lo del ;)

root@imapsync:~# apt-get install apt-file; apt-file update

Configurar módulos

Ahora vamos a configurar algunos módulos que serán necesarios para hacer funcionar imapsync

root@imapsync:~# cpanm Crypt::OpenSSL::RSA Crypt::OpenSSL::Random --force
root@imapsync:~# cpanm Mail::IMAPClient JSON::WebToken Test::MockObject Dist::CheckConflicts
root@imapsync:~# cpanm Unicode::String Data::Uniqid --force
root@imapsync:~# cpanm Mail::IMAPClient IO::Socket::SSL

Instalar imapsync

Ahora para instalarlo, vamos a clonar el repositorio e instalaremos el programa

root@imapsync:~# cd /opt && git clone https://github.com/imapsync/imapsync.git
root@imapsync:~# cd imapsync && make install

Si todo está correcto, copiamos el binario en el directorio de binarios

root@imapsync:~# cp imapsync /usr/bin/imapsync

Para comprobar que el programa se ha instalado correctamente usamos:

root@imapsync:~# imapsync --testslive

Usar imapsync

Cuando migramos un servidor de correo, tenemos el servidor antiguo …

Roundcube: cambiar color skin elastic

Hoy he instalado un roundcube y para hacérmelo más fácil he seguido éste post que hice hace un par de añitos (Gracias Blackhold del pasado por este post!).

Con la versión instalada hoy no me funcionaba el tema larry, así que me he quedado con el tema que viene por defecto, elastic. Al poner el logo, el azul de larry quedaba horrorosamente feo, así que he avanzado un poquito más con la personalización de roundcube. Buscando he llegado a este hilo del foro de roundcube. Decían de modificar el fichero styles.less y compilar los css (¿mande?)

Os lo cuento:

Para cambiar el color del botón de login he tenido que modificar el fichero skins/elastic/styles/styles.less y añadir lo siguiente

#login-form button.mainaction {
  background-color: #8a77b0;
  border-color: #123456;

  &:hover {
    background-color: #123456;
  }
}

Para cambiar el color global, por defecto azul claro, el otro fichero que es necesario modificar es skins/elastic/styles/colors.less y definir en @color-main el color que nos interese, en mi caso:

@color-main:                #8a77b0;

A continuación, para generar el css es necesario instalar el paquete “node-less”:

# apt -y install node-less

Y finalmente ejecutar lo siguiente para aplicar los cambios en los ficheros .less

lessc styles.less styles.min.css

Y ahora ya tienes el roundcube con el color que se adecue a tu empresa o la de tu cliente :)…

Upgrade modoboa 1.14 a 1.17 + roundcube webmail

En la de hoy nos encontramos con un servidor de correo instalado con modoboa versión 1.14 que queremos actualizar a una versión mas nueva, en este caso la 1.17. Aprovecharemos también para actualizar la versión de roundcube 1.4 RC1 a la versión 1.4.11.

Como todo tiene sus puñetitas en la informática, nos encontramos con que la migración de modoboa 1.14 a la 1.17 implica cambiar la versión de python2 a python3 y usar el instalador para hacer el upgrade es lio asegurado. Así que vamos a ver como hacer la migración pasito a pasito y de forma humanamente viable! :D

Para alegrarte un poco el día, comentar que es posible hacer tranquilamente la instalación del nuevo entorno con una IP distinta a la definitiva. Es decir, si voy a usar mail.lamardebits.org no es necesario que el entorno que estamos montando tenga la IP que apunta a mail.lamardebits.org. Así que es posible dejarlo todo listo sin tocar el entorno que está en producción. Cuando queramos hacer el cambio, simplemente será apagar la máquina con la versión vieja de modoboa, cambiar la IP en el entorno nuevo y levantarlo!

Así que empezamos y como de costumbre hago la instalación sobre una debian 10 virtualizada con LXC y con el nesting activado. Además le pongo ya el mountpoint sobre el cephfs a /srv/vmail

Una vez arrancada la maquina, lo básico y recomendable, configurar y actualizar el sistema

root@mail:~# dpkg-reconfigure locales && dpkg-reconfigure tzdata && apt update && apt -y upgrade && apt -y