Hogar Mapa Indice Busqueda Noticias Arca Enlaces Sobre LF
[Top bar]
[Bottom bar]
Este documento está disponible en los siguientes idiomas: English  Castellano  Deutsch  Francais  Nederlands  Portugues  Russian  Turkce  

convert to palmConvert to GutenPalm
or to PalmDoc

[Photo of the Author]
por Guido Socher

Sobre el autor:

Guido utiliza UUCP desde hace varios años y cree que ésta es la mejor opción para conectar el sistema de correo de su ordenador a Internet.


Contenidos:

E-mail sobre UUCP: La solución profesional para usuarios de modems

[uucp]

Resumen:

UUCP es uno de los protocolos más antiguos de Internet. Ahora casi siempre se reemplaza por protocolos más modernos, pero sigue siendo una de las mejores soluciones para enviar y recibir correos electrónicos por la línea telefónica. Desgraciadamente, la mayoría de los que se conectan a Internet desde su casa mediante un enlace telefónico no es consciente del gran potencial de UUCP y no demandan este servicio. Como consecuencia son muy pocos los ISP (Internet Service Providers, Proveedores de Servicios de Internet) que proveen este servicio hoy en día.



 

Introducción

UUCP es uno de los protocolos más viejos y originalmente se utilizaba para copiar todo tipo de archivos entre sistemas Unix. De aquí su nombre: "Unix to Unix Copy". Estas primeras máquinas no estaban conectadas permanentemente mediante una red. En vez de esto se utilizaban conexiones por módem para intercambiar datos a intervalos de tiempo regulares.

Para copiar el archivo misnotas.txt a un sistema remoto llamado "marte" se podría usar el comando:

uucp misnotas.txt marte!~/misnotas.txt
Esto de momento sólo copia los datos a un "directorio de spool" (N.T. los directorios de spool son directorios especiales donde se almacenan los archivos de forma protegida, de forma que no se puedan usar directamente por los usuarios. Se suelen localizar en /var/spool), y más tarde cuando se realiza la conexión los ficheros se copian físicamente.

Actualmente esta forma de utilizar UUCP prácticamente no se utiliza. Hay ahora disponibles protocolos más modernos como TCP/IP o scp para copiar ficheros entre sistemas de computadores.

UUCP puede hacer mucho más que esto. Permite ejecutar un número limitado de comandos de forma remota. Para lanzar el comando "rnews" en el sistema remoto "marte" teclearíamos
cat algundato.txt | uux - marte!rnews
De nuevo, el comando rnews no se ejecutaría inmediatamente en el sitio remoto, sino sólo después de que se estableciera la conexión con "marte". El comando se "aparcaría" en el directorio de spool local.

¿Qué tiene todo esto que ver con el correo electrónico?
Normalmente el correo electrónico es una aplicación donde no hay ningún problema si el envío de los datos se retrasa un poco. Habitualmente usted abre su programa de correo, escribe p.ej. algunos mensajes de respuesta a sus amigos y los "envía" desconectado. De todas formas no quiere tener todas las ventanas de respuesta de su programa de correo abiertas al mismo tiempo hasta que se conecte a su ISP. Quiere "enviar" el correo y cerrar estas ventanas. Si se realmente se envía de forma inmediata no es importante aquí; no importa que se envíe más tarde.

Precisamente este el tipo de aplicación que se puede implementar de forma fiable y sencilla con UUCP.  

Su propio sistema de correo

UUCP es flexible. Puede configurarlo de forma que tenga su propio servidor de correo para toda una red de ordenadores. Su máquina Linux puede ser el servidor central de correo para todo tipo de ordenadores y sistemas operativos en su LAN (Local Area Network, red de área local).
[A private
mail system connected via dialup]


Configurar así un servidor de correo puede ser conveniente para una familia y tener un costo muy eficiente para una pequeña empresa. Puede proveer cuentas de correo a cualquier número de usuarios necesitando tan sólo una conexión vía módem a su ISP. Una empresa posiblemente establecerá esa conexión periódicamente (p.ej. cada hora) y los usuarios se conectarían p.ej. en el caso de necesitarlo por otras razones.

Concluyendo: el correo eléctronico con UUCP no es algo viejo y polvoriento. Es una aplicación útil, rentable y elegante de UUCP.  

¿Cómo funciona?

Usando UUCP obtendrá de su ISP su propio Dominio MX (MX=Mail Exchanger, es la parte del nombre de dominio en su dirección de correo). Por ejemplo, si la página principal de su ISP es www.mi-isp.com entonces podría dar a Joe Miller el dominio miller.mi-isp.com. Todos los correos para este dominio se enviarán al servidor de correo de Joe Miller con UUCP. Joe puede entonces configurar cierto número de usuarios: joe@miller.mi-isp.com, diana@miller.mi-isp.com, frank@miller.mi-isp.com ...según quiera Joe. Como con Linux tiene un servidor de correo libre que además puede trabajar con diferentes protocolos como pop, imap, nfs o directamente un buzón de correo sobre el sistema de ficheros ... etc no existen restricciones sobre el tipo de sistemas operativos o clientes de correo que los usuarios utilicen para acceder a su correo.

UUCP como tal es un protocolo autónomo y usted puede correrlo directamente en el nivel hardware (por ejemplo, la línea de módem sin ningún protocolo ppp) no obstante puede correrlo también sobre TCP/IP y esto le ofrece nuevas posibilidades:

Puede tener un ISP dedicado en cualquier parte del mundo con una buena red principal (por ejemplo, en Ámsterdam) y usted se conecta a Internet mediante cualquier ISP usando conexiones locales baratas. Como UUCP corre por encima de TCP/IP la localización física de su ISP E-mail/UUCP no tiene mayor importancia. Es accesible desde cualquier lugar en el mundo a través de Internet.  

Instalación

La mayoría de las distribuciones de Linux tienen un paquete llamado uucp, que suele contener Tailer UUCP. Si no está disponible en ninguno de sus CDs lo puede obtener en:
www.airs.com/ian

Aparte del paquete UUCP necesita también un sistema de correo que pueda manejar UUCP. En este artículo describiré Sendmail pero casi todos los otros sistemas también soportan UUCP. Un sistema de correo que pueda manejar UUCP tendrá un comando llamado rmail en el paquete rpm o deb.

El correo se envía a su sistema mediante un comando de ejecución remota, similar al ejemplo uux/rnews anterior. rmail es el comando que recibe el correo por la "tubería" (pipe) UUCP y lo mete en su sistema de correo.

Su ISP necesitará la siguiente información para configurar la cuenta:
Los datos que usted necesita de su ISP:  

Probando la cuenta paso a paso

UUCP sobre TCP/IP usa el puerto TCP 540, lo que le permite probar de forma sencilla su cuenta antes de ir a la configuración de su sistema UUCP. De esta forma puede estar seguro de que su ISP no comete errores y de que usted tiene bien los identificadores y las contraseñas. Ejecute el comando:
telnet uucp.mi-isp.com 540
Obtendrá algo así:
Trying 1.2.3.42...
Connected to uucp.mi-isp.com
Escape character is '^]'.
login:
Introduzca nombre de acceso y contraseña:
Trying 1.2.3.42...
Connected to uucp.mi-isp.com
Escape character is '^]'.
login: linux
Password: tux.1234
Shere=mfic
Después de un acceso satisfactorio el otro lado responde con "Shere" que significa "System Here" (Aquí el Sistema...) seguido del nombre del sistema remoto (verifíquelo con los datos de su ISP).
Para cerrar la conexión use crtl-] y entonces teclee "q" en el prompt del telnet:
^]
telnet> q
Connection closed.
Ahora sabe que su cuenta está configurada correctamente.  

Configurando su sistema UUCP

Para recibir (y enviar) correo vía UUCP necesita configurar apropiadamente los archivos de configuración de UUCP. Estos archivos habitualmente están en /etc/uucp. Necesitará crear/editar los siguientes ficheros: Todos los ficheros tienen que tener como propietario uucp y como grupo uucp. El fichero call no debe ser de lectura para todo el mundo (chmod 640 call). Los ficheros de log se suelen encontrar en /var/log/uucp/ y /var/spool/uucp/ debe contener un directorio con el nombre del sistema remoto. Asegúrese de que ambos son de escritura para el usuario uucp.

call
# fichero call
# El formato es simplemente nombre-del-sistema-remoto nombre-de-acceso contraseña
mfic linux tux.1234

port
# fichero port
# No necesita modificar nada aquí
type tcp
port tcp
service 540

sys
# fichero sys
# provee información sobre el sistema remoto
# nombre del sistema de su ISP:
system mfic
# el servidor de su ISP:
address uucp.mi-isp.com
# no cambie las siguientes 3 líneas, vea la documentación de Tailer UUCP
# para más detalles
time Any 2
port tcp
chat-timeout 60
# commandos autorizados:
commands rmail
# tomar el nombre de acceso y la contraseña del archivo call:
call-login *
call-password *
# no cambie la siguiente línea:
chat ogin: \L assword: \P
#

config
# El fichero config define las rutas
# de otros ficheros y directorios así como el
# nombre de su sistema.
# El nombre de su sistema:
nodename oblelix
# número máximo de peticiones de otros sistemas a ejecutar en paralelo:
max-uuxqts 2
# El directorio de spool de UUCP
spool /var/spool/uucp
# Normalmente los demás campos se dejan como vienen
# por defecto:
# pubdir /var/spool/uucppublic
# logfile /var/log/uucp/Log
# statfile /var/log/uucp/Stats
# debugfile /var/log/uucp/Debug
# callfile /etc/uucp/call
# ....

Tras guardar los ficheros de configuración ejecute el comando "uuchk". Seguramente esté en sbin: /usr/sbin/uuchk

La salida es un resumen de su configuración incluyendo algunos valores por defecto que usted no ha configurado. El nombre de host de su servidor ISP, uucp.mi-isp.com en nuestro ejemplo, aparece como "phone number" (número telefónico):

Phone number uucp.mi-isp.com
Esto es algo extraño, pero es correcto para UUCP sobre TCP/IP. Compruebe sobre todo que todos los directorios, ficheros de log, ficheros de depuración etc apuntan al lugar correcto y pertenecen al usuario uuucp.

Ahora usted debería ser capaz de recibir correo vía UUCP pero su agente de correo local (MTA=mail transport agent agente de transporte de correo) todavía necesita conocer que está autorizado para manejar correo para el dominio registrado con su ISP. En nuestro caso este dominio es miller.mi-isp.com. La configuración de este dominio depende de nuestro MTA. En sendmail necesita escribir miller.mi-isp.com en una única línea en el fichero /etc/sendmail.cw:

# sendmail.cw define los dominios para los que manejamos correo
miller.mi-isp.com
Ahora estamos preparados para probar a recibir correos vía UUCP. El envío de correos no funcionará aún, porque sendmail no está todavía completamente configurado
Ejecute
/usr/sbin/uucico -x 11 -S mfic
mfic es el nombre del sistema UUCP de mi-isp.com.

Abra una segunda ventana de terminal y observe el resultado con "tail -f /var/log/uucp/Debug".
El "-x 11" especifica el nivel de depuración más alto y sólo debe usarse durante las pruebas. Verá todos los detalles del protocolo UUCP. Compruebe que no existe ningún error. Si obtiene al final algo como
uucico mfic - (2001-06-22 20:20:57.73 1020) Call complete (31 seconds 42835 bytes 1381 bps)
entonces todo funciona bien. ¡Enhorabuena!

Ejecute el comando "uulog". Imprimirá un pequeño resumen de los correos recibidos vía UUCP/rmail.

 

Configurando sendmail para enviar correos vía UUCP

Sendmail utiliza un sistema de configuración basado en el pre-procesador m4. Otros sistemas de correo como postfix tienen ficheros de configuración más legibles y se pueden editar directamente. Yo uso sendmail y por lo tanto voy a describir aquí mis experiencias con sendmail. Usted está invitado a añadir información sobre distintos MTAs en la página de talback que se encuentra al final del artículo. He visto que postfix sólo requiere que se edite transport/transport.db y hace falta una definición para uucp en master.cf, aparentemente esto es todo, pero yo no tengo mucha experiencia con postfix.

El sistema de configuración m4 podría no estar incluido en el mismo paquete que sendmail. Verifique los CDs de su distribución, porque podría necesitar instalar un paquete llamado algo así como "sendmail-cf".

Cree un nuevo fichero sendmail-uucp.mc en el directorio cf de sendmail (posiblemente /usr/lib/sendmail-cf/cf):

#divert(-1)
# `Esta es la configuración para enviar correo vía uucp usando /usr/bin/uux
#
# para generar un  sendmail.cf fuera de este fichero .mc use las fuentes de sendmail
# y ejecute m4 estefichero.mc > sendmail.cf.'
divert(0)
include(`../m4/cf.m4')
VERSIONID(`UUCP, Jan 28 2001, without DNS')
undefine(`BITNET_RELAY')
undefine(`DECNET_RELAY')
undefine(`UUCP_RELAY')
OSTYPE(`linux')
MASQUERADE_AS(miller.my-friendly-isp.com)
MASQUERADE_DOMAIN(localdomain)
MASQUERADE_DOMAIN(localhost)
# ` añada aquí cualesquiera nombres de host locales:'
MASQUERADE_DOMAIN(philosophus)
# ` necesario si usa un dominio interno que no existe: '
FEATURE(`masquerade_envelope')
FEATURE(always_add_domain)
# ` dominios a los que se permite leer del fichero cw: '
FEATURE(use_cw_file)
FEATURE(local_procmail)
# `importante para uucp:'
FEATURE(accept_unresolvable_domains)dnl
# `la entrada /etc/passwd: mail:*:8:12:mail:/var/spool/mail:'
define(`confDEF_USER_ID',``8:12'')
define(`confSAFE_QUEUE',`True')
define(`confDELIVERY_MODE',`background')dnl
# 'cambie mfic por el nombre de sistema UUCP de su ISP:'
define(`SMART_HOST',uucp-uudom:mfic)dnl
define(`confSERVICE_SWITCH_FILE',/etc/service.switch)dnl
define(`confHOSTS_FILE',/etc/hosts)dnl
define(`UUCP_MAILER_MAX',1024000)dnl
MAILER(procmail)dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(uucp)dnl
Adapte el fichero a su situación y compílelo con:
m4 sendmail-uucp.mc > sendmail.cf
Copie el archivo sendmail.cf a /etc y reinicie sendmail con
/etc/rc.d/init.d/sendmail restart
La ruta anterior del script init es para redhat/mandrake. Cambia para Suse, Debian etc...

En el archivo /etc/service.switch añada:
hosts   files
aliases files
Ahora envíe un correo a alguien. Puede hacerlo desde su aplicación de correo favorita o directamente desde línea de comandos con:
echo "hola john, haciendo una prueba..." | Mail john@somewhere.org
Este correo no se enviará directamente. En vez de ello se quedará encolado en el sistema UUCP. Puede verlo haciendo:
uustat -a
uustat imprimirá:
mfic.CRJjd4uAAAPs mfic joe 07-24 20:19 Executing rmail john@somewhere.org
(sending 50 bytes)
Después ejecute
/usr/sbin/uucico -x 11 -S mfic
mfic es de nuevo el nombre del sistema UUCP de mi-isp.com Ahora puede mirar el fichero de depuración y observar cómo se envía el correo.  

Todo automático

Cree el siguiente script /usr/bin/uumail:
#!/bin/sh
hostn=uucp.mi-isp.com
# primero comprueba que el servidor de mi ISP está accesible.
# Esto necesita un versión reciente de ping donde pueda
# especificar el tiempo de espera:
if ping -w 3 -qn -c 1 $hostn > /dev/null ; then
  /usr/sbin/uucico -S mfic
  #sleep 1
  #uulog -s mfic -5
else
  echo "ERROR: $hostn está caído"
  exit 1
fi
Haga el script ejecutable con "chmod 755 /usr/bin/uumail" y ejecútelo manualmente para ver si funciona.

Para intercambiar correos de forma automática cada vez que se conecte sólo tiene que añadir la línea /usr/bin/uumail a /etc/ppp/ip-up.

Ok, eso es todo. Su sistema de correo está funcionando.  

Cosas a hacer

El sistema de correo está completamente configurado. Todos los usuarios (/etc/passwd, comando adduser) podrán enviar y recibir correo de forma automática. El correo se almacenará en los directorios de spool tradicionales en /var/spool/mail y se pueden leer de forma local. Si quiere que el usuario pueda leer el correo mediante los protocolos pop3 o imap debe instalar un paquete que normalmente se llama "imap" y provee los demonios /usr/sbin/imapd y /usr/sbin/ipop3d
Para iniciarlos basta descomentar las siguientes líneas en /etc/inetd.conf:
pop-3   stream  tcp     nowait  root    /usr/sbin/tcpd  ipop3d
imap    stream  tcp     nowait  root    /usr/sbin/tcpd  imapd
Si tiene xinetd necesitará crear un fichero de configuración apropiado para este servicio (puede ver el artículo 175 de LinuxFocus que trata sobre este tema). Recuerde también autorizar el acceso a los usuarios que envían correo desde otro host a su red local en el fichero /etc/hosts.allow:
# hosts.allow , fichero de configuración  de tcp wrapper
# cualquiera puede acceder a imap:
imapd: ALL
# pop3 sólo se permite desde 2 hosts:
ipop3d: 10.0.0.1, 10.0.0.2, 127.0.0.1
 

Encontrando un ISP

Encontrar un Servidor de Acceso a Internet bueno y fiable para UUCP no siempre es fácil, especialmente desde que la mayoría de los ISPs están dirigidos a D. NiIdeaWindowsPreinstalado.

Conozco dos ISPs bastante buendos en Alemania que ofrecen correo electrónico sobre UUCP:

Los dos son organizaciones y básicamente hay que unirse a la organización para utilizar el servicio. Las tarifas están entre los 11 y 20 euros por mes

En LinuxFocus.org también podemos proveer correo sobre UUCP a un número limitado de amigos seguidores de Linux, si usted se une a nuestra organización y nos ayuda financiándonos y/o trabajando con nosotros regularmente podría recibir este servicio. Contacte conmigo si está interesado

Una buena forma de encontrar un ISP conveniente en su país puede ser simplemente buscándolo en Google o en cualquier otro motor de búsqueda. Cuanto más pequeño sea el ISP más servicios ofrecerá a sus clientes, y posiblemente correo electrónico sobre UUCP.

 

Referencias

 

Formulario de "talkback" para este artículo

Cada artículo tiene su propia página de "talkback". A través de esa página puedes enviar un comentario o consultar los comentarios de otros lectores
 Ir a la página de "talkback" 

Contactar con el equipo de LinuFocus
© Guido Socher, FDL
LinuxFocus.org

Pinchar aquí para informar de algún problema o enviar comentarios a LinuxFocus
Información sobre la traducción:
en -> -- Guido Socher
en -> es Roberto Hernando Velasco

2001-10-02, generated by lfparser version 2.9