Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

44
Linux 1 Linux Modulo 3. Aplicaciones de Redes Relator : JCNET

Transcript of Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

Page 1: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

Linux 1

Linux

Modulo 3. Aplicaciones de Redes

Relator : JCNET

Page 2: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

2© 2007 Linux. Todos los derechos reservados.

Unidad 10 – Aplicaciones de Redes

Introducción a las redes TCP/IP

Impresión Linux

Administración de archivos de impresión

Sinopsis del correo electrónico

Aplicaciones de diagnósticos de red

Terminal de red y clientes FTP

Comandos remotos de shell

Page 3: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

3© 2007 Linux. Todos los derechos reservados.

Conceptos Claves La mayoría de los servicios de redes de Linux están diseñados en torno a una relación de cliente servidor.

Las aplicaciones de servidor de red generalmente están diseñadas para permanecer "siempre en ejecución" iniciándose automáticamente cuando el sistema arranca y apagándose solamente cuando el sistema lo hace. Por lo general, sólo el usuario root puede administrar procesos del servidor.

Las aplicaciones de cliente de red suelen ejecutarse únicamente cuando están en uso y las puede iniciar cualquier usuario.

La mayoría de los servidores de red Linux y clientes se comunican mediante el protocoloTCP/IP.

La dirección TCP/IP tanto del proceso del cliente como del proceso del servidor consta de una dirección IP y de un puerto.

Los servidores de red suelen utilizar puertos asignados denominados puertos "bien conocidos“ como se catalogan en el archivo /etc/services. Los clientes de red suelen utilizar puertos privilegiados de modo aleatorio. A menudo, los puertos bien conocidos residen en el rango de puertos privilegiados por debajo del puerto número 1024.

El comando hostname puede utilizarse para examinar la dirección IP actual de la máquina, mientras que el comando netstat -tuna se puede utilizar para examinar todos los puertos abiertos.

Introducción a las redes TCP/IP

Page 4: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

4© 2007 Linux. Todos los derechos reservados.

Clientes, servidores y protocolo TCP/IP

La mayoría de las aplicaciones de redes actuales están diseñadas en torno a la relación cliente-servidor.

–El cliente de red suele ser una aplicación que actúa en nombre de una persona que está tratando de realizar alguna tarea en particular tal como navegar en una URL.

–El servidor de red suele ser una aplicación que ofrece servicios, tales como entregar el contenido de las páginas web.

Todo proceso que participa en una conversación Cliente-Servidor debe tener una Dirección IP.

Page 5: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

5© 2007 Linux. Todos los derechos reservados.

Direcciones TCP/IP Los computadores en una red se identifican con una

dirección IP.

Los procesos en computadores se identifican con un número de puerto.

El protocolo TCP/IP permite dos procesos, para localizarse entre sí, cada uno se identifica con una dirección IP y un número de puerto.

La dirección IP sirve para localizar la máquina– Esta es la "parte del protocolo IP"

El número de puerto se utiliza para localizar el proceso correcto en la máquina

– Esta es la parte "TCP ".

Page 6: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

6© 2007 Linux. Todos los derechos reservados.

Sockets En el protocolo TCP/IP, un socket se define como la

combinación de una dirección IP y el número de puerto del servidor y cliente.

Page 7: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

7© 2007 Linux. Todos los derechos reservados.

Determinar los servicios actuales de red TCP/IP

hostname sin argumentos, muestra el nombre del equipo de la máquina actual.[elvis@station elvis]$ hostname

station.example.com

Hostname con la opción -i, la dirección IP de la máquina se visualiza en su lugar.[elvis@station elvis]$ hostname -i

172.16.62.9

netstat El comando netstat sirve para ver una variedad de información de redes incluyendo los puertos abiertos.

Page 8: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

8© 2007 Linux. Todos los derechos reservados.

Salida de comando netstat

Page 9: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

9© 2007 Linux. Todos los derechos reservados.

Sockets de escucha Los sockets de escucha son conexiones pertenecientes a un

servidor antes de que los clientes se presenten.

–Servidor Web httpd está escuchando activamente conexiones de clientes.

- Escuchando conexiones, para dirección de loopback. Deben pertenecer a servicios que esperan recibir conexiones desde otros procesos en la máquina local pero no desde la red.

– Determine los servicios

Page 10: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

10© 2007 Linux. Todos los derechos reservados.

Sockets Establecidos Sockets establecidos tienen tanto un proceso de cliente y

servidor con un proceso de comunicación establecidos

–Esta línea refleja una conexión establecida entre dos procesos ambos en la máquina local. El primero está conectado al puerto 32769 y el segundo al puerto 631. Algunos procesos en la máquina local deben estar comunicándose con el demonio cupsd.

–Una conexión establecida entre lo que aparentemente es un cliente en nuestra máquina local, conectado al servicio enlazado al puerto 22 en nuestra máquina remota.

Page 11: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

11© 2007 Linux. Todos los derechos reservados.

Impresión Linux Conceptos clave

Linux de Red Hat Enterprise utiliza el sistema de impresión CUPS para administrar impresoras.

El sistema de impresión CUPS está diseñado en torno al concepto de cola de impresión, el cual combina un directorio de almacenamiento temporal, un filtro y un dispositivo de impresión.

Los comandos gnome-print-manager y lpstat pueden utilizarse para navegar colas de impresión disponibles.

Los comandos lpr, lpq y lprm se utilizan para someter ("solicitar") trabajos de impresión, averiguar por trabajos importantes y quitar trabajos de impresión pendientes, respectivamente.

Todos examinarán la variable de entorno PRINTER para determinar la cola de impresión por defecto.

Los comandos lp y cancel se comportan de un modo similar a los comandos lpr ylprm.

Muchas aplicaciones imprimen por entubamiento a stdin de una línea de comando personalizable lpr.

Page 12: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

12© 2007 Linux. Todos los derechos reservados.

Sistema de Impresión común de Unix(CUPS)

Los usuarios someten las solicitudes de impresión a las colas de impresión que son manejadas por el demonio cupsd.

El demonio cupsd utiliza el Protocolo de Impresión de Internet (IPP), el cual es una extensión directa del protocolo HTTP,

Page 13: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

13© 2007 Linux. Todos los derechos reservados.

Colas de Impresión Una cola de Impresión es una combinación de los siguientes elementos:

–Un directorio de almacenamiento temporal donde se pueden almacenar los trabajos pendientes.

–Una serie de filtros que transforman archivos de entrada en formatos apropiados para cualquier dispositivo secundario conectado a la cola.

–Un dispositivo secundario, tal como una impresora conectada localmente o una cola de impresión definida en una máquina remota. A continuación, se listan algunos de los dispositivos secundarios admitidos por CUPS.

• Impresoras de puerto paralelo conectadas localmente

• Impresoras localmente conectadas através de un USB

• Impresoras de red utilizando la interfaz LPD

• Impresoras de red utilizando interfaz de JetDirect

• Colas de impresión IPP en máquinas remotas

• Colas de impresión LPD en máquinas remotas

• Servicios de impresión de red (Microsoft) SMB

Page 14: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

14© 2007 Linux. Todos los derechos reservados.

Navegar las colas de impresión disponibles: gnome-print-manager y lpstat

En el entorno gráfico, gnome-print-manager puede utilizarse para identificar las colas de impresión y controlar los trabajos de impresión sometidos a ellas.

El comando lpstat se puede utilizar para escanear las colas de impresión disponibles desde la línea de comando.

Page 15: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

15© 2007 Linux. Todos los derechos reservados.

Someter y administrar trabajos: lpr, lpq y lprm CUPS utiliza los comandos de UNIX tradicionales para

interactuar con el sistema de impresión:

–lpr somete archivos e información que van a imprimirse

–lpq examina el estatus de trabajos de impresión importantes

–lprm quita trabajos de impresión pendientes en la cola.

Page 16: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

16© 2007 Linux. Todos los derechos reservados.

Administración de archivos de impresión

Conceptos clave El formato de impresión primario en Linux es PostScript.

gs y ggv ven con anticipación los documentos PostScript.

enscript convierte archivo de texto en PostScript decorado.

ps2pdf y pdf2ps convierten de PostScript a PDF y viceversa.

mpage pueden reordenar las páginas individuales de un documento PostScript.

Page 17: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

17© 2007 Linux. Todos los derechos reservados.

PostScript

PostScript es un lenguaje de descripción de páginas (PDL), el cual se ha adaptado a la tarea de traducir gráficas en la página impresa.

Ghostscript o simplemente gs ejecuta un intérprete PostScript.

Cuando se invoca como el comando gs, el intérprete Ghostscript puede utilizarse para traducir archivos PostScript directamente en la pantalla.

El comando enscript convierte archivos de texto en PostScript

Page 18: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

18© 2007 Linux. Todos los derechos reservados.

Ver gráficas PostScript con Ghostview La aplicación Ghostview de GNOME, ggv, la cual ofrece un

aplicación más fácil de usar.

Page 19: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

19© 2007 Linux. Todos los derechos reservados.

Ver documentos PDF con xpdf La aplicación xpdf es un simple visor de documentos PDF que sirve

para ver, imprimir o convertir documentos PDF en PostScript.

Page 20: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

20© 2007 Linux. Todos los derechos reservados.

Conversión de documentos PDF

Linea de comando para convertir de PostScript a PDF: ps2dpf

El comando pdf2ps también existe para realizar la operación inversa.

Page 21: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

21© 2007 Linux. Todos los derechos reservados.

Sinopsis del correo electrónico Conceptos clave

La administración del correo electrónico implica dos agentes. Un agente de usuario de correo (MUA, en inglés Mail User Agent), el cual se utiliza para presentar correo recién enviado a un usuario y escribir nuevas respuestas al usuario y un agente de transporte de correo (MTA, en inglés Mail Transport Agent), el cual administra la tarea de segundo plano de intercambiar correo electrónico con otras máquinas remotas.

Dependiendo de los detalles de acceso a Internet de un computador, el trabajo de recepción de correo electrónico se puede delegar a un servidor de buzón, lo que permitiría luego que el usuario tuviera acceso a su correo electrónico enviado mediante los protocolos POP o IMAP.

De nuevo dependiendo de los detalles de acceso a Internet de un computador, la tarea de entregar correo electrónico se puede delegar a un servidor remoto saliente SMTP.

Por lo general, el correo local entregado pero no leído se almacena temporalmente en el archivo /var/spool/mail/$USER, en donde USER es el nombre de usuario del destinatario.

Uno de los MUA más sencillos es el comando mail.

Page 22: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

22© 2007 Linux. Todos los derechos reservados.

Correo

La solución de correo implica dos aplicaciones separadas cuyos roles se identifican por acrónimos de tres letras:

La MTA, o Mail Transport Agent (Agente de transporte de correo)

–El MTA recibe correo electrónico para ser envíado desde programas en la máquina local, determina desde la dirección del destinatario la máquina apropiada que debe contactar e intenta conectarse a una MTA.

–El MTA por defecto de Red Hat Enterprise Linux es un demonio llamado sendmail.

The MUA, or Mail User Agent (Agente de usuario de correo)

–El MUA recupera correo enviado desde un almacenamiento temporal (buzón de entrada) y lo presenta al usuario como "correo nuevo".

Page 23: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

23© 2007 Linux. Todos los derechos reservados.

Servidores de Buzón (Mailbox Servers) Solución para usuarios sobre una conexión de "marcado" o de

"alta velocidad" desde un ISP, o usuarios que usan máquinas detrás de un cortafuegos de una institución

Accesar al correo configurado en su "inbox" sobre pop.isp.net. Este acceso suele estar provisto en forma de un servidor POP (Protocolo de servidor de correo) o servidor de IMAP (Protocolo de Servicio de Correo por Internet).

Page 24: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

24© 2007 Linux. Todos los derechos reservados.

Entrega Local Linux (y Unix) también permite a los usuarios en una máquina

local enviar correo electrónico entre sí.

El MUA más sencillo es un comando llamado simplemente mail.

Page 25: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

25© 2007 Linux. Todos los derechos reservados.

Aplicaciones de diagnósticos de red

Conceptos clave– /sbin/ifconfig presenta la configuración IP local.

– ping confirma la conectividad de red de bajo nivel entre hosts.

– host hace solicitudes directas de DNS.

– El comando netstat -tuna lista los servicios actuales activos de red y conexiones.

– /sbin/traceroute puede diagnosticar problemas de enrutado.

Page 26: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

26© 2007 Linux. Todos los derechos reservados.

Configuración requerida para el protocolo de internet Dirección IP

– Una dirección ip la cual sirve como la identidad de la interfaz.

Default Gateway

–Con el fin de comunicarse con un equipo en otra subred, los datos deben pasarse a un router, el cual (con la ayuda de otros routers) encamina la información a la subred apropiada y desde allí al host apropiado.

–El router utilizado para encaminar paquetes fuera de su subred local se conoce como un default gateway.

Nameserver

– Los servidores DNS (comúnmente llamados servidores de nombre), pueden servir tanto de base de datos para asignar un nombre a direcciones locales IP como también de punto de partida para determinar direcciones IP para nombres de dominio de los cuales el servidor no tiene conocimento directo.

Page 27: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

27© 2007 Linux. Todos los derechos reservados.

Determinar tu(s) dirección(es) IP: /sbin/ifconfig

El comando ifconfig muestra la configuración de todas las interfaces de red activas.

Los usuarios estándar pueden usar el comando para ver información de configuración de interfaz, utilizando una referencia absoluta.

Page 28: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

28© 2007 Linux. Todos los derechos reservados.

Determinando tu Default Gateway El comando route se puede utilizar para ver el cuadro

de enrutamiento del sistema.

1. Aquí, blondie determina que su máquina está utilizando el host 192.168.0.254 como su gateway predeterminado.

2. La bandera "G" indica que esta línea se utiliza para definir una gateway, no una subred local.

Page 29: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

29© 2007 Linux. Todos los derechos reservados.

Configuración Estatica DNS

El primer recurso es un archivo de texto sencillo llamado archivo /etc/hosts.

Aunque sólo root puede editar el archivo cualquier usuario puede observarlo.

Page 30: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

30© 2007 Linux. Todos los derechos reservados.

Configuración dinamica DNS Cuando el /etc/hosts local no puede dar respuesta, la biblioteca resolv consulta un servidor de nombres.

Para determinar qué máquina consultar que esté ejecutando un servidor de nombres, examina el archivo de configuración de la biblioteca de resolv, /etc/resolv.conf.

Cualquier equipo que esté ejecutando el servidor de nombres y le permita solicitarlo, puede usarse como servidor de nombres.

1. El host 192.168.0.254 está actuando como el servidor de nombre primario.

2. El host 207.175.42.153 está actuando como el servidor de nombres secundario.

Page 31: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

31© 2007 Linux. Todos los derechos reservados.

Examen de routing: /usr/sbin/traceroute

La ruta del paquete, cuando pasa de router a router puede trazarse con el comando /usr/sbin/traceroute.

Si su paquete no puede completar el primer salto, es probable que su gateway por defecto de su máquina no haya sido determinada correctamente.

Page 32: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

32© 2007 Linux. Todos los derechos reservados.

Realización de solicitudes DNS de modo manual: host

El comando host se puede utilizar para realizar directamente solicitudes DNS.

Si la opción -a se incluye, el comando host presenta información detallada de la solicitud realizada y la respuesta recibida en el formato de "registro de recursos".

Page 33: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

33© 2007 Linux. Todos los derechos reservados.

Terminal de red y clientes FTP

Conceptos clave–El cliente HTTP de terminal Elinks, invocado como el comando links se puede utilizar para navegar páginas web desde un entorno gráfico.

– La aplicación curl es una aplicación de protocolo múltiple no interactivo (incluyendo HTTP, HTTPS y FTP) que sirve para transferir archivos en modo de lote.

– La aplicación wget es una aplicación de protocolo múltiple no interactiva (incluyendo HTTP, HTTPS y FTP) que sirve para transferir de modo recursivo páginas web, buscando en todas las páginas las referencias de página web.

Page 34: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

34© 2007 Linux. Todos los derechos reservados.

¿Por qué terminales basadas en clientes? La razón obvia: si no está ejecutando en un entorno gráfico X,

estas son las únicas utilidades disponibles.

Las utilidades se pueden escribir en scripts. Si tiene que extraer información de forma repetitiva del mismo sitio, debería considerar un script para que haga el trabajo repetitivo por usted.

Las utilidades de la línea de comandos requieren menos recursos. Si está tratando de descargar un archivo largo en otras máquinas ocupadas, un proceso curl es mucho más atractivo que un proceso mozilla, porque el primero consume 4 megabytes mientras que el segundo consume 40 megabytes de memoria.

La simplicidad tiende a motivar la estabilidad. Cuando se descargan archivos grandes, como por ejemplo, imágenes ISO de 700 megabytes, muchas de las aplicaciones pueden volverse inestables. Los clientes de línea de comandos como curl tienden a generar resultados más estables.

Page 35: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

35© 2007 Linux. Todos los derechos reservados.

Inicio curl

Cuando se llame con una URL como su argumento, el comando curl recupera y descarga su contenido en la salida estándar.

Page 36: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

36© 2007 Linux. Todos los derechos reservados.

Inicio de wget Descarga recursos de modo recursivo, en ambiente no interactivo de los protocolos

HTTP, HTTPS y FTP.

Cuando se llama con una URL como su argumento, el comando wget recupera el contenido de la URL y lo almacena en un archivo local en el directorio actual de trabajo del mismo nombre.

Page 37: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

37© 2007 Linux. Todos los derechos reservados.

Comandos remotos de shell Conceptos clave

Las aplicaciones remotas de shell le permiten a los usuarios ejecutar comandos arbitrarios en máquinas remotas y tener salida estándar retornada de manera local. De modo alterno, se puede iniciar una shell interactiva.

La aplicación Secure Shell ofrece una shell remota, donde todas las transacciones son encriptadas y los usuarios pueden autenticarse mediante contraseñas tradicionales o esquemas de autenticación de clave pública.

Para utilizar los esquemas de claves de autenticación pública, debe generarse un par de claves pública-privada con el comando ssh-keygen.

Debido a que los servidores de Secure Shell tienen sus propios servidores de pares de claves pública-privada, los servidores pueden autenticarse para los clientes como también los clientes se pueden autenticarse para los servidores.

Page 38: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

38© 2007 Linux. Todos los derechos reservados.

Shells Remoto Si una máquina remota esta ejecutando el rsh server,

los usuarios pueden utilizar la línea de comandos rsh para invocar una shell remota.

Page 39: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

39© 2007 Linux. Todos los derechos reservados.

Autentificación de Rhosts: ~/.rhosts

Antes de poder acceder a su cuenta remota mediante rsh, necesitó configurar la cuenta para que le permitiera acceder desde su máquina local.

Page 40: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

40© 2007 Linux. Todos los derechos reservados.

El Shell Seguro El método de autenticación rhost no es lo mas seguro. En esencia, depende del DNS (Servidor de

Nombres de Dominio) para autenticar un usuario.

Con el fin de explotar la configuración ~/.rhosts de elvis, cualquiera podria separar la estación host real desde la red y traer otra máquina configurada con la dirección IP de la estación.

Además, rsh es un protocolo de texto sin formato.

La Shell segura se desarrolló para abordar estos dos defectos del comando rsh y agregar nuevas capacidades

Aparte de la autenticación tradicional, la aplicación Shell segura puede utilizar una clave criptográfica para autenticar usuarios.

Page 41: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

41© 2007 Linux. Todos los derechos reservados.

Generación de un par de clave pública-privada: ssh-keygen Al utilizar ssh se puede generar un par de clave pública-privada con

el comando ssh-keygen.

La shell segura puede utilizar diferentes algoritmos esenciales de encriptación.

En este caso se utiliza el algoritmo RSA, el cual se especifica con -t rsa.

Page 42: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

42© 2007 Linux. Todos los derechos reservados.

Generación de un par de clave pública-privada: ssh-keygen

El usuario tiene dos nuevos archivos en su directorio ~/.ssh. El primero contiene su clave privada, la cual no la comparte con nadie.

Page 43: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

43© 2007 Linux. Todos los derechos reservados.

Autenticación de clave pública shell segura La aplicación Shell segura puede utilizar una clave

criptográfica para autenticar usuarios.

El acceso de SSH a una cuenta se otorga obteniendo una copia de clave pública de la persona a quien se va a otorgar acceso y almacenándola en el archivo ~/.ssh/authorized_keys de la cuenta.

Page 44: Linux1 Modulo 3. Aplicaciones de Redes Relator : JCNET.

44© 2007 Linux. Todos los derechos reservados.