Foros del Web » Administración de Sistemas » Unix / Linux »

El 'geek', IMAP, y su Mutt.

Estas en el tema de El 'geek', IMAP, y su Mutt. en el foro de Unix / Linux en Foros del Web. En esta guía voy a explicar un poco el uso del cliente de correo mutt con el protocolo IMAP. mutt es un cliente de correo ...
  #1 (permalink)  
Antiguo 23/02/2003, 06:36
Avatar de Ferdy
Colaborador
 
Fecha de Ingreso: junio-2001
Ubicación: España
Mensajes: 1.430
Antigüedad: 22 años, 10 meses
Puntos: 0
El 'geek', IMAP, y su Mutt.

En esta guía voy a explicar un poco el uso del cliente de correo mutt con el protocolo IMAP.

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:
[shell]# emerge mutt
Debian GNU/Linux
Código:
[shell]# apt-get install mutt
RedHat
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:
[shell]# rpm -ivh mutt-1.4-4.i386.rpm
FreeBSD
Código:
[shell]# cd /usr/ports/mail/mutt
[shell]# make install
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.

Lo primero es setear la variable MAIL. En bash haremos lo siguiente:
Código:
[shell]$ echo "export MAIL=imap://usuario@host1/" >> ~/.bash_profile
[shell]$ source ~/.bash_profile
Ahora vamos a crear el directorio ~/.mutt en el que guardaremos los alias, el mailcap y los certificados.
Código:
[shell]$ mkdir ~/.mutt
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:
Código:
[shell]$ vim ~/.muttrc
Lo primero será poner las opciones generales. Solo añadir que el delimitador de comentarios es #:
Código:
##
# General
##
#
set hostname = tu-host.org
set from = "Fernando J. Pereda <[email protected]>"
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:
Código:
##
# Firma
##
#
set signature = ~/.mutt/signature

##
# Libreta de direcciones
##
#
set alias_file = ~/.mutt/aliases
source ~/.mutt/aliases

##
# Editor
##
#
set editor = vim
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):
Código:
##
# Certificados SSL
##
#
set certificate_file = ~/.mutt/certificados
Bien, ahora añadiremos los comandos que mutt utilizará para encriptar, firmar, desencriptar, comprobar, etc etc ficheros con GnuPG:
Código:
##
# 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
Hay sustituiremos MICLAVE por nuestra clave de GnuPG.

Ahora ajustaremos la ruta al fichero mailcap, fichero que configuraremos más tarde:
Código:
##
# Mailcap
##
#
set mailcap_path = ~/.mutt/mailcap
Ahora haremos que solo se muestren algunas cabeceras en lugar de todo lo que muestra mutt por defecto:
Código:
##
# Cabeceras
##
#
ignore *
unignore from: reply-to mail-followup-to to cc bcc subject date x-mailer user-agent
Ahora haremos la configuración propia de IMAP:
Código:
##
# 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]/
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.

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:
##
# Teclas
##
#
bind index x noop
bind index q noop
bind index Q quit
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 ;)

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:
[shell]# emerge ssmtp
Debian GNU/Linux
Código:
[shell]# apt-get install ssmtp
RedHat
Buscamos el paquete y lo instalamos como hicimos con mutt.

FreeBSD
Código:
[shell]# cd /usr/ports/mail/ssmtp
[shell]# make install
Ahora editamos el fichero /etc/ssmtp/ssmtp.conf, yo tuve que añadir lo siguiente:
Código:
mailhub=tu-host.org
rewriteDomain=tu-host.org
hostname=_HOSTNAME_
FromLineOverride=YES
Ahora volvemos a nuestro preciado ~/.muttrc y añadimos:
Código:
##
# SMTP
##
#
set sendmail = /usr/sbin/ssmtp
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:
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 ;))

Ya estamos "casi" terminando. Ahora configuraremos un programa que hará que nuestros mails queden más bonitos al imprimirlos ;)

Gentoo Linux
Código:
[shell]# emerge muttprint
Debian GNU/Linux
Código:
[shell]# apt-get install muttprint
RedHat
Aquí teneis el paquete: http://muttprint.sourceforge.net/download.shtml

FreeBSD
Código:
[shell]# cd /usr/ports/mail/muttprint
[shell]# make install
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:
Código:
##
# Impresión
##
#
set print_command = "muttprint"

Última edición por Ferdy; 23/02/2003 a las 06:51
  #2 (permalink)  
Antiguo 23/02/2003, 06:36
Avatar de Ferdy
Colaborador
 
Fecha de Ingreso: junio-2001
Ubicación: España
Mensajes: 1.430
Antigüedad: 22 años, 10 meses
Puntos: 0
Por último voy a poner mi configuración de colores..... que cada uno ponga los que le gusten.

Código:
##
# Colores
##
#
# [generic]
color normal     white          black
color error      red            white
color message    blue           white
color search     red            white
color indicator  brightyellow   brightred
color status     white          blue

# [index]
color index      magenta        black   "~A"            # all
color index      yellow         black   "~l"            # lists
color index      green          black   "~p"            # to me
color index      red            black   "~P"            # by me
color index      blue           black   "~D"            # deleted
color index      white          black   "~T"            # tagged
color tree       white          black

# [pager]
color hdrdefault cyan           blue
color header     brightgreen    blue    "^from: "
color header     green          blue    "^date: "
color header     brightyellow   blue    "^subject: "
color body       red            black   "(((ht|f)tp)|news|telnet|finger|mailto):(//)?
[^ \)>\"\t\r\n]+"
color body       red            black   "(www|ftp)\\.[-a-z0-9\\.]+"
color body       red            black   "[-a-z_0-9.%$]+@[-a-z_0-9.]+\\.[-a-z][-a-z]+"
color body       brightwhite    black   "(^|[[:space:]])_[[:alpha:]]+_([[:space:]]|$)
"
color body       brightwhite    black   "(^|[[:space:]])\\*[[:alpha:]]+\\*([[:space:]
]|$)"
color bold       brightyellow   black
color underline  brightcyan     black
color markers    brightred      black
color quoted     cyan           black
color quoted1    green          black
color attachment magenta        black 
color signature  red            black
color tilde      blue           black
Espero que disfruteis de este cliente de correo ;) y que esta guía os haya servido para usarlo. En mutt siempre podeis pulsar '?' para obtener ayuda sobre las teclas y funciones disponibles.

Como última cosa voy a proponeros el paquete gotmail para pasar el correo de una cuenta de hotmail a otra cuenta cualquiera de forma que no dependemos de conectarnos a esos servidores btrrrrrrr jeje ;)

Un Saludo y espero vuestros comentarios ;)
__________________
Born to be free
Por una sociedad del conocimiento libre
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:47.