mutt es un cliente de correo que soporta muchos formatos de almacenamiento de emails como mbox, Maildir, o MH. Además de esto, mutt es capaz de conectarse a servidores POP3 e IMAP4. En esta guía trataré el soporte de IMAP en mutt.
Lo primero de todo es instalar mutt. Dado que es posible que tengais diferentes distribuciones intentaré tratar las más posible:
Gentoo Linux
Código:
Debian GNU/Linux[shell]# emerge mutt
Código:
RedHat[shell]# apt-get install mutt
Buscamos en http://rpmfind.net el paquete: http://rpmfind.net/linux/rpm2html/se...m=redhat&arch=
Personalmente recomiendo usar la versión 1.4 de mutt. La bajamos y la instalamos:
Código:
FreeBSD[shell]# rpm -ivh mutt-1.4-4.i386.rpm
Código:
Una vez hemos instalado mutt llega la parte de personalización de mutt. Aquí haremos que mutt maneje dos cuentas IMAP y sea capaz de trabajar con GnuPG.[shell]# cd /usr/ports/mail/mutt [shell]# make install
Lo primero es setear la variable MAIL. En bash haremos lo siguiente:
Código:
Ahora vamos a crear el directorio ~/.mutt en el que guardaremos los alias, el mailcap y los certificados.[shell]$ echo "export MAIL=imap://usuario@host1/" >> ~/.bash_profile [shell]$ source ~/.bash_profile
Código:
Una vez tenemos eso crearemos el ~/.muttrc. Este fichero (en mi caso) es algo grande, así que iré poniéndolo por partes para poder ir explicándolo. Abrimos nuestro editor favorito (vim en mi caso) y creamos el archivo en cuestión:[shell]$ mkdir ~/.mutt
Código:
Lo primero será poner las opciones generales. Solo añadir que el delimitador de comentarios es #:[shell]$ vim ~/.muttrc
Código:
No hay mucho que comentar ahí.... realmente el from no es muy importante si pretendemos utilizar más de una cuenta IMAP. Ahora revisaremos cosas como la firma, la libreta de direcciones y el editor a usar en los mails:## # General ## # set hostname = tu-host.org set from = "Fernando J. Pereda <[email protected]>"
Código:
Aquí hay alguna cosa más que comentar. El fichero ~/.mutt/signature contiene simple texto que será añadido al final de nuestros mensajes. El fichero ~/.mutt/aliases contiene nuestra lilibreta de direcciones, es posible editarlas a mano, pero mutt nos permitirá ir añadiendolas desde su interfaz. Ahora ajustaremos un fichero para que mutt guarde allí los certificados SSL de los servidores IMAP (solo si existe la posiblidad de conectar por SSL al servidor):## # Firma ## # set signature = ~/.mutt/signature ## # Libreta de direcciones ## # set alias_file = ~/.mutt/aliases source ~/.mutt/aliases ## # Editor ## # set editor = vim
Código:
Bien, ahora añadiremos los comandos que mutt utilizará para encriptar, firmar, desencriptar, comprobar, etc etc ficheros con GnuPG:## # Certificados SSL ## # set certificate_file = ~/.mutt/certificados
Código:
Hay sustituiremos MICLAVE por nuestra clave de GnuPG.## # GnuPG ## # set pgp_decode_command="gpg %?p?--passphrase-fd 0? --no-verbose \ --batch --output - %f" set pgp_verify_command="gpg --no-verbose \ --batch --output - --verify %s %f" set pgp_decrypt_command="gpg --passphrase-fd 0 --no-verbose \ --batch --output - %f" set pgp_sign_command="gpg --no-verbose \ --batch --output - --passphrase-fd 0 --armor --detach-sign --textmode %?a?-u %a? %f" set pgp_clearsign_command="gpg --no-verbose \ --batch --output - --passphrase-fd 0 --armor --textmode --clearsign %?a?-u %a? %f" set pgp_encrypt_only_command="gpg --batch --quiet --no-verbose \ --output - --encrypt --textmode --armor --always-trust \ --encrypt-to 0xMICLAVE -- -r %r -- %f" set pgp_encrypt_sign_command="gpg --passphrase-fd 0 --batch --quiet --no-verbose \ --textmode --output - --encrypt --sign %?a?-u %a? --armor \ --always-trust --encrypt-to 0xMICLAVE -- -r %r -- %f" set pgp_import_command="gpg --no-verbose \ --import -v %f" set pgp_export_command="gpg --no-verbose \ --export --armor %r" set pgp_verify_key_command="gpg --no-verbose \ --batch --fingerprint --check-sigs %r" set pgp_list_pubring_command="gpg --no-verbose \ --batch --with-colons --list-keys %r" set pgp_list_secring_command="gpg --no-verbose \ --batch --with-colons --list-secret-keys %r" set pgp_autosign=yes set pgp_sign_as=0xMICLAVE set pgp_replyencrypt=yes set pgp_timeout=1800 set pgp_good_sign="^gpg: Firma correcta" set pgp_verify_sig=yes
Ahora ajustaremos la ruta al fichero mailcap, fichero que configuraremos más tarde:
Código:
Ahora haremos que solo se muestren algunas cabeceras en lugar de todo lo que muestra mutt por defecto:## # Mailcap ## # set mailcap_path = ~/.mutt/mailcap
Código:
Ahora haremos la configuración propia de IMAP:## # Cabeceras ## # ignore * unignore from: reply-to mail-followup-to to cc bcc subject date x-mailer user-agent
Código:
Ahí lo que hacemos es configurar para cada cuenta las variables que difieren entre unas y otras. Y con mailboxes le decimos a mutt que combruebe correo en las dos carpetas.## # IMAP ## # set folder = "imap://[email protected]" set imap_pass = "mi_password" set timeout = 10 set record = imap://[email protected]/INBOX.Sent folder-hook . 'unset from; unset imap_pass;' folder-hook imap://[email protected] 'set imap_pass=mi_pass; set from="Fernando J. Pereda <[email protected]>"; set sort=date' folder-hook imap://[email protected] 'set imap_pass=el_otro_pass; set from="Fer nando J. Pereda <[email protected]>"; set sort=date' ## # Carpetas ## # mailboxes = imap://[email protected]/ imap://[email protected]/
Yo soy muy dado a pulsar la tecla 'q' (por alguna extraña razón ;)) así que lo que hice fue cambiar algunas de las funciones que hacen las teclas en mutt:
Código:
Con esto hago que la 'x' no haga nada (normalmente sale de mutt !!) y cambio la 'q' por 'Q' que ya hay que pulsarlo a conciencia ;)## # Teclas ## # bind index x noop bind index q noop bind index Q quit
Por ahora guardaremos el ~/.muttrc aunque no hemos acabado con él. Ahora vamos a evitar instalar en nuestro PC un MTA grande como qmail, postfix o sendmail, así que instalaremos un jake-MTA, es decir se encarga de pasárselo directamente a otro servidor SMTP más grande (el de nuestro ISP ;)):
Gentoo Linux
Código:
Debian GNU/Linux[shell]# emerge ssmtp
Código:
RedHat[shell]# apt-get install ssmtp
Buscamos el paquete y lo instalamos como hicimos con mutt.
FreeBSD
Código:
Ahora editamos el fichero /etc/ssmtp/ssmtp.conf, yo tuve que añadir lo siguiente:[shell]# cd /usr/ports/mail/ssmtp [shell]# make install
Código:
Ahora volvemos a nuestro preciado ~/.muttrc y añadimos:mailhub=tu-host.org rewriteDomain=tu-host.org hostname=_HOSTNAME_ FromLineOverride=YES
Código:
Mutt tiene soporte para listas de correo... es una discusión muy típica el que si los mensajes han de ir al que los escribió o directamente a la lista de correo. Aquí no discutiremos eso, solo decir que mutt permite las dos cosas:## # SMTP ## # set sendmail = /usr/sbin/ssmtp
Código:
Esto nos permitirá que pulsando 'L' contestemos a la lista y no al que escribió el mensaje. (que cada uno ponga sus listas ;))## # Listas de correo ## # list [email protected] [email protected] subscribe [email protected] [email protected]
Ya estamos "casi" terminando. Ahora configuraremos un programa que hará que nuestros mails queden más bonitos al imprimirlos ;)
Gentoo Linux
Código:
Debian GNU/Linux[shell]# emerge muttprint
Código:
RedHat[shell]# apt-get install muttprint
Aquí teneis el paquete: http://muttprint.sourceforge.net/download.shtml
FreeBSD
Código:
Copiamos el /usr/share/doc/muttprint/sample-muttprintrc-es en ~/.muttprintrc y lo editamos si es necesario. Ahora volvemos a nuestro ~/.muttrc y añadimos:[shell]# cd /usr/ports/mail/muttprint [shell]# make install
Código:
## # Impresión ## # set print_command = "muttprint"