LECCIÓN 2 NOCIONES DE COMANDOS DE WINDOWS Y LINUX LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX “License for Use” Information The following lessons and workbooks are open and publicly available under the following terms and conditions of ISECOM: All works in the Hacker Highschool project are provided for non-commercial use with elementary school students, junior high school students, and high school students whether in a public institution, private institution, or a part of home-schooling. These materials may not be reproduced for sale in any form. The provision of any class, course, training, or camp with these materials for which a fee is charged is expressly forbidden without a license including college classes, university classes, trade-school classes, summer or computer camps, and similar. To purchase a license, visit the LICENSE section of the Hacker Highschool web page at www.hackerhighschool.org/license. The HHS Project is a learning tool and as with any learning tool, the instruction is the influence of the instructor and not the tool. ISECOM cannot accept responsibility for how any information herein is applied or abused. The HHS Project is an open community effort and if you find value in this project, we do ask you support us through the purchase of a license, a donation, or sponsorship. All works copyright ISECOM, 2004. Información sobre la “Licencia de Uso” Las lecciones y cuadernos de trabajo siguientes son de acceso público y están disponibles bajo las siguientes condiciones de ISECOM: Todos los trabajos del proyecto “Hacker Highschool” son proporcionados para su uso no comercial con estudiantes de escuelas primarias, secundarias, bachilleratos y ciclos formativos dentro de las actividades académicas propias de la institución. Dichos materiales no pueden ser reproducidos con fines comerciales de ningún tipo. La impartición con estos materiales de cualquier clase, curso o actividad de formación para el que sea necesario pagar un importe, queda totalmente prohibida sin la licencia correspondiente, incluyendo cursos en escuelas y universidades, cursos comerciales o cualquier otro similar. Para la compra de una licencia visite la sección “LICENSE” de la página web del proyecto “Hacker Highschool” en www.hackerhighschool.org/license. El proyecto HHS es una herramienta de aprendizaje y, como tal, la formación final debe proceder realmente de la influencia del instructor y no basarse únicamente en el uso de la herramienta. ISECOM no puede aceptar bajo ningún concepto responsabilidad alguna sobre la forma de aplicar, ni sus consecuencias, de cualquier información disponible dentro del proyecto. El proyecto HHS es un esfuerzo de una comunidad abierta, por lo que si encuentra útil este proyecto le invitamos a esponsorizarlo a través de la compra de una licencia, una donación o una esponsorización. All works copyright ISECOM, 2004. 2 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX Índice “License for Use” Information................................................................................................................2 Información sobre la “Licencia de Uso”.............................................................................................. 2 Contribuciones........................................................................................................................................ 4 2.1. Objetivos............................................................................................................................................5 2.2. Requerimientos y escenario............................................................................................................6 2.2.1 Requerimientos...........................................................................................................................6 2.2.2 Escenario.....................................................................................................................................6 2.3. Sistema Operativo: WINDOWS........................................................................................................7 2.3.1 ¿Cómo abrir una ventana de MS-Dos?..................................................................................7 2.4. Sistema operativo: LINUX...............................................................................................................12 2.4.1 ¿Cómo abrir una ventana de consola?...............................................................................12 2.4.2 Comandos básicos..................................................................................................................13 2.4.3 Herramientas de red................................................................................................................15 2.5. Ejercicios Prácticos.........................................................................................................................17 2.5.1 Ejercicio 1..................................................................................................................................17 2.5.2 Ejercicio 2..................................................................................................................................17 2.5.3 Ejercicio 3..................................................................................................................................18 Glosario...................................................................................................................................................19 3 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX Contribuciones Daniel Fernández Bleda, Internet Security Auditors Jairo Hernández, La Salle URL Barcelona Jaume Abella, La Salle URL Barcelona - ISECOM Kim Truett, ISECOM Pete Herzog, ISECOM Marta Barceló, ISECOM 4 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.1. Objetivos En esta lección introductoria se pretende dar a conocer los comandos básicos de Windows y de Linux, para que el alumno se familiarice con ellos y que le servirán para resolver los problemas planteados en el resto de lecciones. Al término de la lección el alumno tendrá conocimientos de los comandos: generales de Windows y Linux. básicos sobre redes: - ping - tracert - netstat - ipconfig - route 5 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.2. Requerimientos y escenario 2.2.1 Requerimientos Para la presente lección se necesitará: - Un PC con Windows 98/Me/2000/NT/XP/2003. - Un PC con Linux Suse/Debian/Knoppix… - Acceso a Internet. 2.2.2 Escenario Este es el escenario en el que se va a trabajar. Consta de la propia red de ordenadores donde trabajará el alumno, con acceso a Internet, y de la red de servidores de ISECOM destinada al programa Hacker Highschool (HHS), a la cual se accede a través de Internet. Esta es la red contra la que se van a realizar la mayoría de las pruebas. Debemos tener presente que el acceso a la red de pruebas de ISECOM está restringido, y que es necesario solicitar acceso a ella mediante el proceso de inscripción en el programa: www.hackerhighschool.org. 6 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.3. Sistema Operativo: WINDOWS Para la mayoría de herramientas referentes al estudio de redes, se utilizan los propios comandos del sistema operativo windows. Es por ello que se va a explicar cómo abrir una ventana de comandos si se está utilizando Windows como sistema operativo. 2.3.1 ¿Cómo abrir una ventana de MS-Dos? Para acceder a editar los siguientes comandos, se debe abrir una ventana de comandos. El procedimiento será el mismo para cualquier Windows que se tenga: 1.- Ir al botón de Inicio. 2.- Escoger la opción Ejecutar. 3.- Escribir “command” si se está utilizando Windows 95/98 o bien “cmd” para el resto de Windows, y pulsar Aceptar. 4.- Aparecerá una ventana similar a la siguiente: 7 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 5.- Ahora ya se pueden probar los comandos y herramientas que se listan a continuación. 2.3.2 Comandos básicos Date Time Ver Dir Cls mkdir <directorio> md <directorio> chdir <directorio> cd <directorio> Muestra o establece la fecha del sistema Muestra o establece la hora del sistema Muestra la versión de MS-DOS que se está utilizando Muestra la lista de subdirectorios y ficheros de un directorio o carpeta Borra la pantalla Crea un directorio o carpeta. Por ejemplo: md utilidades Muestra el nombre o cambia el directorio actual . Por ejemplo: cd utilidades Rmdir <directorio> rd <directorio> tree <ruta> Borra un directorio o carpeta. Por ejemplo: rd utilidades Muestra de forma gráfica-texto la estructura de carpetas de una unidad o ruta. Por ejemplo: tree c:\utilidades Chkdsk Mem rename <origen> <destino> Ren <origen> <destino> Comprueba un disco y muestra un informe de estado Muestra la cantidad de memoria usada y libre en el sistema Cambia el nombre de uno o más ficheros. Por ejemplo: ren nombreantiguo nombrenuevo 8 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX copy <origen> <destino> Copia uno o más ficheros en otra localización. Por ejemplo: copy c:\util\fichero.txt c:\temporal move <origen> <destino> Cambia el nombre a ficheros y directorios. Por ejemplo: move c:\herramientas type <fichero> c:\utilidades Muestra el contenido de un fichero de texto. Por ejemplo: c:\utilidades\mifichero.txt More <fichero> type Muestra la información pantalla a pantalla. Por ejemplo: More c:\utilidades\mifichero.txt delete <fichero> Elimina uno o más ficheros. Por ejemplo: del <fichero> del c:\utilidades\mifichero.txt Nota: Las palabras entre corchetes < > no son comandos, sino que deben substituirse por los valores deseados. Hay comandos que pueden emplearse utilizando su forma larga o corta, por ejemplo, “delete” y “del” son el mismo comando. 2.3.3. Herramientas de red ping <máquina> El comando ping permite enviar “sondas” ICMP (Internet Control Message Protocol) a otra computadora, con el objetivo de saber si ésta es alcanzable a través de la red. Además muestra un resumen estadístico acerca del porcentaje de sondas que no han tenido respuesta y del tiempo de respuesta. Se puede utilizar el nombre de la máquina o directamente su dirección IP en Internet. Por ejemplo: ping www.google.com ping 193.145.85.2 Algunas opciones son: -n <N> : envía N paquetes -t : envía de manera indefinida los paquetes. Para cancelar ésta y otras opciones: CTRL+C. Para ver más opciones: ping /h 9 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX tracert <máquina> El comando tracert es la abreviatura de trace route, el cual nos permite saber la ruta que siguen los paquetes desde el origen, es decir, nuestra máquina, hasta la máquina destino. También se pueden visualizar los tiempos de cada salto. Como máximo, se listarán 30 saltos. Es interesante observar que se obtienen los nombres de las máquinas por las cuales viajan los paquetes. Por ejemplo: tracert www.google.com tracert 193.145.85.2 Algunas opciones: -h <N> : para especificar N saltos como máximo. -d : no muestra en nombre de las máquinas. ipconfig Para ver más opciones: tracert El comando ipconfig muestra información sobre las interfaces de red activas en el ordenador. Por ejemplo: ipconfig Algunas opciones: /all : muestra más detalles /renew : activa las direcciones IP del adaptador cuando se usa configuración automática con DHCP. /release : desactiva las direcciones IP del adaptador cuando se usa configuración automática con DHCP. route Para ver más opciones: ipconfig /? El comando route sirve para definir rutas estáticas, borrar rutas o simplemente ver el estado de las rutas. Algunas opciones: Print : muestra la lista de rutas. Delete : borra una ruta. Add : añade una ruta. Por ejemplo: route print Para ver más opciones: route /? 10 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX netstat Muestra gran cantidad de información sobre el estado de la red y conexiones de red establecidas con máquinas remotas. Algunas opciones: -a Muestra todas las conexiones y puertos escucha. -e Muestra estadísticas Ethernet. Por ejemplo: netstat netstat –an Para ver más opciones: netstat /? 11 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.4. Sistema operativo: LINUX Por el mismo motivo que sobre un Windows se ha necesitado abrir una ventana de MS-Dos, si se utiliza LINUX, la gran mayoría de comandos igualmente se ejecutan desde una ventana que emula como si se estuviera trabajando desde una consola. Es por este motivo que se va a proceder a explicar cómo abrir una ventana de consola en LINUX. 2.4.1 ¿Cómo abrir una ventana de consola? Para acceder a editar los siguientes comandos, se debe abrir una pantalla de consola: 1. - Ir al botón de K 2. - Escoger la opción Run Command: 12 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 3. - Escribir “konsole”. 4. - Debería salir una ventana similar a la siguiente: 5. - Ahora ya se pueden probar los comandos y herramientas que se listan a continuación. 2.4.2 Comandos básicos pwd Muestra el nombre del directorio actual. hostname Muestra el nombre de la máquina local (en la que estamos trabajando) Muestra información sobre el usuario <usuario> finger <usuario> Por ejemplo: finger root Ls Lista el contenido de directorios Por ejemplo: ls -la 13 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX cd <directorio> Cambia al directorio <directorio>. Ejemplo 1: Si nuestro login es “milogin”, el comando $cd cambia al directorio /home/mylogin Ejemplo 2: $cd Cambia al último directorio visitado. Ejemplo 3: $cd /tmp Cambia al directorio “tmp” cp <origen> <destino> Copia ficheros. “destino”. Copia el fichero “origen” en Por ejemplo: cp /etc/passwd /tmp rm <fichero> Borra ficheros. Sólo el propietario del fichero (o root) puede borrarlo. Por ejemplo: rm mifichero mv <origen> <destino> Mueve o renombra ficheros y directorios Por ejemplo: mv nombreantiguo nombrenuevo mkdir <directorio> Crea un directorio con nombre “directorio” Por ejemplo: mkdir midirectorio rmdir <directorio> Borra el directorio “directorio” si se encuentra vacío Por ejemplo: rmdir midirectorio man <comando> Muestra las páginas del manual on-line Por ejemplo: man ls Nota: Las palabras entre corchetes < > no son comandos, sino que deben sustituirse por los valores deseados. 14 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.4.3 Herramientas de red ping <máquina> El comando ping permite enviar “sondas” ICMP (Internet Control Message Protocol) a otra computadora, con el objetivo de saber si ésta es alcanzable a través de la red. Además muestra un resumen estadístico acerca del porcentaje de sondas que no han tenido respuesta y del tiempo de respuesta. Se puede utilizar el nombre de la máquina o directamente su dirección IP en Internet. Por ejemplo: ping www.google.com ping 193.145.85.2 Para ver más opciones: traceroute <máquina> man ping El comando traceroute indica la ruta que siguen los paquetes desde el origen, es decir, nuestra máquina, hasta la máquina destino llamada <máquina>. Por ejemplo: traceroute www.google.com Ifconfig Para ver más opciones: man traceroute El comando ifconfig muestra información sobre las interfaces activas (ethernet, ppp, etc.). Por ejemplo: ifconfig route Para ver más opciones: man ifconfig El comando route sirve para definir rutas estáticas, borrar rutas o simplemente ver el estado de las rutas. Algunas opciones: print: muestra la lista de rutas. delete: borra una ruta. add: añade una ruta. Por ejemplo: route Para ver más opciones: man route 15 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX netstat Muestra gran cantidad de información sobre el estado de la red y de las conexiones TCP/IP establecidas. Por ejemplo: netstat netstat –an Para ver más opciones: man netstat 16 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.5. Ejercicios Prácticos 2.5.1 Ejercicio 1 Para profundizar sobre los conocimientos adquiridos de Windows. a. Accede a una ventana de MS-DOS b. Identifica la versión de MS-DOS que estás utilizando. ¿Qué versión has detectado? ¿Qué comando has utilizado?. c. Identifica la fecha y hora del sistema. Comprueba que sean correctas; sino, modifícalas para que lo sean. ¿Qué comandos has utilizado? d. Identifica todos los directorios y ficheros que se encuentran en “c:\”. ¿Qué comando has utilizado y cuál ha sido la salida de este comando? e. Crea el directorio c:\hhs\tema0. Copia en este directorio todos los ficheros con la extensión .sys que se encuentren en c:\. ¿Qué ficheros has encontrado? ¿Qué comandos has utilizado? f. Identifica la dirección IP de tu máquina. ¿Qué comando has utilizado? ¿Qué dirección IP tienes? g. Traza la ruta hasta alguna máquina del dominio de ISECOM (Por Ejemplo 193.145.85.201). Identifica las direcciones IPs de los equipos intermedios. 2.5.2 Ejercicio 2 Para profundizar sobre los conocimientos adquiridos de Linux. a. Identifica el propietario del fichero “/etc/passwd”. ¿Qué comandos has utilizado? b. Crea el directorio “trabajo” en nuestro directorio (por ejemplo, si nuestro login es “milogin”, crear el directorio en “/home/milogin”), y copia el fichero “passwd” en el directorio “trabajo” que acabamos de crear. Identifica el propietario del fichero “passwd” que se ha copiado. c. Crea el directorio “.oculto” en el directorio “trabajo”. Lista el contenido de nuestro directorio. ¿Cómo podríamos listar el contenido de nuestro directorio de forma que pudiéramos visualizar el directorio “.oculto”? d. Identifica el nombre y la dirección IP de tu máquina. ¿Qué comandos has utilizado? ¿Qué dirección IP tienes? e. Recuerda el escenario de la práctica (apartado 0.1.2) y traza la ruta hasta alguna máquina del dominio de ISECOM (Por Ejemplo 193.145.85.202). Identifica las direcciones IP de los equipos intermedios. 17 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX 2.5.3 Ejercicio 3 Completa la siguiente tabla con los paralelismos entre Windows y Linux. Por ejemplo: En Linux: comando –help es lo mismo que en Windows comando /h. En linux: cp (copiar) es lo mismo que en Windows copy. comand o -help cp mv more ls cd route Ping comando /h copy del print deltree md rd tracert ipconfig 18 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX Glosario Dirección IP (IP address): Es la dirección que identifica a cualquier máquina en Internet. El formato son 4 números, con valores entre 0 y 255, separados por puntos. Por ejemplo, 10.160.10.240. Dominio (Domain): Es un nombre que identifica una o más direcciones IP. Por ejemplo, el dominio Microsoft.com representa cerca de una docena de direcciones IP. Los nombres de dominio se usan en URLs para identificar determinadas páginas Web. Por ejemplo, en la URL http://www.pcwebopedia.com/index.html, el nombre de dominio es pcwebopedia.com. Cada nombre de dominio tiene un sufijo que indica a qué nivel de dominio superior (TLD, Top Level Domain) pertenece. Este número de sufijos es limitado. Por ejemplo: - gov – Agencias gubernamentales - edu – Instituciones Educacionales - org – Organizaciones (no lucrativas) - com – Negocios comerciales - net – Organizaciones de Red - es – España - … etc … Como Internet está basada en direcciones IP, y no nombres de dominio, cada servidor Web necesita un sistema de nombres de dominio (DNS, Domain Name System) que traduzca los nombres de dominio a direcciones IP. MS-DOS (Microsoft Disk Operating System) El MS-DOS es un sistema operativo. Su objetivo es facilitar la comunicación entre el usuario y el ordenador, y utilizar eficientemente los recursos disponibles, por ejemplo el uso de memoria y CPU. Router (encaminador, direccionador, enrutador) Dispositivo que distribuye tráfico entre redes. Un router está conectado como mínimo a dos redes, generalmente dos LANs (Local Area Network) o WANs (Wide Area Networks) o una LAN y la red del ISP (Internet Service Provider). Los routers se localizan en la pasarela, el lugar donde dos o más redes se conectan. Los routers usan tablas de encaminamiento para determinar el mejor camino donde dirigir los paquetes IP. 19 LECCIÓN 2 – NOCIONES DE COMANDOS DE WINDOWS Y LINUX Sistema Operativo (Operating System – OS): Un sistema operativo es un programa especial que se ejecuta en un ordenador tras ser encendido y cuya función es gestionar el resto de programas, o aplicaciones, que en él se ejecutarán, como, por ejemplo, un procesador de texto o una hoja de cálculo, o la impresión de un texto en una impresora o una conexión a Internet. El sistema operativo también es responsable de detectar dispositivos hardware y establecer la comunicación entre el usuario y el hardware (teclado, ratón, monitor, etc). Ejemplos de sistemas operativos son: Windows, Linux, UNIX, etc. 20