Capítulo 6. Aplicaciones de red

Tabla de contenidos

6.1. Navegadores web
6.1.1. Configuración del navegador
6.2. El sistema de correo
6.2.1. Fundamentos de correo
6.2.2. Modern mail service limitation
6.2.3. Historic mail service expectation
6.2.4. Agente de transporte de correo (Mail transport agent, MTA)
6.2.4.1. Configuración de exim4
6.2.4.2. Configuración de postfix con SASL
6.2.4.3. La configuración de la dirección de correo
6.2.4.4. Operaciones fundamentales MTA
6.3. Servidor de acceso remoto (SSH) y utilidades
6.3.1. Fundamentos de SSH
6.3.2. User name on the remote host
6.3.3. Conectarse sin contraseñas del equipo remoto
6.3.4. Tratando con clientes SSH extraños
6.3.5. Configuración ssh-agent
6.3.6. Sending a mail from a remote host
6.3.7. Puerto de reenvio para túnel SMTP/POP3
6.3.8. Apagar un sistemas remoto utilizando SSH
6.3.9. Resolución de problemas de SSH
6.4. Servidor de impresión y utilidades
6.5. Servidores de aplicaciones en otras redes
6.6. Otros clientes de aplicaciones de red
6.7. Diagnóstico de los demonios del sistema

Puede ejecutar varias aplicaciones de red una vez establecida la conectividad de red (consulte Capítulo 5, Configuración de red).

[Sugerencia] Sugerencia

Puede leer una guía concreta y moderna sobre la infraestrucura de red de Debian en El Manual de Administración de Debian — Infraestructura de red.

[Sugerencia] Sugerencia

If you enabled "2-Step Verification" with some ISP, you need to obtain an application password to access POP and SMTP services from your program. You may need to approve your host IP in advance.

Existen muchos paquetes de navegadores web para acceder al contenido remoto por medio del Protocolo de Transferencia de Hipertexto (Hypertext Transfer Protocol) (HTTP).


En algunos navegadores puede usar una URL determinada para realizar su configuración.

  • «about:»

  • «about:config»

  • «about:plugins»

Debian en su área «main« ofrece diferentes «plugin« enpaquetados libres que se encargan no solo de ofrecer Java (software platform) y Flash si no también los archivos del tipo MPEG, MPEG2, MPEG4, DivX, Windows Media Video (.wmv), QuickTime (.mov), MP3 (.mp3), Ogg/Vorbis, DVDs, VCDs, etc. Debian también se encarga de ofrecer programas de ayuda para la instalación de paquetes plugins de las áreas «contrib« y «non-free«.


[Sugerencia] Sugerencia

Aunque el uso de paquetes Debian es mucho más sencillo, los plugin del navegador aun pueden activarse mediante la instalaciñon de «*.so« en el directorio de «plugins« (p. ej. «/usr/lib/iceweasel/plugins/») y reiniciar el navegador.

Algunos sitios web no permiten la conexión para determinados valores del agente de usuario (user-agent) de su navegador. Se puede evitar este hecho mediante la suplantación de la cadena del agente de usuario. Por ejemplo, puede hacerlo añadiendo la siguiente línea en los archivos de configuración del usuario como «~/.gnome2/epiphany/mozilla/epiphany/user.js» o «~/.mozilla/firefox/*.default/user.js».

user_pref{"general.useragent.override","Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"};

También puede aladir y reinciar esta variable escribiendo «about:config» en la URL y pulsando el botón derecho del ratón para mostrar su contenido.

[Atención] Atención

La suplantación de la cadena del agente de usuario puede causar efectos colaterales con Java.

This section focuses on typical mobile workstations on consumer grade Internet connections.

[Atención] Atención

Si quiere tener un servidor de correo en Internet, debería leer la siguiente información básica al respecto.

Un mensaje de correo electrónico consta de tres componentes, el sobre del mensaje, la cabecera del mensaje y el cuerpo del mensaje.

  • SMTP utiliza la información del sobre de «destino (To)« y «origen(From)« para entregar el correo electrónico. (La información del «origen(From)« también se denomina como dirección de retorno (bounce address), Origen_, etc.).

  • La información de la cabecera sobre el «origen(From)« y el «destine(To)« es la que muestra por parte del cliente de correo. (Generalmente será la misma que conste en el sobre del mensaje, pero no siempre es el caso.)

  • The email message format covering header and body data is extended by Multipurpose Internet Mail Extensions (MIME) from the plain ASCII text to other character encodings, as well as attachments of audio, video, images, and application programs.

Full featured GUI based email clients offer all the following functions using the GUI based intuitive configuration.

  • It creates and interprets the message header and body data using Multipurpose Internet Mail Extensions (MIME) to deal the content data type and encoding.

  • It authenticates itself to the ISP's SMTP and IMAP servers using the legacy basic access authentication or modern OAuth 2.0. (For OAuth 2.0, set it via Desktop environment settings. E.g., "Settings" -> "Online Accounts".)

  • It sends the message to the ISP's smarthost SMTP server listening to the message submission port (587).

  • It receives the stored message on the ISP's server from the TLS/IMAP4 port (993).

  • It can filter mails by their attributes.

  • It may offer additional functionalities: Contacts, Calendar, Tasks, Memos.


In principle, mobile workstations should function without the /usr/sbin/sendmail command provided by the mail transfer agent (MTA) program.

The Debian system usually installs MTA to cope with Sección 6.2.2, “Modern mail service limitation” and Sección 6.2.3, “Historic mail service expectation” even if mobile workstations installed full featured GUI based email clients.

For mobile workstations, the typical choice of MTA is either exim4-daemon-light or postfix with its installation option such as "Mail sent by smarthost; received via SMTP or fetchmail" selected. These are light weight MTAs that respect "/etc/aliases".

[Sugerencia] Sugerencia

Configuring exim4 to send the Internet mail via multiple corresponding smarthosts for multiple source email addresses is non-trivial. If you need such capability for some programs, set them up to use msmtp which is easy to set up for multiple source email addresses. Then leave main MTA only for a single email address.


Para configurar el correo de Internet por medio de un equipo inteligente, (re)configure el paquete exim4-* como se muetra a continuación.

$ sudo systemctl stop exim4
$ sudo dpkg-reconfigure exim4-config

En «Tipo general de configuración de correo« seleccione «correo enviado por equipo inteligente; recibido por SMTP o fetchmail«.

Asigne a «Nombre del sistema de correo:« a su valor por defecto como FQDN (consulte Sección 5.1.1, “La resolución del nombre del equipo”).

Asigne «Direcciones IP escuchan en las conexiones SMTP de entrada:« a sus valores por defecto como «127.0.0.1 ; ::1«.

Borre el contenido de «Otros destinos desde los cuales se acepta correo:«.

Borre el contenido de «Máquinas para el reenvio de correo:«.

Asigne «Direcciones de IP o nombre de equipos para correo inteligente de salida:« a «smtp.hostname.dom:587«.

Select "No" for "Hide local mail name in outgoing mail?". (Use "/etc/email-addresses" as in Sección 6.2.4.3, “La configuración de la dirección de correo”, instead.)

Conteste a «Mantener el número de peticiones DNS a mínimo (Marcado bajo demanda) como sigue.

  • «No« si el sistema esta conectado a Internet en el arranque.

  • «Sí» si el sistema no esta conectado a Internet en el arranque.

Asigne «Método de entrega para correo local:« a «mbox format in /var/mail«.

Select "Yes" for "Split configuration into small files?:".

Crear las entradas de contraseñas para el equipo inteligente editando «/etc/exim4/passwd.client».

$ sudo vim /etc/exim4/passwd.client
 ...
$ cat /etc/exim4/passwd.client
^smtp.*\.hostname\.dom:username@hostname.dom:password

Configure exim4(8) with "QUEUERUNNER='queueonly'", "QUEUERUNNER='nodaemon'", etc. in "/etc/default/exim4" to minimize system resource usages. (optional)

Inicie exim4 como se muestra.

$ sudo systemctl start exim4

El nombre del equipo en «/etc/exim4/passwd.client» no debería ser un alias. Compruebe el nombre real del equipo como sigue.

$ host smtp.hostname.dom
smtp.hostname.dom is an alias for smtp99.hostname.dom.
smtp99.hostname.dom has address 123.234.123.89

Yo utilizo las expresiones regulares en «/etc/exim4/passwd.client» para trabajar sobre el tema de los alias. SMTP AUTH probablemente funciones incluso si el ISP redirige el equipo señalado por medio de alias.

Puede actualiza su confiugración de exim4 de forma manual como sigue:

  • Actualice los archivos de configuración de exim4 en «/etc/exim4/».

    • Creando «/etc/exim4/exim4.conf.localmacros» para asignar MACROS y editando «/etc/exim4/exim4.conf.template». (no dividir la configuración)

    • creando nuevos archivos y editando los existente en los subdirectorios en «/etc/exim4/exim4.conf.d». (dividir la configuración)

  • Run "systemctl reload exim4".

[Atención] Atención

Iniciar exim4 tarda mucho tiempo si (valor por defecto) «No« fue elegido a la pregunta de denconf «Mantener el número de preguntas DNS al mínimo (Marcar bajo demanda)?« y el sistema no esta conectado a Intenet cuando se inicia.

Por favor, lea la guía oficial en: «/usr/share/doc/exim4-base/README.Debian.gz» y update-exim4.conf(8).

[Aviso] Aviso

For all practical consideration, use SMTP with STARTTLS on port 587 or SMTPS SSL (SMTPS) on port 465, instead of plain SMTP on port 25.

Para el correo de Internet por medio de un equipo inteligente, podría leer primero postfix documentation y las páginas de manual importantes.


(Re)configure los paquetes postfix y sasl2-bin según se explica a continuación.

$ sudo systemctl stop postfix
$ sudo dpkg-reconfigure postfix

Elija «Internet con equipo inteligente«.

Asigne «equipo de reenvio SMTP (el blanco para no elegir ninguno):« a «[smtp.hostname.dom]:587» y configúrelo según sigue.

$ sudo postconf -e 'smtp_sender_dependent_authentication = yes'
$ sudo postconf -e 'smtp_sasl_auth_enable = yes'
$ sudo postconf -e 'smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd'
$ sudo postconf -e 'smtp_sasl_type = cyrus'
$ sudo vim /etc/postfix/sasl_passwd

Cree las entradas de las contraseñas para el equipo inteligente.

$ cat /etc/postfix/sasl_passwd
[smtp.hostname.dom]:587     username:password
$ sudo postmap hush:/etc/postfix/sasl_passwd

Inicie postfix con lo siguiente.

$ sudo systemctl start postfix

Aquí la utilización de «[» y «]» en el diálogo dpkg-reconfigure y «/etc/postfix/sasl_passwd» asegura que no se marque la entrada MX pero que se utilice directamente el nombre del equipo especificado. Consulte «Enabling SASL authentication in the Postfix SMTP client« en «/usr/share/doc/postfix/html/SASL_README.html».

Existen algunos archivos de configuraciñon de la dirección de correo para el transporte de correo, su entrega y los agentes de usuario.


El nombre del correo en el archivo «/etc/mailname» normalmente es un nombre de dominio totalmente cualificado (FQDN) que corresponderá a una dirección IP del equipo. Para un equipo ubicuo la cual no tiene un nombre asociado a una dirección IP, asigne este nombre de correo al valor de «hostname -f». (Esta es una elección segura que funciona tanto con exim4-* como con postfix.)

[Sugerencia] Sugerencia

El contenido de «/etc/mailname» se usa por muchos programas que no son MTA para determinar su comportamiento por defecto. En mutt, se asignan las variables «hostname» y «from» en el archivo ~/muttrc y sobreescribe el valor de mailname. Para los programas en el paquete devscripts, como bts(1) y dch(1), exporta las variables de entorno «$DEBFULLNAME» y «$DEBEMAIL» para sobreescribirlo.

[Sugerencia] Sugerencia

El paquete popularity-contest de forma habitual envia el correo desde la cuenta de superusuario con FQDN. Necesita asignar MAILFROM en /etc/popularity-contest.conf como se describe en el archivo /usr/share/popularity-contest/default.conf. De otra forma, su correo será rechazado por el servidor SMTP del equipo inteligente. Aunque es aburrido, esta aproximación es más segura que reescribir la dirección remitente de todos los correos por el MTA y podría ser usado por otros demonios y archivos de órdenes cron.

Cuando se asigna mailname a «hostname -f», la simulación de la dirección de correo remitente por medio de MTA puede ser realizado por lo siguiente.

  • El archivo «/etc/email-addresses» para exim4(8) se explica en exim4-config_files(5)

  • El archivo «/etc/postfix/generic» para postfix(1) se explica en el general(5)

Los siguientes pasos añadidos son necesarios para postfix.

# postmap hash:/etc/postfix/generic
# postconf -e 'smtp_generic_maps = hash:/etc/postfix/generic'
# postfix reload

Puede probar la configuarción de la dirección de correo usando lo siguiente.

  • exim(8) con las opciones -brw, -bf, -bF, -bV, …

  • postmap(1) con la opción -q.

[Sugerencia] Sugerencia

Exim proporciona varias herramientas como exiqgrep(8) y exipick(8). Consulte «dpkg -L exim4-base|grep man8/» para las órdenes disponibles.

Secure SHell (SSH) es la manera segura de conectarse a través de Internet. Una versión libre de SSH es OpenSSH y esta disponible en Debian mediante los paquetes openssh-client y openssh-server.

Para el usuario, ssh(1) funciona de una forma más inteligente y segura que telnet(1). No como la orden telnet, la orden ssh no para con el carácter de escape telnet (inicio por defecto CTRL-]).


Although shellinabox is not a SSH program, it is listed here as an interesting alternative for the remote terminal access.

See also Sección 7.8, “X server connection” for connecting to remote X client programs.

[Atención] Atención

Consulte Sección 4.6.3, “Medidas extraordinarias de seguridad en Internet” si su SSH es accesible desde Internet.

[Sugerencia] Sugerencia

Por favor utilice el programa screen(1) para permitir que los procesos del intérprete de órdenes remotos sobrevivan a las caidas de la conexión (consulte Sección 9.1.2, “El programa screen”).

The OpenSSH SSH daemon supports SSH protocol 2 only.

Please read "/usr/share/doc/openssh-client/README.Debian.gz", ssh(1), sshd(8), ssh-agent(1), and ssh-keygen(1), ssh-add(1) and ssh-agent(1).

[Aviso] Aviso

«/etc/ssh/sshd_no_debe_ser_ejecutado» no debe estar presente si se quiere ejecutar el servidor OpenSSH.

Don't enable rhost based authentication (HostbasedAuthentication in /etc/ssh/sshd_config).


Lo siguiente inicia una conexión ssh(1) desde el cliente.


Se necesita proteger el proceso que ejecuta «shutdown -h now» (consulte Sección 1.1.8, “Cómo apagar el sistema”) de la finalización de ssh utilizando la orden at(1) (consulte Sección 9.4.13, “Planificación una vez de las tareas”) como se muestra.

# echo "shutdown -h now" | at now

Otra forma de obtener el mismo resultado es ejecutar «shutdown -h now» en una sesión de screen(1) (consulte Sección 9.1.2, “El programa screen”).

In the old Unix-like system, the BSD Line printer daemon (lpd) was the standard and the standard print out format of the classic free software was PostScript (PS). Some filter system was used along with Ghostscript to enable printing to the non-PostScript printer. See Sección 11.4.1, “Ghostscript”.

In the modern Debian system, the Common UNIX Printing System (CUPS) is the de facto standard and the standard print out format of the modern free software is Portable Document Format (PDF).

The CUPS uses Internet Printing Protocol (IPP). The IPP is now supported by other OSs such as Windows XP and Mac OS X and has became new cross-platform de facto standard for remote printing with bi-directional communication capability.

Gracias a la funcionalidad de autoconversión dependiente del formato del archivo del sistema CUPS, simplemente ofrecer cualquier dato a la orden lpr debería generar la salida de impresión esperada. (En CUPS, lpr se puede activar mediante la instalación del paquete cups-bsd).

El sistema Debian tiene paquetes importantes de utilidades y servidores de impresión.


[Sugerencia] Sugerencia

Puede configurar su sistema CUPS accediendo mediante su navegador a «http://localhost:631/« .

Aquí hay otros servidores de aplicaciones de red.


El Protocolo de Sistema de Archivo Común de Internet (Common Internet File System Protocol, CIFS) es el mismo protocolo que Servidor de Mensajes de Bloque (Server Message Block, SMB) y se utiliza de forma generalizada en Microsoft Windows.

[Sugerencia] Sugerencia

Consulte Sección 4.5.2, “La actual gestión centralizada de sistemas” para la integración de los servidores de sistema.

[Sugerencia] Sugerencia

La resolución del nombre del equipo normalmente se realiza por medio del servidor de DNS. Para las direcciones IP del equipo asignadas de forma dinámica por DHCP, un DNS Dinámico puede ser configurado para la resolución de nombres utilizando bind9 y isc-dhcp-server como se describe en lapágina wiki de Debian sobre DDNS.

[Sugerencia] Sugerencia

La utilización de un servidor proxy como squid es muy eficiente para ahorrar ancho de banda ya que utiliza un servidor espejo local con todo el contenido del archivo Debian.

Aquí están otro clientes de aplicaciones de red.


El programa telnet permite la conexión manual a los demonios del sistema para evaluarlos.

Para probar un servicio POP3 sencillo, intente lo siguiente

$ telnet mail.ispname.net pop3

Para la prueba del servicio POP3 con TLS/SSL activado por parte de algún ISP, necesitará activar TLS/SSL en el cliente de telnet mediante los paquetes telnet-ssl o openssl.

$ telnet -z ssl pop.gmail.com 995
$ openssl s_client -connect pop.gmail.com:995

Los siguientes RFCs aportan el conocimiento necesario sobre cada uno de los demonios del sistema.


La utilización de los puertos esta recogida en «/etc/services».