Download Sistema de archivos
Document related concepts
no text concepts found
Transcript
UNIVERSIDAD TECNOLÓGICA DE AGUASCALIENTES SISTEMA OPERATIVO LINUX (30 horas) INSTRUCTOR: n L.I. José Alberto Rodríguez Castañeda n n n n Profesor de tiempo completo Administración de servidores UTA Miembro del grupo de usuarios de Linux de Aguascalientes (GULAGS) beto@utags.edu.mx SESIONES: n n n n n NUMERO DE SESIONES: 12 DURACIÓN: 2.5 HORAS LUGAR: AULA CDH, AULAS 5 HORARIO: 15:00 a 17:30 y de 17:40 A 20:00 HORAS PRESENTACIÓN DE LOS PARTICIPANTES. n Nombre: n Procedencia: n Experiencias con Linux: n Expectativas del curso: GENERALES: n La documentación del curso es de tipo electrónico y podrá ser descargado desde la siguiente dirección: http://172.16.40.29 soló de forma local. n Posteriormente podrá ser descargada desde el sitio: http://www.gulags.org. n Ubicación de sanitarios: Saliendo a la izquierda a medio pasillo. DESCRIPCIÓN DEL CURSO: n Este curso cubre las tareas esenciales y fundamentales para la instalación y administración de un sistema Linux. La información esta diseñada para personas con o sin experiencia profesional en la administración de sistemas pero con conocimiento de informática básica. AUDIENCIA: n n n Experiencia básica en el uso de computadoras, con conocimiento de términos comunes y tareas relacionadas. Conocimiento básico sobre el uso de programas de computadoras. Conocimientos básicos referentes a redes de computadoras. REGLAMENTO: n n n n n Es necesarios usar adecuadamente el equipo y materiales del laboratorio. Se concede un máximo de 10 minutos de tolerancia para acceder a la sesión. Es necesario asistir al menos al 80% de las horas programadas. Favor de poner los celulares en modo vibrador y en caso de recibir llamada contestar fuera de aula. Respetar las opiniones y puntos de vista de los participantes FORMA DE EVALUACIÓN EXAMEN PRACTICO EXAMEN TEORICO TOTAL 70 % 30 % 100 % OBJETIVO GENERAL: n Que los participantes utilicen de a un nivel de usuario intermedio el sistema operativo Linux mediante el desarrollo de las destrezas necesarias para el uso del sistema de forma adecuada. ¿DUDAS? TEMARIO DEL CURSO DURACIÓN: 30 horas UNIDAD I. FUNDAMENTOS n n n n n Introducción al curso. (.5 horas) Historia y evolución de GNU/Linux (.5 horas) Características de Linux (.5 hora) Linux en Internet, la oficina y la red local (.5 horas) Distribuciones Linux (.5 horas) (2.5 horas) UNIDAD 2. INSTALACIÓN DE LINUX n n n n Requisitos de Instalación (.5 horas) Instalación de Federa Core 1 (1.5 horas) Revisión de KNOPPIX (1 hora) TOTAL: 6 horas (3 horas) UNIDAD 3. PRIMEROS PASOS CON EL SISTEMA LINUX n n n n n Sistema de archivos (1 hora) Comandos Básicos (3 horas) Herramientas del entorno gráfico (1 hora) Permisos en el sistema de archivos (2 horas) Utilización de Secure Shell (1.5 hora) (8.5 horas) UNIDAD 4. ADMINISTRACIÓN DEL SISTEMA n n n n Administración de usuarios (3 horas) El arranque del sistema (1.5 horas) Niveles de ejecución (1 hora) Administración de procesos (1 hora) (6.5 horas) UNIDAD 5. EDITORES n n El editor VI. (2 hora) El editor pico. (.5 horas) (2.5 horas) UNIDAD 6. INSTALACION DE PROGRAMAS n n Administración de paquetes RPM (yum, aptrpm) (2 horas) Compilación de programas desde código fuente. (1.5 hora) (3.5 horas) UNIDAD 7. REDES n n n Configuración de parámetros de red. (1.5 horas) Utilidades de red: netstat, nmap, tcpdump (1 horas) Firewalling con iptables (1 hora) (3.5 horas) Evaluación de diagnostico: UNIDAD I. FUNDAMENTOS (2 horas) Historia y evolución de GNU/Linux (.5 horas) Características de Linux (.5 hora) Linux en Internet, la oficina y la red local (.5 hora) Distribuciones Linux (.5 horas) Objetivo de la sesión: n Al finalizar la sesión el participante conocerá los orígenes y características del sistema operativo Linux así como lo servicios ofrecidos para redes y oficinas. ¿Qué es Linux? n n n n n n Sistema operativo tipo Unix Disponibles para diferentes plataformas Creado por Linus Torvalds Inspirado del sistema operativo Minix desarrollado por A. Tanenbaum para apoyar su curso de sistemas operativos Distribuido gratuitamente Mejorado por miles de programadores a nivel mundial Mitos acerca de Linux n n n n Linux no es un sistema operativo Linux ha sido creado por aficionados No hay software para Linux En linux es el único núcleo libre n n n Aplicaciones libres No hay soporte para linux Es un sistema de hackers Linux en el tiempo La historia de un bebe Imagination is more important than knownledge HISTORIA DE LINUX n En Agosto de 1991, un estudiante finlandés envió un e-mail a newsgroup comp.os.minix que decía: n ¡Buenos dias a todos aquellos que usan Minix! - n Estoy creando un sistema operativo (libre) (se trata de un hobby y no será tan grande y profesional como GNU) para 386(486) AT . n n Después de un año de investigación, "hacking" y desarrollo, empezó a difundirse a partir de Enero de 1992, causando toda una revolución tecnológica en el mundo de las Tecnologías de Información. Linux fue liberado en Internet y la respuesta de los programadores y usuarios de UNIX fue contundente. Pronto todos querían aportar sus conocimientos para que la incipiente criatura fuera un sistema operativo estable, robusto y potente. Finalmente llego la primera versión estable del Kernel la 1.0. De allí en adelante Linux fue evolucionando a un ritmo vertiginoso hasta hacer tambalear a todos los S.O del mercado. n n n Los fabricantes fueron desarrollando aplicaciones para el nuevo sistema. Actualmente Linux es utilizado como plataforma para proporcionar gran parte de los servicios de Internet. Surgimiento de grupos de usuarios y de desarrollo. GNU y Linux Elegance in writing software is achieving maximum functionality from minimal complexity GNU y Linux n n GNU: GNU Not Unix (http://www.gnu.org) Proyecto lanzado en 1983 para desarrollar un sistema operativo “libre” parecido a Unix bajo las siguentes premisas: n libertad de copiar el programa y darselo a otros. n libertad de cambiar el software. n libertad de distribuir una versión mejorada y de esta forma ayudar a la comunidad. Surgimiento GNU n n 1971 Richard Stallman inicia su carrera en el MIT con un proyecto para el desarrollo de software libre. Para 1980´s casi todo el software era propietario el que cuenta con las siguientes restricciones: n n n n software tiene dueño que prohiben cooperación entre usuarios se tiene que pagar por usarlo No se tiene acceso al código fuente Toda computadora necesita un sistema operativo para usarla!!! n n Escribir sistema operativo completo es un trabajo bastante largo 1983: surge GNU n n Su primer trabajo consistio: realizar un sistema operativo Se eligió Linux ya que todo el diseño había sido probado, era portable y se adecuaba a los requerimientos. Organizaciones relacionados con Software Libre n n n n n n FreeBSD (http://www.freebsd.org) Xfree86 GNOME Free Software Foundation AMSOL (Asociación Mexicana de Software Libre) GULAGS CARACTERISTICAS DE LINUX Características Linux n Multitareas n n Multiprogramación n n n n n n n varios usuarios en sesión simultáneamente en el sistema usuarios protegidos unos de otros Acceso a todo el sistema n n se pueden ejecutar varios programas a la vez posible consultar código para encontrar errores a nivel académico es útil contar con los fuentes Linux permite correr aplicaciones y programas de otros sistemas operativos. Olvídate de los virus. No pantallazos azules. La Instalación está disponible en más de 40 idiomas Características Linux n n n n n n Carga de ejecutables por demanda: linux solo lee de disco aquellas partes de un programa que están siendo usadas actualmente. Se realizan volcados de estado (core dumps) para posibilitar los análisis post-mortem, permitiendo el uso de depuradores sobre los programas no solo en ejecución sino también tras abortar estos por cualquier motivo. Casi totalmente compatible con POSIX, system V y BSD a nivel fuente. Consolas virtuales múltiples Múltiple software cliente y servidor. Facilidad de instalación Comparando desempeño y confiabilidad de Linux Linux Confiabilidad Sun Solaris Windows NT 0 1 2 3 4 5 Linux Desempeño Sun Solaris Windows NT 0 1 2 3 4 5 LINUX EN INTERNET, LA OFICINA Y LA RED LOCAL Herramientas de oficina para Linux n n n n n n Procesadores de textos (OpenOffice, koffice, staroffice) Hojas de cálculo Bases de datos (mysql , postgreSQL, adabas, oracle, informix) Herramientas de dibujo (Gimp) Ambientes gráficos ( kde, gnome) Internet (mozilla, netscape, lynx) PRACTICA n n n n Inicio de sesión en ambiente gráfico Revisión rápida de openoffice Comparación con sistemas comerciales Comentarios de otras herramientas Linux e Internet n Servidores n n n n n n n n de nombres (BIND) Berkeley Internet Name Domains de correo (sendmail, postfix, qmail) IRC (Internet Relay Chat) Mensajera Instantánea (Jabber ) HTTP (apache, i-planet, Nestcape enterprise server ) News Conexiones remotas seguras: SSH, SFTP SCP Acceso corporativo n n n mecanismos de Proxy (squid) traducción de direcciones ( ipmasquerade, ipfwadm, ipchains) servidor firewall (iptables) n Clientes para la mayoría de los servicios n n n n n lectores de news navegadores web clientes FTP, GOPHER Cliente Ximian para correo electrónico Comercio electrónico n Apache+SSL: posibilidad de transacciones protegidas por internet, gracias a: n SSL Lib: librería que permite el uso de llaves de más de 40 bits y 128 bits Internet Ruteador Conexión Internet 192.168.1.1 192.224.62.192 192.224.62.193 Linux Servidor de 192.168.1.2 Terminales 192.168.1.3 Linux Firewall 192.224.62.194 192.224.62.195 Zona desmilitarizada 192.224.62.0 / 255.255.255.224 Intranet 192.224.62.0 / 255.255.255.224 Las distribuciones n n Como parte del beneficio de la libertad de distribución, algunas compañías y asociaciones han desarrollado su propia distribución de Linux Las distribuciones se diferencian por la composición de: n n la versión del núcleo del sistema operativo (kernel) la combinación de utilerías que la acompaña n n n Número de versión actual del núcleo: 2.5 Algunas distribuciones son realizadas para algunas plataformas específicas Se pueden obtener: n n n n gratuitamente en internet vía FTP en uno o varios CD´s a un bajo costo como parte de un libro de Linux Distribuciones importantes: n n n n n n RedHat Slackware Caldera Debian Gentoo Fedora La distribución Red -Hat Red-Hat n n Constituye la base de implementaciones más comerciales de Linux Utiliza un programa de instalación y un formato de datos propios n n n n n formato llamado RPM (RedHat Package Manager) Disponible para las computadoras Intel, Alpha y SPARC Uno de sus puntos fuertes es seguridad No es necesario cargar todos los archivos, a medida que se necesitan pueden utilizarse Información: www.redhat.com La distribución Slackware n n n n n Patrick Volkerding tiene la responsabilidad de esta distribución Distribución pensada en primer lugar para las computadoras PC Incluye soporte para ALSA Se ha cambiado la plataforma que hasta ahora se ha venido empleando para compilación (i386) y han utilizado i486 para recompilar todos sus paquetes. Los scripts ahora pueden ser administrados por medio de PKGTOOL. La distribución Caldera n n n n Basada en distribución RedHat Esta distribución es de paga Cuenta con un conjunto completo de software estándar preconfigurado, listo para ser usado El producto comercializado se conoce como OpenLinux, existen dos versiones: n n n n OpenLinux Base OpenLinux Server Disponible para PCs 486 y Pentiums Información: http://www.caldera.com Debian n n n n n Los errores conocidos son enumerados en la página web Los desarrolladores de Debian consultan regularmente esta página y analizan los mensajes de error Esta versión es una de las más robustas de Linux Viene con más de 8710 paquetes, programas precompilados distribuidos en un formato que hace más fácil la instalación en su computadora. No es de las más fáciles para empezar. Fedora Core 1 n Fedora™ Core será en adelante la distribución que Red Hat™pondrá a libre disponibilidad del público. No cuenta con soporte alguno por parte de Red Hat. El soporte que pudiera brindarse será solo a través de la propia comunidad de usuarios. Fedora™ Core es una distribución de GNU/Linux para uso general, orientada hacia entusiastas, principiantes y cualquiera que crea que no requiere [o no puede] pagar por un servicio de soporte para utilizar este sistema operativo. Otras distribuciones Linux µ Linux PPC µ TurboLinux µ Linux Pro µYggdrasil Linux µ Linux Ware µ DLX Linux µ MkLinux µ DOS Linux µ Stampede Linux µ hal91 Floppy Linux µ S.u.S.E. Linux µ tomsrbt Distribuciones no en inglés n Conectiva Red Hat Linux n n Delix DLD Linux n n distribución alemana de Linux Eagle Linux n n versión brasileña de RedHat distribución alemana de Linux Eurielec Linux n distribución española de RedHat n Kheops Linux n n MNIS Linux n n distribución francesa de RedHat distribución francesa de Linux Mandrake Linux n distribución mexicana* de Linux Elección de la distribución n n n Todas las distribuciones tienen un punto en común: el kernel. Todas tienen una versión de kernel (modificada o no) para detectar nuestro hardware apropiadamente. La selección de la distribución varia dependiendo de los requerimientos propios de la empresa. Se deberá tomar también en consideración el grado de experiencia del administrador, el hardware con que se cuente y el nivel de los usuarios. Fin UNIDAD I n n n Evaluación del aprendizaje Temas a tratar en la siguiente sesión Receso UNIDAD 2. UNIDAD 2. INSTALACIÓN DE LINUX (3 horas) Requisitos de Instalación (.5 horas) Instalación de Fedora Core 1(1.5 horas) Revisión de KNOPPIX (1 hora) Objetivo de la sesión: n Al finalizar la sesión el participante conocerá los requisitos de instalación de un sistema Linux, así como la el proceso de instalación de Fedora Core 1como refuerzo a los conocimientos teóricos adquiridos anteriormente. Requerimientos mínimos n n n La siguiente configuración es posiblemente la mínima sobre la que Linux puede trabajar: 386SX/16, 2 MB RAM, Disquetera de 1.44 Mb o de 1.2 Mb y cualquier tarjeta grafica soportada (mas teclado, monitor y demás, por supuesto). Esto debería permitirte arrancar y comprobar si trabaja en el ordenador, pero no serías capaz de hacer nada útil. Pasos Instalación µ Requerimientos µ Partición Nativa y Swap µ Arranque desde disco µ Instalación µ Configuración de arranque Requerimientos para Fedora n n n n Pentium o equivalente Recomendado para modo texto: 200 MHz clase Pentium o superior Recomendado para graficos: Pentium II 400 MHz o superior Espacio en disco duro (Nota: se requiere espacio adicional para los datos del usuario): n n n n n Instalacion personalizada (minima): 475MB Servidor (minimo): 850MB Escritorio personal: 1.7GB Estacion de trabajo: 2.1GB Instalacion personalizada (todo): 5.0GB Requerimientos para Fedora n Memoria: n n n Mínimo para modo texto: 64MB Mínimo para modo grafico: 128MB Recomendado para modo grafico: 192MB Particiones µ Nativa: Partición principal, donde se encuentra el kernel y el sistema LINUX µ Swap: Espacio del disco destinado para usarse como memoria virtual Recomendado dejar el doble de lo que se tiene en RAM Arranque con “Disco” µ Configurar el BIOS, para que pueda arrancar desde la unidad de CD-ROM µ Después de acabar la instalación dejar el BIOS como estaba Pasos de Instalación µ Elección de Tarjeta de Video µ Elección de Tarjeta de Sonido µ Configuración de LAN (si se tiene) µ Selección de puerto de impresión µ Selección de puertos de comunicaciones µ Contraseña root µ Instalación GRUB LILO y GRUB µ Linux-Loader µ GRUB µ Permite seleccionar la partición donde se encuentra el boot del sistema que se desea arrancar, Windows o Linux o etc. SELECCIÓN DE AMBIENTES GRAFICOS n n n n Selección del inicio grafico Cantidad de memoria Frecuencia del monitor Creación de disco de arranque PRACTICA n Instalación de la distribución Fedora Core 1 Fin de la sesión Presentación de la distribución Knoppix n n n Knoppix es una distribución de linux que implementa una nuevo sistema de archivos llamado LFS (Live File System) lo que permite arrancar y ejecutar un sistema linux a partir de una unidad lectora de CD, sin la necesidad de instalarlo en nuestro HD. Knoppix cuenta con un amplio soporte de Hardware y una gran variedad de herramientas administrativas tal como cualquier distribución tradicional. Una característica que hace que sobresalga aún más es que esta basado en Debian. Revisión Knoppix n n Arranque de la distribución knoppix Revisión de ventajas UNIDAD 3. PRIMEROS PASOS CON EL SISTEMA LINUX (8.5 horas) Sistema de archivos (1 hora) Comandos Básicos (3 horas) Herramientas del entorno gráfico (1 hora) Permisos en el sistema de archivos (2 horas) Utilización de Secure Shell (1.5 hora) SISTEMAS DE ARCHIVOS n Forma y sistema organiza y administra los archivos y directorios por el sistema operativos, en Linux están disponible el soporte para diferentes sistemas operativos: n n n n n n n Reiserfs (transaccional) FAT NTFS * Ext2 Ext3 (transaccional) CDFS HPFS Directorio raiz (/) n En los sistemas Unix no existe un directorio raiz c:\ o similar, aunque el sistema de archivos es de tipo jerárquico este se parte a partir de denominado directorio raíz presentado por /. Organización de directorios n /boot n n /bin n n Mantiene el kernel e información indispensable para el arranque del sistema. Mantiene unos pocos programas que estarán disponibles incluso en los modos de ejecución más restringidos (e.g. bash, cat, ls, login, ps). /sbin n Mantiene programas disponibles sólo para el administrador incluso en los modos de ejecución más restringidos (e.g fsck, getty, halt). //usr usr n Programas accequibles a usuarios finales y datos de estos programas que no requieren ser modificados (datos de sólo lectura). Algunos de sus subdirectorios son: n bin, games n n sbin n n Librerías de funciones comunes a varios programas (algunas como libc indispensables para todos). include, src n n Datos de diversos programas, entre sus subdirectorios están: doc doc,, man y info que contienen documentación; locale locale,, i18n que mantiene información sobre internacionalización (locale ( locale); ); zoneinfo que mantiene información sobre zonas horarias. lib n n Herramientas para el administrador. share n n Programas disponibles para todos los usuarios. Encabezados de algunos componentes del sistema y fuentes de algunos programas. local n Otros programas y datos compilados por el administrador n /mnt/floppy, /mnt/cdrom, /mnt/flash n n /lib n n Archivos de configuración de diversos programas. /dev n n Librerías indispensables y módulos (especialmente requeridas durante el arranque del sistema). /etc n n Directorios para montar disquettes, CD-ROMs y otros sistemas de archivos o dispositivos. Abstracciones a los dispositivos conectados (o que podrían conectarse) a la computadora. /home n Mantiene información de los usuarios del sistema. n /root n n /tmp n n Archivos temporales creados por algunos programas, que serán borrados por el sistema operativo durante el arranque. /var n n Mantiene información del administrador del sistema. En este directorio los programas que lo requieran pueden mantener archivos que deban modificarse frecuentemente. Algunos de sus subdirectorios son: mail donde se mantienen colas de correo de cada usuario, log que mantiene bitácoras, run con archivos que mantienen los números de los procesos iniciados al arrancar el sistema, spool colas de impresión y de otros programas, tmp archivos temporales (más persistente que /tmp). /proc n Este directorio es "virtual", no está presente en el disco, es creado por el sistema para intercambiar información con más facilidad. PRACTICA: n n n Inicio de una sesión en la terminal. Revisión de la estructura del sistema de archivos de linux. Revisión del comando CD y su opciones COMANDOS BASICOS Información del sistema n n n n n n n hostname : Devuelve el nombre de la maquina. uptime: Devuelve la cantidad de tiempo transcurrido desde la ultima vez que se arranco el sistema. uname -a : Información sobre el sistema operativo de la maquina. dmesg|more: Imprime el "ring buffer" del kernel. free –tm: Información sobre la cantidad de memoria disponible y usada df –h: Información sobre todo los dispositivos montados en la maquina du -bh|more:Información sobre el espacio ocupado por cada subdirectorio, comenzando en el directorio raíz (/) Información del sistema n cat /proc/cpuinfo: Información sobre el microprocesador n cat /proc/interrupts: Información sobre las interrupciones en uso (IRQs) n cat /proc/filesystems: Información sobre los sistemas de archivos que se pueden utilizar (compilados en el kernel). n who: Información sobre los usuarios usando el sistema. id LPT Información sobre UID, GID y GROUPS del usuario LPT n n Last: Información sobre los últimos usuarios que han usado el sistema. Ifconfig: Información sobre los distintos dispositivos de red n Netstat: Información valiosa sobre la conexion de red n Encendido y apagado n n n n n n n shutdown -h 5: Apaga el sistema en 5 minutos después de ejecutarse y no reinicia. shutdown -h now: Apaga el sistema en ese momento y NO lo vuelve a reinicia halt: Apaga el sistema de la misma manera que el comando anterior shutdown -r 5: Apaga el sistema 5 minutos después de haberlo ejecutado y reinicia shutdown -r now: Apaga el sistema en ese momento y reinicia reboot: Reinicia el sistema Startx: Inicia el entorno gráfico. Teclas de acceso Rapido Rapido:: n ctrl + alt + F1-F6: Cambian a una de las 6 consolas de texto n ctrl + alt + F7-F12: Cambian a una consola gráfica (si hay un cliente X arrancado en ella) n ctrl + alt + supr: Fuerza un reinicio del sistema n shift + RePag: Hace scroll hacia arriba para ver lo que se ha salido de pantalla. n shift + AvPag: Hace scroll hacia abajo. Entorno Gráfico n ctrl + alt + backspace: Kill al cliente X n ctrl + alt [+] y ctrl + alt [-]: (con el + y el - del teclado númerico) Cambian la resolución de las X si hemos configurado las X para trabajar con varias resoluciones simultaneas. n ctrl + alt [flechas izda. o dcha.]: Van al anterior o siguiente escritorio virtual. Comandos en redes multiusuario n n n n n n n n who, w: lista de usuarios conectados. whoami : información sobre el usuario actual. Finger: información sobre usuarios. mail: programa de correo muy simple. write: manda un mensaje a la pantalla de un usuario. wall: mensaje a todos los usuarios. talk: establecer una charla con otro usuario. telnet: se conecta a otra máquina. Otros comandos n n n n n n n n superformat: Formatea disquetes en modo msdos (se requiere fdutils) mkfs.ext2: Formatea discos o diskettes en formato ext2 de linux fsck: Comprueba un disco (como el scandisk de DOS) cat: listar archivos (en MSDOS seria type). head: Como cat pero solo las primeras líneas. tail: Como cat pero solo las últimas lineas. more: Permite ver un archivo con pausas. updatedb: Actualiza la base de datos de ficheros del disco duro Montado de sistemas de archivos n n n n n mount /dev/cdrom /mnt/cdrom: Monta la unidad de CD-ROM en el directorio especificado (/mnt/cdrom) mount -t vfat /dev/hda1 /mnt/win_c: Monta el disco "C" con partición FAT en el directorio especificado. umount /mnt/cdrom: Desmonta el CD-ROM. umount /mnt/win_c: Desmonta el disco duro "C“ mount /dev/sda1 /mnt/flash: Monta una unidad flash en el directorio /mnt/flash Manipulación de archivos n n n n n n n n cd <directorio>: Ingresa al directorio indicado cd ..: Vuelve al directorio raíz ls –l: Lista los archivos del directorio actual con todos sus atributos. ls –F: Lista los archivos del directorio actual indicando su tipo (archivo, directorio, etc) ls –lC: Lista los archivos del directorio actual en columnas. ls –a: Lista los archivos invisibles del directorio actual.(los que empiezan con "../../../../home/jbarrios/.") rm lpt.txt: Borra el archivo con nombre lpt.txt. rm -rf /LPT: Borra el directorio LPT con todos los archivos que tiene dentro (Recursivo). Manipulación de archivos n n n n rm -Rf /LPT: Borra el directorio LPT en forma recursiva y SIN PREGUNTAR. -Ojo con este comando siendo Rootcp lpt.txt /home/LPT: Copia el Archivo lpt.txt dentro del directorio /home/LPT mv lpt.txt /home/LPT: Mueve el Archivo lpt.txt dentro del directorio /home/LPT mv lpt.txt linux_para_todos.txt: Renombra el archivo Búsqueda de archivos n find: Permite realizar búsquedas con varios criterios, find tiene un gran numero de opciones. Sintaxis: find directorio_inicio [opciones] Opciones de find n n n n n -atime n: Archivos accedidos en las ultimas n horas. -ctime b: Archivos cambiados en las últimos n horas. -amin n: Archivos accedidos en los últimos n minutos -empty: Archivos vacíos -mmin n: Archivos modificados en los últimos n minutos Opciones find n n n -nouser: Archivos cuyo UID no coincide con alguno de los especificados en el archivo passwd. nogroup: Archivos cuyo GID no coincide con alguno de los especificados en el archivo grouop -perm modo: Archivos que tengan establecido el permiso como el modo especificado. Opciones find n n -name nombre: Búsqueda de archivos en base al nombre. -print: Muestra en pantalla los archivos encontrados. Ejemplos: ¿Qué hacen? n n n n find / -name '*.c' -print find / -mtime 14 –ls find / -perm +111 find / -perm +111 Uso de comodines*** Otros comando para localizar archivos n n locate: Localiza archivos que se encuentren en la base de datos. whereis: Busca archivos que se encuentran en el PATH. Comprimir y descomprimir archivos n Archivos tar Empaquetar: tar -cvf archivo.tar /dir/a/comprimir/ Desempaquetar: tar -xvf archivo.tar Ver contenido tar -tf archivo.tar Comprimir y descomprimir archivos n Archivos gz Comprimir: gzip archivo Descomprimir: guzip archivo.gz Comprimir y descomprimir archivos n Archivos bz2 Comprimir: bzip archivo Descomprimir: bzip2 -d archivo.bz2 Comprimir y descomprimir archivos n Archivos zip Comprimir: zip archivo.zip archivos Descomprimir: unzip archivo.zip Ver contenido: unzip -v archivo.zip Comprimir y descomprimir archivos n Archivos rar Comprimir: rar -a archivo.rar archivos Descomprimir: rar -x archivo.rar Ver contenido: rar -l archivo.rar Ver contenido: rar -v archivo.rar Permisos en el sistema de archivos n Una de las más apreciadas características del sistema Unix (y sus derivados Linux) es que pose un sencillo mecanismo que permite especificar quien puede y quien no puede acceder a los archivos del sistema. Existen tres clases distintas de usuarios y tres modos de acceso a los archivos. Tipos de usuarios: n n Propietario: usuario que ha creado el archivo. Éste tiene la capacidad de controlar quien puede acceder al archivo (además del Superusuario o Root). Grupo: Conjunto de usuarios, normalmente relacionados por un departamento o función. Un usuario de este tipo puede acceder al archivo, pero no puede cambiar quien puede acceder a el. n Todo el mundo: Cualquier otro usuario del sistema. Este tipo de usuarios sólo pueden acceder al archivo si a éste se le han especificado los permisos expresamente. Modos de acceso n Para cada una de las tres clases de usuarios existen tres modos de acceso diferentes: n Lectura (r) Permite examinar el contenido del archivo. Permite listar los archivos del directorio n Escritura (w) Permite cambiar el contenido del archivo. Permite crear y borrar archivos n Ejecución (x) Permite ejecutar el archivo como un comando. Permite buscar en el directorio Especificación de los permisos n Para especificar quien puede tener acceso a los archivos y que permisos tiene, es necesario asignar lectura (r), escritura (w) y ejecución (x) para cada uno de los tres tipos de usuarios: propietario, grupo y todo el mundo. n Estos permisos se deben asignar en el mismo orden que aparecen cuando se utiliza el comando ls -l o ll. Permisos de acceso n Siempre que este presente una letra (r, w, x), quiere decir que el usuario correspondiente tiene el permiso especificado; cuando en su lugar aparece un guión (-), el usuario no tiene el permiso correspondiente. Ejemplo: drwxr-xr-x drwxr-x---rw-r --r -x -rw-r --r -x 2 juan mate 2 juan mate 1 juan mate 1 juan mate 1024 Nov .2 14:36..img 96 Jul 30 08:48..includes 1292 Sep 27 11:03..index.html 306607 Apr 26 2001...intropy.swf Cambio de permisos: chmod n El comando chmod (change mode) es utilizado para cambiar los permisos de un archivo ordinario y de un directorio. n Existen dos formas de cambiar los permisos. Se pueden cambiar teniendo en cuenta los permisos existentes (modo simbólico), o se pueden asignar permisos independientemente de los existentes (modo absoluto). Modo simbólico n Cuando se utiliza el modo simbólico se pueden añadir o quitar permisos a los archivos o directorios. El formato del comando simbólico es: $ chmod [who] codigo-operador permisos ARCHIVO Valores de who n n n n u : Propietario del archivo g : Grupo del que el propietario es miembro o : Usuarios clasificados como otros a : Todos los usuarios del sistema (propietario, grupo y todo el mundo) Código -operador Código-operador Indica la operación que es va a realizar: + : añadir permisos - : quitar permisos Permiso r : Permiso de lectura w : Permiso de escritura x : Permiso de ejecución Ejemplo n Supongamos que el archivo "juan" tiene los siguientes permisos: rwx r-- r-- y suponemos que deseamos asignar al grupo de usuarios y al resto de usuarios del sistema, el permiso de ejecución; entonces pondríamos: chmod go +x dades Modo Absoluto n El modo absoluto se especifica con tres dígitos numéricos; cada número representa los permisos de cada usuario. Este dígito se obtiene, para cada tipo de usuario, a partir de los siguientes valores: 4 : permiso de lectura 2 : permiso de escritura 1 : permiso de ejecución. Combinación de los permisos 0 : ningún permiso 1 : permiso de ejecución 2 : permiso de escritura 3 : permiso de ejecución y escritura (1+2) 4 : permiso de lectura 5 : permiso de lectura y ejecución (4+1) 6 : permiso de lectura y escritura (4+2) 7 : permiso de lectura, escritura y ejecución (4+2+1) Sintaxis n La sintaxis para el comando chmod absoluto es: $ chmod modo archivo n Modo, Son tres dígitos numéricos. Cada uno de ellos corresponde a los permisos de cada tipo de usuario Por ejemplo: chmod 777 datos n Concede permisos de lectura, escritura y ejecución sobre el archivo datos, a todos los usuarios. Ejercicios Guiados n Realizar ejercicios indicados por el instructor Importancia de los permisos n n n n ¿Por qué son importantes los permisos? ¿En que casos prácticos los aplicarían? ¿Cómo es la protección de archivos en otros sistemas operativos? ¿Uso de ACL’s en linux? SECURE SHELL SECURE SHELL n Secure Shell (ssh) es un programa que permite realizar conexiones entre máquinas a través de una red abierta de forma segura, así como ejecutar programas en una máquina remota y copiar archivos de una máquina a otra. Tal y como se explica en el RFC de Secure Shell: "SSH(Secure Shell) es un programa para conectarse a otros equipos a través de una red, para ejecutar comandos en una máquina remota y para mover archivos de una máquina a otra. Proporciona una exhaustiva autenticación y comunicaciones seguras en redes no seguras" n n n n n Ssh provee fuerte autenticación y comunicación segura sobre un canal inseguro y nace como un reemplazo a los comandos telnet, ftp, rlogin, rsh, y rcp, los cuales proporcionan gran flexibilidad en la administración de una red, pero sin embargo, presenta grandes riesgos en la seguridad de un sistema. Adicionalmente, ssh provee seguridad para conexiones de servicios X Windows y envío seguro de conexiones arbitrarias TCP. Secure Shell admite varios algoritmos de cifrado entre los cuales se incluyen: Blowfish 3DES IDEA RSA Clientes de Secure Shell PRACTICA n n n Instalación del cliente de Secure Shell en Windows Conexión remota a servidor mediante SSH con cliente Windows para transferencia de archivos y ejecución de comandos Transferencia de archivos Modo comandos (ejemplos) n ssh -l micuenta maquina.remota En este ejemplo utilizamos la opción -l para proporcionar el login con el que tendremos acceso a la máquina remota. En este caso la cuenta es micuenta y la máquina es maquina.remota. n scp micuenta@máquina.remota:/tmpu/archivo /copias En este caso se copiará / tmpu/archivo localizado en la máquina remota maquina.remota al directorio /copias en la máquina local. Se utilizó la cuenta micuenta para acceder al servidor. Modo comandos (ejemplos) Sftp login@host Permite realizar una conexión de ftp segura n UNIDAD 4. ADMINISTRACIÓN DEL SISTEMA (6.5 horas) Administración de usuarios (3 horas) El arranque del sistema (1.5 horas) Niveles de ejecución (1 hora) Administración de procesos (1 hora) Administración de usuarios Tareas principales Contenido n n n n ¿Qué es un usuario? El archivo de passwords Dando de alta un usuario Eligiendo y verificando passwords ¿Qué es un usuario? n n Un usuario no siempre es un individuo Un usuario es una entidad que puede ejecutar un programa o guardar un programa n n n n puede tratarse de otros sistemas computacionales ciertas funciones lanzadas automáticamente grupo de personas con la misma función Un usuario designa un individuo que puede conectarse al sistema, editar archivos, lanzar programas y usar el sistema de forma clásica Características usuario n n Nombre de usuario (login name) Identificador de usuario (UID) n n n permite que el sistema identifique al usuario Pertenece a un grupo de usuarios identificado por un identificador de grupo (GID) Información almacenada en un archivo de passwords /etc/passwd El archivo //etc/passwd etc/passwd n n n n n Archivo ASCII manipulable con un editor Debe poder ser leído por todos los usuarios para ciertos comandos A cada usuario le corresponde una entrada Los programas realizan una búsqueda secuencial de las entradas (no vale la pena ordenar las entradas) Los campos de cada entrada están separados por carácter de dos puntos (:) Campos de passwd n n n n El identificador del usuario El password del usuario Eventualmente información sobre fecha del último cambio del password y sobre el periodo para realizar dichos cambios. Dicha información separada por comas Un valor numérico, de 0 a 6000 que representa el UID del usurario n n n n Otro valor numérico, que no pase de 600, que representa el GID Un campo de comentarios El directorio hogar El shell de inicio Ejemplo //etc/passwd etc/passwd xetaboada:ypK2awu1hBqGs:1326:41:Eunice Taboada Ibarra Dacs Eco/fin:/home/dacs/etaboada:/bin/csh dgonzale:dU8MloKM7Af8Y:10106:41:John Derick Lucien Gonzalez Aldape:/home/dacs/dgonzale:/bin/csh abermude:Fe5/I/SHg53HM:2404:43:Adriana Diaz Bermudez Prepa:/home/prepa/abermude:/bin/csh sa448020:iqC7X.6SUEASE:1832:215:David Bernal G Di Soporte Tecnico:/home/sap/sa448020:/bin/csh rcaballe:j3KODtAuQ8uEQ:8773:41:Ricardo Caballero Valdes:/home/dacs/rcaballe:/bin/csh csanchez:YYoHlXDeYHanM:1212:43:Concepcion Sanchez V Idiomas-prepa:/home/prepa/csanchez:/bin/csh sduenas:1ube95PeMQZOQ:10140:41:Lic. Sergio Francisco Duenas Rodriguez:/home/dacs/sduenas:/bin/csh rperrin:rKWggQip3DIHQ:10021:44:Lic. Rafael Fausto Perrin De La Rosa:/home/dae/rperrin:/bin/csh gperrin:Bj87cqMfSXzmc:10012:44:Lic. Graciela Patricia Perrin De La Rosa:/home/dae/gperrin:/bin/csh rvilla:4McraxhY8AVB6:8839:43:Rafael Villa:/home/prepa/rvilla:/bin/csh lvelio:IifTeZS98v/H.:1248:41:Lucrecia Velio-mejia Lopez Dacs Contab.:/home/dacs/lvelio:/bin/csh tpacheco:UNbyYZ.dNCY3.:10275:510:Ing. Tito Omar Pacheco Lopez:/home/dia/tpacheco:/bin/csh marmoral:iNTdxOLbUnz1o:1448:45:Marisol Gonzalez Morales Di Bci:/home/di/marmoral:/bin/csh jorozco:QOdtJnflY.1.s:3656:206:Jorge Orozco S:/home/unicom/jorozco:/bin/csh jmagana:*LK*:1549:510:J Roberto Ramirez Magana Dia Sistemas Informacion:/home/dia/jmagana:/bin/csh bmerced:FzniebygQZSRs:1613:510:Bernando Isidro De La Merced S Dia :/home/dia/bmerced:/bin/csh amoreno:1voQAFGgLpxWg:5161:40:Asuncion Moreno 3122:/home/dia/amoreno:/bin/ksh smtp:NP:0:0:Mail Daemon User:/: mahernan:AxBSyYy/tiHM6:1166:203:Magdalena Hernandez S:/home/dsa/mahernan:/bin/csh aantunan:nhd5kmfXoGVP.:8937:41:Alma L Antunano Arias Dacs:/home/dacs/aantunan:/bin/csh lloyola:MsOCEKy7Nt7Ws:1676:44:Lourdes Loyola Tanaka Dae Exporta:/home/dae/lloyola:/bin/csh esiller:weSa7EYPrvRdk:10113:41:Mtro. Elida Estela Trevino Siller:/home/dacs/esiller:/bin/csh Archivo de passwords Shadow En el Unix estándar existe un archivo que contiene los passwords encriptados de los usuarios; este archivo es accesible en lectura para todo usuario. Esto permite a un cracker el obtener una copia de este archivo y dedicarse a descifrarlo en la comodidad de su casa. Bajo esta premisa, algunos sistemas han propuesto un mecanismo llamado shadow password file. Con este mecanismo, los passwords encriptados no son almacenados en el archivo passwd sino en un archivo llamado shadow. Al no tener acceso a los passwords encriptados, un cracker tendrá mayor oposición para descifrar un password. Desafortunadamente, en ocasiones se olvida prevenir que un archivo shadow sea públicamente accesible. Añadiendo usuarios n Para añadir un usuario se requiere de n Pasos obligatorios: n n n Editar archivo password Crear directorio home Pasos crear ambiente usuario n n n Editar el archivo de grupo Copiar los archivos de arranque Asignar un password incial Comando para administración de usuarios n useradd: <opciones> usuario: Permite dar de alta un nuevo usuario Opciones: -c: Comentario -s: Shell -d: directorio del usuario Userdel: Elimina un usuario del sistema. Ejemplos: n #userdel usuario #userdel –r usuario usermod <opciones> usuario: Permite modificar la configuración de la cuenta de un usuario. Opciones: -c: Comentario -s: Shell -d: directorio del usuario n Selección de un password n n n n n n n No use el nombre del login en ninguna forma No use nombres propios, apellidos o sobrenombres. No use el nombre de familiares o amigos. No use palabras contenidas en diccionarios No use información relacionada con usted No use únicamente dígitos o la misma letra No use menos de siete caracteres Checadores de passwords n La mejor manera de probar la seguridad de los passwords es usar un programa descifrador. n Algunas herramientas que pueden ser útiles para revisar los passwords del sistema son: n COPS - OBVIOUS n CRACK - PASSWORD+ Bloqueando una cuenta n n Consiste en impedir que un usuario entre al sistema Una opción es cambiar el password n n n n n escribir cadena **No Login** en /etc/passwd no suficiente ya que puede entrar desde otros hosts Segunda opción: cambiar el shell de inicio por el comando /bin/false Posible combinación de las dos Ultima opción: borrar entrada del usuario El comando passwd n n n n Permite que un usuario cambiar su password Solo root lo puede cambiar en su nombre Se pregunta el antiguo y dos veces el nuevo Algunas reglas en ciertos sistemas. Operaciones restringidas a root n n n n n n n n n Montar y desmontar sistemas de archivos Cambiar el directorio root de un proceso Crear archivos de tipo periférico Ajustar el tiempo del reloj Cambiar propietarios de los archivos, (en algunos sistemas) Utilizar hasta el límite los recursos del sistema Asignar el nombre del host del sistema Interfaz de configuración de red Dar de baja el sistema PRACTICA: n Visualización de los archivos: n n n n passwd shadow group Proceso de respaldo de archivos de passwords n Arrange en sigle mode n n Lilo grub El arranque del sistema, inittab y demonios de arranque. PRACTICA n n Revisión del proceso de arranque de linux Inicio interactivo NIVELES DE EJECUCION n Linux proporciona diferentes niveles de ejecución cada uno permite tener diversas funcionalidades. Esta nivel de ejecución determina el comportamiento del sistema. Cada nivel esta determinado por un numero entre 0 y 6. El nivel de ejecución por default se almacena en /etc/inittab NIVELES n n n n n n n 0 — Halt (Parada del sistema) 1 — Modo monousuario 2 — Multususario sin soporte NFS 3 — Modo multiusuario completo 4 — No se utiliza (definible por el usuario) 5 — Modo multiusuario completo (con login gráfico basado en X) 6 — Reboot (Reiniciar el sistema) NIVEL 4 n Muchos usuarios configuran estos niveles de ejecución de tal forma que dejan este nivele como estándar de ejecución. Esto permite moverse rápidamente desde o hacia su configuración personalizada sin cambiar el conjunto normal de características de los niveles de ejecución estándar Los scripts RC ((Run Run config config)) n Debido al numero de servicios que linux necesita gestionar, se usan los scripts rc. El principal es /etc/rc.d/rc y es responsable de llamar a los script adecuados en el orden correcto para cada nivel de ejecución. Los scripts RC ((Run Run config config)) n Para cada nivel de ejecución existe un subdirectorio en el directorio /etc/rc.d. En donde se sigue un esquema de nombres del tipo rcX, donde X es un nivel de ejecución. Por ejemplo, todos los scripts del nivel de ejecución 3 se encuentran en /etc/rc.d/rc3.d El demonio syslogd n Se lanza automáticamente al arrancar un sistema y es el encargado de guardar informes sobre el funcionamiento de la máquina. Recibe mensajes de las diferentes partes del sistema (núcleo, programas...) y los envía y/o almacena en diferentes localizaciones, tanto locales como remotas. Syslogd n Las líneas de este archivo que comienzan por `#' son comentarios, con lo cual son ignoradas de la misma forma que las líneas en blanco; si ocurriera un error al interpretar una de las líneas del fichero, se ignoraría la línea completa. Revisando syslog.conf n cat /etc/syslog.conf PRACTICA n n n Revisión de los archivos de arranque Cambio de niveles de ejecución Personalización del archivo de configuración del demonio syslogd. Administración de procesos ¿Qué es un proceso en un SO? n n n Proceso: Programa en ejecución que utiliza recursos del sistema. Un proceso varia su estado en diferentes situaciones siguiendo las políticas del SO. Estado de los procesos: n n n n Running Zombie Waiting Killed El comando ps n n Muestra todos los procesos del sistema, su estado, tamaño, tiempo de cpu, tiempo de reloj, etc. Existe una serie de opciones que modifican el comportamiento del comando. Opciones ps n n n n -a: Muestran todos los procesos asignados a una terminal. -r: Muestra todos los proceso en estado de ejecución. -x: Muestra todos los procesos que no tienen un terminal controlado. -u: muestra los propietarios de los proceos. Ps ((process process status) n n n n -f: Muestra las relaciones padre/hijo de los procesos. -l: Produce un listado en formato largo. -A: Muestra todos los procesos -e: Muestra todos (tambien) Vista interactiva n El comando top es una vista interactiva del ps, top refresca en pantalla cada 2 o 3 segundos, configurable por el usuario. n El principal problema de top es que monopoliza la CPU, por lo que tal vez sea conveniente desactivar el permiso de ejecución a los usuarios comunes y silvestres. Comando kill n n Permite envíar una señal a un proceso. Para un administrador de sistemas el rango de señales mas importante esta entre los números 9 y 15. Es necesario especificar el proceso al que se le envía la señal Tipos de Señales ((signals) signals) n n -9: Es la forma brutal de parar el proceso, en lugar de pedirle que pare el SO mata el proceso, el único caso en que falla es cuando el proceso realiza un llamada a sistema. -1: También conocida como HANGHUP, esta le pide de forma amable al proceso que se muera, pero por lo regular no hacen caso Dejar un proceso trabajando n En alguna ocasión será útil poder dejar un proceso en ejecución aun cuando hayamos abandonado la sesión, para esto se utiliza el comando nohup. #nohup comando & Se genera un archivo de salida PRACTICA n Revisión de comandos de administración de procesos. UNIDAD 5. EDITORES (2.5 horas) El editor VI. (2 hora) El editor pico. (.5 horas) EDITOR VI Editor VI n El editor VI es un editor que opera en modo consola, utilizado por muchos usuarios de Unix. El editor VI posee características muy útiles para los programadores, pero muchos principiantes evitan emplearlo porque se ven abrumados por sus variadas funciones. n El editor VI permite al usuario crear nuevos archivos o editar los ya existentes. La orden para iniciar el editor VI editor es vi , seguida del nombre del archivo. n vi archivo Salir de vi n :q Es decir, que una vez se encuentre en modo comando , ha de teclear dos puntos, seguido de 'q' y continuación pulsar Enter. n Si el archivo ha sufrido alguna modificación, el editor le avisará de esa circunstancia y no le permitirá cerrarlo. Si quiere eludir ese mensaje, la orden para salir de VI sin guardar los cambios es :q! Salir y guardar n Naturalmente, lo habitual en un editor es que usted desee guardar los cambios que ha hecho. La orden para hacerlo es :w. También puede combinar esta orden con la de salir, del siguiente modo :wq. Y si lo desea puede guardar los cambios en un archivo diferente, especificando el nombre de éste tras :w. Por ejemplo, si quiere guardar el archivo en el que está trabajando con otro nombre, digamos archivo2, entonces tendría que escribir : w archivo2 y Enter. Los dos modos de VI n El editor Vi cuenta con dos modos: comando e insertar. n El modo comando permite introducir órdenes para manipular el texto. Normalmente estas órdenes no tienen más que uno o dos caracteres, pudiendo así introducirse con pocas pulsaciones. n El modo insertar hace que todo lo que se pulse en el teclado se incorpore al archivo. Ordenes sencillas n n n n n :a Nos coloca en el modo insertar. Los caracteres pulsados se irán insertando tras el cursor. Si se especifica una cifra, el texto que haya sido insertado se repetirá ese número de veces. :h mueve el cursor una posición hacia la izquierda. :i nos coloca en el modo insertar. Los caracteres pulsados se irán insertando tras el cursor. Si se especifica una cifra, el texto que haya sido insertado se repetirá ese número de veces. :j mueve el cursor una línea hacia abajo. :k mueve el cursor una línea hacia arriba. n n n n :l Mueve el cursor una posición hacia la derecha. :r sustituye el carácter sobre el que se encuentra el cursor. Especifique la cifra para sustituir un número determinado de caracteres. :u Deshace el último cambio operado en el archivo. Si pulsa u de nuevo, se rehará el cambio. :x Borra el carácter que se halla bajo el cursor. Cifra especifica cuántos caracteres han de borrarse. Se borrarán los caracteres que se encuentran tras el cursor. Cortar y extraer n n n n :d^ Borra desde la posición del cursor hasta el comienzo de la línea. :d$ Borra desde la posición del cursor hasta el fin de la línea. :dw Borra desde la posición del cursor hasta el fin de la palabra. :3dd Borra tres líneas desde la posición del cursor hacia abajo. Copiar n n n n :y^ Copia desde la posición del cursor hasta el comienzo de la línea. :y$ Copia desde la posición del cursor hasta el fin de la línea. :yw Copia desde la posición del cursor hasta el fin de la palabra. :3yy Copia tres líneas desde la posición del cursor hacia abajo. Copiar n n n n :y^ Copia desde la posición del cursor hasta el comienzo de la línea. :y$ Copia desde la posición del cursor hasta el fin de la línea. :yw Copia desde la posición del cursor hasta el fin de la palabra. :3yy Copia tres líneas desde la posición del cursor hacia abajo. Pegar n Las órdenes para pegar son p y P. La única diferencia entre ellas es el lugar en que pegan respecto del cursor. p pega el contenido del búfer general o específico tras la posición del cursor, mientras que P lo pega delante del cursor. Si se especifica una cifra antes de la orden pegar, el texto se pegará el número de veces que se haya indicado. PRACTICA n n Ejercicios de comandos en vi Abrir, cerrar y guardar archivos EL EDITOR PICO Comandos básicos n Ctrl k : borra y copia la línea actual en el clipboard. n Ctrl u : inserta el contenido del clipboard en el texto. n Ctrl o : salva el texto. n Ctrl x : sale del editor. Pregunta si se desea salvar primero en caso de haberse modificado el texto. PRACTICA n n Instalación de pico desde RPM Edición de documentos con pico UNIDAD 6. INSTALACION DE PROGRAMAS (3.5 horas) Administración de paquetes RPM (yum, apt-rpm) (1.5 horas) APT -GET (Debian packages), Emerge (Gentoo) (.5 horas) Compilación de programas desde código fuente. (1.5 hora) Paquetes RPM ((RedHat RedHat Package Manager) n rpm -ivh lpt -news-0.1-5.i386.rpm Instala el paquete lpt -news-0.1-5.i386.rpm (Use preferentemente -Uvh) n rpm -Uvh lpt -news-0.1-5.i386.rpm Instala o actualiza el paquete lpt -news-0.1-5.i386.rpm (usar este, preferentemente, para instalar) n rpm -e lpt -news Desinstala el paquete lpt-news (no se necesita ni la versión ni la extinción) n rpm -qf /bin/ls Muestra en que paquete esta incluido el comando ls. n rpm -q lpt -news Muestra la versión del paquete ya instalado lpt -news. n rpm -ql lpt -news Lista los componentes del paquete lpt -news, previamente instalado, con sus respectivas rutas. n rpm -qa Lista todos los paquetes instalados en el sistema(no se necesita privilegios de ROOT) n rpm -qa |grep ltp Lista todos los paquetes que contengan lpt en su nombre. PRACTICA n Realización de diferentes ejercicios en donde se ponga en practica los comando analizados anteriormente APT -GET Y YUM APT-GET n n n Mantener al día los sistemas puede ser verdaderamente complicado si no se cuenta con una suscripción a Red Hat Network, Red Carpet Express o se tiene un buen ancho de banda. Una práctica solución alternativa consiste en utilizar APT para RPM. El APT original es una verdadera bonanza nacida en Debian y ampliamente utilizada desde hace mucho tiempo. APT para RPM fue trabajo realizado por el equipo de desarrollo de Conectiva Linux, otros desarrolladores optaron por portar está útil herramienta a otros sistemas operativos basados sobre RPM n Como nota al pie, apt-get es un sistema tan poderoso que nos permite actualizar el sistema completo a una versión más nueva de la distribución con tan sólo indicarlo, sin romper dependencias ni crear conflictos. apt-get es gran parte de la razón por la que los miles de usuarios de esta distribución la aprecian tanto por sobre de RedHat y otras distribuciones Procedimiento de instalación n n Dscargar el software requerido para la versión de sistema operativo utilizado, desde http://apt.freshrpms.net/ A continuación se instala APT en el sistema: rpm -Uvh apt -0.5.5-cnc4.1-fr1.20030325a.2.i386.rpm Uso de APT n Si, por citar un ejemplo, se descarga e instala la versión para Red Hat Linux 9.0, este incluye por defecto las definiciones necesarias de los servidores y directorios apropiados en sources.list. Solo será necesario ejecutar: apt-get update n A continuación y para completar el procedimiento, solo se necesita ejecutar un solo comando más, el cual, y salvo por el kernel, descargará todo el software disponible que requiera el sistema e inmediatamente después ejecutará su instalación automática: apt-get upgrade Uso de APT n Si se requiere desinstalar algún paquete, así como también todo aquello de lo que dependa de éste, puede ejecutarse lo siguiente: apt-get remove nombre_cualquier_paquete n Si se desea utilizar un frente gráfico para el comando apt-get, puede utilizarse Synaptic, mismo que se puede instalar a través de FreshRPMS.net, y además en versión para GTK2: apt-get install synaptic Synaptic YUM n Yum es el sistema de administración de paquetes incluido en el nuevo sistema FEDORA Core 1, su funcionamiento es muy similar al de APT -GET. Compilación desde fuentes n Descompactar el archivo (tar, gz, etc) n ./configure: Hace las acciones necesarias para saber si es posible compilar el programa con las herramientas que tenemos en nuestro ordenador y las prepara para ello. n make: Hace la compilación del programa. Convierte el código fuente (texto) a formato binario que puede comprender y ejecutar el ordenador. n make install: Copia los ficheros ejecutables y librerías generados a sus directorios correspondientes para que puedan ser ejecutados correctamente por nosotros. n Si nos aparece algún error, no pasamos al siguiente. Con eso, si todo ha ido bien, ya tenemos el programa instalado en nuestro sistema. Solo nos queda ejecutarlo. PRACTICA: n Proceso de compilación de programas n n Ejemplos de desempaquetado Comando configure, make, install UNIDAD 7. REDES (3.5 horas) Configuración de parámetros de red. (1.5 horas) Utilidades de red: netstat, nmap, traceroute (1 horas) Firewalling con iptables (1 hora) UNIDAD 7. REDES (3.5 horas) Configuración de parámetros de red. (1.5 horas) Utilidades de red: netstat, nmap, tcpdump (1 horas) Firewalling con iptables (1 hora) Configuración de parámetros de red. Ifconfig n Se usa para dar acceso al núcleo a una interfase. Esto incluye la asignación de una dirección IP y otros parámetros, así como la activación de la interface. Por activación nos referimos a permitir que el núcleo envía y recibe datagramas IP a través de la interface. El modo mas sencillo de invocar esta herramienta n ifconfig interface direccion-ip La Interface de Bucle o Loopback n La primera interface en ser activada es la interface de lazo o loopback: n # ifconfig lo 127.0.0.1 Para comprobarlo n Solo se debe teclear el comando ifconfig sin especificar opción alguna Interfaces Ethernet n La configuración de una interface Ethernet es mas o menos igual que la de la interface de lazo. Solo requiere algunos parámetros mas cuando esta usando varias subredes ifconfig eth0 200.23.66.54 netmask 255.255.255.0 Agregando la puerta de enlace n route add default gw vlager Opciones de IFCONFIG n up Marca la interface como "up" o activa, es decir, disponible para que sea usada por la capa IP. Esta opción va implícita cuando lo que se da en la línea de comandos es una dirección n netmask mascara Esto asigna una mascara de subred a una interface. Se puede dar como un valor de 32 bits en hexadecimal precedido del prefijo 0x, o en notación de cuaterna usando números decimales separados por puntos. n down Marca la interface como "down" o inactiva, es decir, inaccesible a la capa IP. Esto inhabilita cualquier trafico IP a través de la interface. n broadcast dirección La dirección de difusión se obtiene, generalmente, usando la parte de red de la dirección y activando todos los bits de la parte correspondiente a la máquina. Una tarjeta promiscua!!! n promisc Pone la interface en modo promiscuo. En una red de difusión, esto hace que la interface reciba todos los paquetes, independientemente de si eran para ella o no. Esto permite el análisis del trafico de red utilizando utilidades como filtros de paquetes, también llamado SNIFFER. Se trata de una buena técnica para localizar problemas de red que de otra forma resultan difíciles. NMAP n n n Es un escáner de puertos. Varios consultores de seguridad consideran esta herramienta como la clave para realizar análisis de vulnerabilidades. Esta herramienta tomó cierta popularidad al aparecer por unos segundos en la segunda parte de la película Matrix. Nmap fue creada por Fyodor en 1997. Actualmente se puede obtener la versión 3.30 del sitio www.insecure.org TCPDUMP n n Seguridad informática Tcpdump es uno de los sniffers más usados en GNU/Linux y otros Unix El comando tcpdump permite examinar los encabezados de paquetes transmitidos vía TCP/IP. NETSTAT n Permite verificar los servicios TCP y UDP disponibles en nuestra computadora, asi como las conexiones actualmente establecidas. Practica n Ejecutar los comandos revisados durante el tema. EJEMPLOS DE FIREWALLING IPTABLES n Desde la series 1.1, el kernel de Linux posee en mayor o menor medida capacidad para filtrar tramas. Originalmente (1994), ipfwadm era la herramienta proporcionada con Linux para la implementación de políticas de filtrado de paquetes en este clon de Unix; derivaba del código de filtrado en BSD (ipfw), y debido a sus limitaciones (por ejemplo, sólo puede manejar los protocolos TCP, UDP o ICMP) ipfwadm fue reescrito para convertirse en ipchains a partir del núcleo 2.1.102 (en 1998). IPTABLES n Esta nueva herramienta (realmente, todo el subsistema de filtrado de los núcleos 2.2) introdujo bastantes mejoras con respecto a la anterior, pero seguía careciendo de algo fundamental: el stateful ; era difícil ver a un sistema tan potente como Linux sin una herramienta de firewalling decente, libre por lo que surgió iptables. Ejemplos prácticos Bloquear KaZaA com IPTables: iptables -A FORWARD -d 213.248.112.0/24 -j REJECT iptables -A FORWARD -p TCP --dport 1214 -j REJECT n Bloquear AIM com IPTables: iptables -A FORWARD --dport 5190 -j REJECT iptables -A FORWARD -d login.oscar.aol.com -j REJECT n Bloquear ICQ com IPTables: iptables -A FORWARD -p TCP --dport 5190 -j REJECT iptables -A FORWARD -d login.icq.com -j REJECT n Ejemplos prácticos #> Bloquear MSN Messenger com IPTables: iptables -A FORWARD -p TCP --dport 1863 -j REJECT iptables -A FORWARD -d 64.4.13.0/24 -j REJECT n Bloquear Yahoo Messenger com IPTables: iptables -A FORWARD -d cs.yahoo.com -j REJECT iptables -A FORWARD -b scsa.yahoo.com -j REJECT n Flush de reglas del firewall iptables -F iptables -X n Ejemplos prácticos Cerrar conexiones entrantes desde eth0 y hacia el puerto (local) 80 (HTTP) iptables -A INPUT -p tcp -i eth0 --dport 80 -j DROP n n Enmascarar por las conexiones procedentes de la red 10.0.0.0 como si lo hicieran desde la ip configurada en la interfaz eth0. (típica regla en un router linux compartiendo la conexión eth0 con la red local conectada a eth1). iptables -t nat -A POSTROUTING -o eth0 -s 10.0.0.0/255.255.255.0 -j MASQUERADE Ejemplos prácticos n Deshabilitar los paquetes ICMP entrantes de tipo echo (8) para el firewall (regla INPUT) y la red protegida (regla FORWARD). iptables -A OUTPUT -i eth0 -p icmp --icmp-type 8 -j DROP iptables -A FORWARD -i eth0 -p icmp --icmp-type 8 -j DROP FIN.