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)
[email protected]
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.