6- Comandos Basicos de Red

  • ping
  • finger
  • telnet
  • ssh
  • Clientes FTP
  • email
  • lynx
  • wget
  • traceroute
  • Hablando con otras Personas
  • Resumen

    Introducción

    Los comandos de red son realmente importantes, ya que estos permiten el acceso a otra computadora de una red. Esta red puede ser una casera o la red del trabajo, pero también una red tan amplia como la gigantesca internet. Esto significa que los comandos que verémos a continuación los utilizamos cuando nuestra computadora sea parte de una red con salida a internet o una intranet.

    Para establecer una comunicación entre computadoras que son parte de una red disponemos de una gran variedad de programas. Algunos de estos programas son usados por los servicios más conocidos como el correo y la web que nos sirven para permitir la comunicación entre las diferentes personas que usan estos servicios. También hay otros que realizan tareas de diagnóstico para ver que todo esté funcionando correctamente.


    ping

    Ping usa el protocolo ICMP  enviando un paquete de petición de respuesta ( ECHO_REQUEST ) y solicitando un paquete de tipo ICMP como respuesta ( ECHO_RESPONSE) de un host o gateway ( puerta de enlace como lo denomina el monopolista Bill Gates).
    Para hacer un ping la sintaxis es la siguiente:

    $ ping <IP_o_Hostname>

    Este comando nos es de gran ayuda a la hora de montar una red, ya que así sabremos si tenemos problemas con la conexión entre una máquina y otra. Si deceas saber más sobre este comando puedes ver las páginas del manual de ping(1).


    finger

    Este nos mostrará información sobre un usuario específico. Si sintáxis es realmente sencilla y además tiene varias opciones. Por ejemplo, si deceamos saber información sobre el usuario slackware simplemente tecleamos el comando seguido del nombre del usuario y nos mostrará la información respectiva como se muestra más abajo:

    $ finger slackware
    Login: slackware                          Name: slackware
    Directory: /home/slackware                Shell: /bin/bash
    Office: 1121212, 232-3245               Home Phone: 546-7321
    On since Fri May 16 14:03 (CLT) on tty1   33 minutes 40 seconds idle
    No mail.
    No Plan.

    Como vemos, aquí nos muestra una gran cantidad de informacióin sobre el usuario slackware como: login, nombre, directorio HOME, la shell, si este tiene mails,  el contenido del archivo  .plan de su directorio Home,  número de officina y de la casa. Algunos de estos datos pueden configurarse con el comando chfn(1). Recuerda que esta información es guardada en el archivo /etc/passwd

    Como la gran mayoría d elos comandos, finger tiene una gran cantidad de opciones que pueden ser utilizadas, para esto simplemente debemos dar una miradita a las páginas del manual.


    telnet

    El comando telnet(1) es usado para comunicarnos con otro host usando el protocolo TELNET. Si el comando telnet es ejecutado sin un host como argumento, este entrará en un modo comando, indicado en el prompt como " telnet> ". En este modo telnet acepta y ejecuta una gran variedad de comandos, los cuales son listados en las páginas de su manual. Si este es invocado con argumentos ( osea con un host predefinido nos establece una conexión inmediata con la otra máquina mediante login y password. Un gran detalle sobre este comando es que no encripta la información que es enviada, lo que significa que todo se envía en texto plano, incluso las contraseñas. Un ejemplo de esto sería:

    $ telnet localhost                     -----------------> localhost es nuestra ip local que en el común de los casos será 127.0.0.1
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.

    darkstar login: slackware          -----------------> Nombre del usuario con el que hacemos login en la otra máquina
    Password:                                 -----------------> Password del usuario

    Como vemos aquí se está realizando una conexion telnet con argumentos hacia nuestro host local ( localhost o 127.0.0.1 ). Una de las cosas interesante que logramos mediante un conexión telnet a través de un terminal en X como por ejemplo xterm es la ejecución de programas X en la computadora con la que establecimos una comunicación remota y mostrar la salida de este comando o en este caso la interfáz del programa en nuestra máquina. Para una explicación más detallada de esto puedes ver la sección "Exportando llamadas" en el capítulo 6 o puedes consultar las páginas del manual.


    ssh

    Una gran alternativa al comando telnet(1) es ssh ( secure shell ). Este nos proporciona las mismas satisfacciones que telnet, pero con un grado mucho mayor de seguridad, ya que todo la información enviada y recivida a través de este programa se encuentra encriptada permitiendonos así trabajar de forma más tranquila sabiendo que nuestros datos se encuentran "seguros". La sintáxis para este comando sería el comando más la opción "-l" ( que nos permite indicar el usuario con el que haremos login en la máquina) seguida finalmente del host. Por ejemplo :

    # ssh -l slackware localhost                                                                      --------> Aquí indicamos el usuario ( slackware) y el host ( lcoalhost).
    The authenticity of host 'localhost (127.0.0.1)' can't be established.       
    RSA key fingerprint is de:2c:e2:74:04:b6:80:b8:79:89:42:00:e4:47:73:ed.
    Are you sure you want to continue connecting (yes/no)? yes                    -------> Luego nos pregunta si deceamos continuar la conexión.
    Warning: Permanently added 'localhost' (RSA) to the list of known hosts.-------> Nos dice que localhost será permanentemente agregado a la lista de host conocidos.
    slacky@localhost's password:                                                                    -------> Finalmente nos preguna por la contraeña del usuario.

    Como podemos apreciar para realizar una conexión mediante ssh(1) es bastante sencillo tanto como realizarla con telnet, pero con la pequeña gran diferencia que los datos enviados con ssh(1) son encriptados porporcionandonos un grado mayor de seguridad.


    Clientes FTP

    FTP (File Transfer Protocol) es la abreviación de "Protocolo de Transferencia de Archivos". Este protocolo nos permite enviar y recivir archivos entre dos computadores. Este se puede dividir en dos tipos :El servidor FTP y el cliente FTP.

    El cliente FTP ( en este caso nosotros) es el que realiza una petición de conexión mediante el protocolo FTP y el servidor es aquella máquina que nos responde a esta petición permitiendonos o denegandonos el accesso a ella. Nosotros tenemos la posibilidad de subir archivos al servidor ( upload ) o bajarlos ( download ). Para esto nosotros tenemos la ayuda de varios programas, pero los introduciré con el más sencillo.

    ftp

    Este comando es la interface de usuario que nos permite establecer una conexion mediante el protocolo estandar FTP. Este nos permite transferir arhivos hacia y desde un sitio remoto de la red ( osea otra máquina ). La gran cantidad de opciones que el comando ftp(1) permite pueden ser consultadas en las páginas del manual, pero sencillamente una conexión se realiza tecleando el comando seguido del nombre del host como se aprecia en el siguiente ejemplo:

       $ ftp localhost

    Al ejecutar esto lo más seguro es que nos pedirá un nombre de usuario ( username) y una contraseña ( password). Estos programas por default nos dejan logearnos como usuario anónimos ( anonymous ) lo que es bastante común, pero si no es así deberemos introducir un nombre de usuario y password que nos permitan establecer la conexión. Una claro ejemplo de esto es cuando bajamos Slackware Linux vía FTP, ya que sin darnos cuenta ( algunos) estamos bajando nuestra querida distribución como usuarios anónimos.

    Una vez que la conexión a sido establecida con éxito nos encontraremos en un prompt así "ftp>",  este nos indica que ahora solo debemos usar la gran variedad de comandos que posee ftp ( que son similares a otros comandos normales ) para realizar las diferentes operaciones que deceeemos. Un ejemplo de los comandos más usados son mostrados en la siguiente tabla :

    Tabla 13-1. ftp Commands

    Comando
    Descripción
    ls
    Nos muestra el contenido del directorio actual
    cd
    Cambia el directorio de trabajo en la máquina remota
    put <archivo>
    Sube un archivo
    put <archivo> Baja un archivo
    hash
    Cambia el indicador de Hash mark
    prom Cambia al modo interactivo de Downloads
    mget <mask> Baja un archivo o un grupo de archivos, los comodines estan permitidos
    mput <mask> Sube un archivo o un grupo de archivos, los comodines estan permitidos
    binary
    Setea el tipo de transferencia de archivos dandonos soporte para bajar binarios
    quit Cierra session en el servidor FTP

    El comando ftp(1) es un programa bastante sencillo de utilizar, pero hay personas que se complican la vida, ya que no poseen una mente muy agil como para recordar que comandos usar en que casos. Esto por esto que hay interfaces mucho más amigables e intuitivas que podemos usar.  Si deceamos ampliar nuestro vocavulario en cuanto a comandos ftp(1), siempre tendremos las páginas del manual que nos explican un poco más acerca de las  diferentes opciones que componen el comando ftp(1).


    ncftp

    El comando ncftp(1) es un programa de busqueda con una interfáz mayormente sencilla de usar que tambíen usa el protocolo de transferencia de archivos ( FTP). Este se basa en modo texto, pero a direncia del tradicional ftp(1) nos ofrece más ventajas, entre las cuales podemos nombrar la autocompletación con mediante el uso de la tecla TAB, el marcado de archivo, los modos de transferencia como pasivos y no-pasivos, un uso más liberal de los comodínes, un historial de los comandos y así.

    Al ejecutar ncftp este se trata de logear en la máquina en cuestión como usuario anónimo, pero esto es modificable ejecutando la opción "-u" para permitirnos presentar un login. Una vez que nos hemos logeado en la máquina podemos usar los mismo comandos del programa ftp(1), pero con la ventaja de que la interfáz es mayormente similar a bash.

    Figure 13-1. NcFTP en acción:



    email

    En estos tiempos el enviar y recivir e-mail`s es como respirar, no hay persona que no lo haga. Esto se debe a que es mucho más espontáneo que el correo físico, además es gratis en la gran mayoría de los casos y consiste en una perdida de tiempo menor tratando de enviarlos.

    Slackware nos proporciona un servidor de mails normal, además de algún cliente de correo. Todos los clientes que nos proporciona son en modo texto. Esto puede ser una complicación para muchos usuarios ( usuarios de Windows especialmente acostumbrados a los clicks ), pero nos darémos cuenta que es mayormente benéfico un cliente en modo texto, especialmente a la hora de revisar correo de forma remota.

    pine

    y una referencia personal de características.Este es un programa para Internet New e Email. Pine es una herramienta mensaje-dirección orientada a la X. En su configuración por default pine(1) nos ofrece un sistema intencionalmente configurado para el usuario novato, pero también tiene una lista cada vez mayor del opcional "usuario de la energía".

    Este programa fue creado por la Universidad de Washington orientado a las noticias de Internet y al envio de correo electrónico de una forma sencilla para sus estudiantes. pine(1) es uno de los clientes de correo electrónico más populares disponibles en la actualidad, tanto para Unix y Windows.

    Si es la primera vez que ejecutamos pine nos aparecerá una pantalla introductorio igual a la siguiente imagen:



    Figura 13-2. Menu Principal del pine.



    Usted vera un menu de comandos y una fila de teclas de comando abajo.. pine es de hecho un programa complejo, por lo que nosotros no explicaremso todas las caracteristicas aqui.

    Para ver lo que esta en su bandeja de entrada, presione i. Sus mensajes se listan con su fecha, autor, y asunto. Resalte el mensaje que usted quiere leer y presione enter enter para verlo. Presionado r puede escribir una respuesta al mensaje. Una vez que halla escrito la respuesta, presione Ctrl+Xpara enviarlo. Usted puede presionar i para volver a la lista de mensajes.

    Si usted quiere eliminar un mensaje, presione d. para borrar el mensaje resaltado.. pine borrara el correo cuando usted salga del programa pine tambien le permite guardar su correo en carpetas. Usted puede ver una lista de las carpetas presionando l. En la lista de mensajes, presione s para guardarlo en otra carpeta. pine le pedira el nombre de la carpeta donde se guardara el mensaje.

    pine ofrece muchas, pero muchas otras opciones; usted puede mirar la pagina del manual para mas informacion.

    elm

    elm(1) es otro popular cliente de correo electronico basado en texto. Aunque no tiene una interfaz de usuario amistosa como pine, ha estado mucho más tiempo en el aire.
    Si es la primera vez que ejecutamos elm, este nos preguntará si deceamos crear un directorio llamado .elm que se ubicará en el home del usuario que lo ejecutó.

    Figura 13-3. Pantalla Principal de elm.



    Por defecto, usted se encuentra en su bandeja de entrada. Los mensajes se listan con el numero del mensaje, fecha, remitente, y asunto. Use las flechas para resaltar el mensaje que usted quiere. Presione enter para leer el mensaje.

    Para escribir un nuevo mensaje, presione m en la pantalla principal. La tecla "d" marcará un mensaje para ser eliminado. Y la tecla "r" contestará el mensaje que usted esta leyendo actualmente. Todas estas teclas se listan en el fondo de la pantalla con un prompt..

    La pagina del manual explica elm con mas detalle.


    Nail o mailx

    Nail es un inteligente sistema procesador de mails,

    mailx(1) es un cliente de correo manejado desde la linea de comandos. Es muy primitivo y no ofrece absolutamente nada mas que las otras interfaces de ususario. Sin embargo, mailx es util cuando usted necesita mandar un correo rapidamente, mandar correo masivo o algo similar.

    El Comando Basico es:

      $ mailx -s <subject> <to-addr>

    mailx lee el cuerpo del mensaje de la entrada normal. Asi que usted puede usar el comando cat para mandar algo por correo, o simplemente puede escribir el texto y presionar ctrl+D cuando termine de escribir el mensaje.

    Aqui hay un ejmplo de como mandar un archivo fuente de un programa a otra persona:

       $ cat randomfunc.c | mailx -s "Here's that function" [email protected]

    Las paginas del manual explican mas a fondo lo que puede hacer con mailx por lo que probablemente tendra que leerlo antes de usarlo.

    mailto

    El programa mailto(1) posee una interfáz de usuario bastante sencilla y solamente nos sirve para enviar mails multimedia en formato MIME, el formato estandar propuesto para mails internet multimedia. La operación básica de mailto es muy sincilla. Nosotros simplemente debemos tipear "mailto" ( sin comillas) desde el prompt, ahí se nos preguntará el mail del usuario al que le estamos enviando el mail ( "To:"), luego se nos pregunta por el tema ( "Subject:") y posiblemente una lista de las personas que recibirán una copia de nuestro mensaje ("CC:"), aunque generalemnte no es así. Alternativamente, podemos especificar todo esto desde la linea de comandos. la opción "-s" es usada para especificar el tema o subject, mientras que la opción "-c" puede ser usada para especificar the carbon copy address. Todos las demás opcione sde la linea de comando serán agregadas a la listo "To" ( Para ).

    $ mailto
    To: [email protected]
    Subject: Libro Slackware 9
    Este es un mensaje de prueba :D
    EOF
    $

    lynx

    Lynx(1) es un completo navegador de la World Wide Web ( WWW ) basado en modo texto, ideal para aquellos usuarios que no pueden gozar de los beneficios del sistema X-window, ya que puede ser ejecutado en terminales vt100, emuladores vt100 corriendoce en Windows 95/NT o en Maciintoshes. Este nos muestra un lenguaje de hypertexto marcado (HTML) en los links que contiene un documento a archivos residentes en el sistema local y también archivos residentes en sistemas remotos ejecutando Gopher, HTTP, FTP, WAIS y servidores NNTP. La versión actual de Lynx puede ser ejecutada en Unix, VMS, Windows 95/98/NT, 386DOS y OS/2 EMX.

    Para ejecutarlo simplemente debemos tipear en el prompt lynx. Aquí se nos ejecuta lynx y automàticamente trata de conectarce a el sitio http://lynx.browser.org/, si este no es encontrado se saldrá de lynx.

    Figura 13-4. Pagina de inicio de Lynx.



    Pero obviamente nosotros podemos especificar una página como se muestra a continuación:

    $ lynx www.slackware.cl

    Lo que nos mostrará el website más o menos como se aprecia en la siguiente imagen:



    Si nos fijamos en la parte inferior de lynx podremos notar que nos muestra las teclas de comandos y la función que cumple cada una. Brevemente diré que las flechas arriba y abajo nos permiten seleccionar un link y movernos  en el documento. Las flechas adelante y atrás nos hacen retroceder o avanzar al documento que se vió con anterioridad. Presionando <ENTER> abrimos un link seleccionado ( el cual está siendo resaltado ). Finalmente si lo que deceamos es salir de lynx simplemente presionamos la tecla "q" lo que genera la pregunta "Are you sure you want to quit? (y)" a la que contestamos con un  <ENTER>. Si decemos conocer más ordenes referentes a lynx podemos ver su ayuda mientras está siendo ejecutado presionando la tecla con le signo "?" o simplemente podemos mirar el man.

    wget

    GNU Wget es una utilidad gratis para una descarga de ficheros no interactiva de la Web. Este soporta los protocoles como HTTP, HTTPS y FTP, , as well as retrieval through HTTP proxies. Este pequeño gran programa nos es de una utilidad enorma, ya que gracias a él podemos descargar páginas web completas para poder verlas desde nuestra máquina mientras no estemos enlinea y así una infinidad de utilidades más.

    Para ejecutar wget simplemente teclamos lo siguiente:

       $ wget <URL>

    Por ejemplo, en el caso que deceemos bajar una página web simplemente usamos la opción --recursive de la siguiente forma:

       $ wget --recursive http://www.slackware.cl

    Lo que aquí ocurre es que wget nos creará iun directorio llamado www.slackware.cl en donde guardará los archivos descargados de la página http://www.slackware.cl/

    Para descargar archivos desde un ftp la forma de sintaxis es igual pero en vez de la direccion HTTP ponemos la FTP así :

     $ wget ftp://slackware.cl/slackware9.iso

    En el caso de que el ftp al que deceamos acceder nos pide una password para descargar archvios la  sintaxis es así :

    $ wget ftp://usuario:[email protected]/slackware9.iso

    wget posee una gran cantidad de opciones para nuestras distintas necesidades, lo único que debemos hacer para enterarnos con mayor detalle sobre este gran programa es ver las páginas de su manual.


    traceroute

    Slackware incluye el comando traceroute(8) 4.4BSD. Es una herramienta de diagnóstico de red útil. traceroute muestra todos los host por donde pasa un paquete al tratar de alcanzar su destino. Usted puede ver a cuantos "hops" del sitio de Slackware se encuentra usted con este comando:


       $ traceroute www.slackware.com


    Cada host sera listado, junto con el tiempo de respuesta de cada uno. Aqui hay un ejemplo de su ouput:


       $ traceroute www.slackware.com

       traceroute to www.slackware.com (204.216.27.13), 30 hops max, 40 byte packets
       1  zuul.tdn (192.168.1.1)  0.409 ms  1.032 ms  0.303 ms
       2  207.171.227.254 (207.171.227.254)  18.218 ms  32.873 ms  32.433 ms
       3  border-sf-2-0-4.sirius.com (205.134.230.254) 15.662 ms 15.731 ms 16.142 ms
       4  pb-nap.crl.net (198.32.128.20)  20.741 ms  23.672 ms  21.378 ms
       5  E0-CRL-SFO-03-E0X0.US.CRL.NET (165.113.55.3) 22.293 ms 21.532 ms 21.29 ms
       6  T1-CDROM-00-EX.US.CRL.NET (165.113.118.2)  24.544 ms  42.955 ms 58.443 ms
       7  www.slackware.com (204.216.27.13)  38.115 ms  53.033 ms  48.328 ms


    traceroute es similar al comando ping ya que utiliza paquetes ICMP. Hay varias opciones que usted puede especificar con el traceroute. El numero maximo predefinido de "hops" pero eso puede cambiarse con la opcion "-m". Se explican otras opciones en detalle en la pagina web.


    Hablando con otras Personas


    talk


    talk(1) permite a dos ususarios charlar. Se divide la pantalla, horinzontalmente, por la mitad. Para solicitar un chat con otro usuario, se utiliza esta orden:


       $ talk <person> [ttyname]


    Figura 13-5. Dos usuarios en una session de talk.



    Si usted especifica solamente el nombre de usuario, se asume que será una charla local, así que solo se le preguntara a los usuarios locales. La información requerida para charlar puede obtenerse con el comando w(1).


    talk puede contactar también a usuarios remotos. Como username usted simplemente especifica una dirección de correo. talk intentara buscar a ese usuario en este host.


    talk es algo limitado. Solo soporta a dos usuarios.


    ytalk


    ytalk(1) es un reemplazo compatible para talk. Viene con el Slackware con el nombre de ytalk La sintaxis es similar, pero tiene algunas diferencias:


       $ ytalk <username>[#ttyname]


    Figura 13-6. Tres usuarios en una sesion de ytalk.


    El nombre de usuario y el terminal se especifican igual que en talk, excepto que usted debe ponerlos juntos con el símbolo (#).


    ytalk ofrece varias ventajas:



    Soporta mas de dos usuarios.


     Un menú de opciones se puede utilizar cuando quiera presionando Esc.


    Usted puede usar el shell mientras esta en la sesión de charla.


    Mucho más..


    Si usted es un administrador de algún servidor, usted debe asegurarse de habilitar el puerto ntalk en /etc/inetd.conf. ytalk necesita ese puerto para trabajar correctamente.


    Resumen

    Usted debe conocer ahora algunas ordenes de diagnostico básico de redes. Usándolas, usted puede determinar si hay problemas con alguna computadora o la red entre su sistema y uno remoto. También, usted debe saber acerca de algunos clientes de correo, web browsers, clientes ftp y programas de comunicación.


    Administración Esencial del Sistema Indice Guardando Archivos