Вы находитесь на странице: 1из 185

SISTEMA

OPERATIVO
GNU/LINUX

Que es Linux?
Linux es un sistema operativo libre de 32 64
bits .Linux es distribuido bajo la Licencia
General Pblica de GNU, que significa que
puede ser distribuido, copiado y modificado
gratuitamente.
Tiene todas las prestaciones que se pueden
esperar de un sistema Unix moderno tales
como:
multitarea,
multiusuario,
multiplataforma, multiprocesador, memoria
virtual, entre muchas otras.

De Donde Proviene?
Linux fue escrito por un estudiante de la
Repblica de Finlandia llamado Linus
Torvalds en el ao de 1991 con la ayuda de
varias personas a nivel mundial. Torvalds
estuvo trabajando con MINIX, un pequeo
sistema operativo, pero descubri que tenia
algunos defectos .

y fue por esto que empez a crear su propio


sistema operativo, el cual esta siendo utilizado
cada da mas por grandes empresas , as mismo
cada da aumenta el numero de programas y
aplicaciones desarrolladas para esta plataforma.

Beneficios Con Linux


Linux es muy robusto, estable y rpido: Ideal
para servidores y aplicaciones distribuidas. A
esto se aade que puede funcionar en mquinas
humildes: Linux puede correr servicios en un
x86 a 200 MHz con calidad.

Linux es libre: Esto implica no slo la


gratuidad del software, sino tambin que
Linux es modificable y que Linux tiene una
gran cantidad de aplicaciones libres en
Internet.
Linux ya no est restringido a personas con
grandes conocimientos de informtica: Los
desarrolladores de Linux han hecho un gran
esfuerzo por dotar al sistema de asistentes de
configuracin y ayuda, adems de un sistema
grfico muy potente.

Caracteristicas
Linux es un sistema operativo multiusuario y
multitarea ; esto significa que el sistema
operativo puede gestionar varias tareas y
usuarios de manera simultanea.
Para ello utiliza el concepto de tiempo
compartido que significa que el sistema
operativo mantiene una lista o cola de tareas
en espera de ejecucin, compartiendo el
tiempo y los recursos del sistema.

Multitarea
El ordenador puede estar haciendo varias
cosas a la vez, y no tendr que esperar a que
acabe una para hacer otra, la multitarea esta
controlada por el sistema operativo no por
las aplicaciones, por lo que a diferencia de
otros sistemas operativos nunca se quedara
parado por culpa de una mala aplicacin que
consuma todos los recursos del ordenador.

Multiusuario
Puede haber varias personas usando el
ordenador, compartiendo el microprocesador,
as puede ponerle un par de pantallas y
teclados y estar otra persona navegando por
Internet, escribiendo una carta, mientras
usted esta en otra haciendo otra cosa
completamente diferente, y estaran ambos en
el mismo ordenador. Linux garantiza la
privacidad y la seguridad de los datos entre
usuarios.

Estructura
En la estructura de Linux aparecen cuatro
elementos situados en bloques diferentes,
cada uno de los cuales tiene
encomendado una funcin:
* Hardware.
* Ncleo o Kernel.
* Shell.
* Usuario

Tipos De Archivos
Linux gestiona varios tipos de archivos; para
l casi todos los objetos se consideran
archivos. Los tipos de archivos en Linux son
los siguientes:
* Archivos Ordinarios
* Archivos Vinculos
* Archivos Directorios
* Archivos Especiales

Ordinarios Y Vinculos
* Archivos ordinarios.: Contienen la
informacin con la que trabaja cada usuario.
Normalmente son archivos que contienen
texto, programas escritos por el usuario en
lenguaje C, etc
* Archivos vinculos No es especficamente
una clase de archivo. Es un segundo
nombre asignado a un archivo.

Directorios Y Especiales
* Directorios. Son archivos especiales que
contienen referencias a otros archivos.
Cuentan con informacin sobre archivos
ordinarios, subdirectorios, vnculos, vnculos
simblicos, etc
* Especiales. Suelen representar dispositivos
fsicos como unidades de almacenamiento,
impresoras, terminales, etc.

Estructura De Archivos
El punto de partida es el directorio raz,
representado por el / . Dentro de cada
directorio no hay limitacin en el nmero de
archivos y de directorios. Se llama rbol de
directorio a la estructura que contiene el
sistema de archivos
necesario para utilizar Linux. Este rbol
directorio parte del directorio raz.

Estructura De Directorios

Estructura De Directorios

Estructura De Archivos
Tipo

Dispositivo

hd

Discos duros IDE

sd

Discos dduros SCSI

scd

Cdrom SCSI

st

Unidades de cinta SCSI

ht

Unidades de cinta IDE

fd

Unidades de disquete

lp

Puertos Paralelos

tty

Terminales o consolas

pty

Terminates remotas

tyys

Puertos seriales

cua

Puertos de comunicacion

eth

Tarjetas de red Ethernet

Estructura De Archivos
Los dispositivos que admiten particiones
generalmente estas se designan con letras, asi
por ejemplo las unidades IDE que son las mas
comunes en cualquier PC actual su
designacin sera la siguiente
Canal IDE

Dispositivo Linux

Primario Maestro

/dev/hda

Primario Esclavo

/dev/hdb

Secundario Maestro

/dev/hdc

Secundario Esclavo

/dev7hdd

Dispositivos
Para Linux todo es un archivo, incluyendo
dispositivos como discos duros, cdroms,
disquetes, unidades de cinta, memorias usb,
etc.Estos archivos se encuentran bajo el
directorio /dev.

Geometria Del Disco


La geometra del disco describe las posibles
direcciones sobre las cuales los datos pueden
ser almacenados y accesados.
Direcciones fsicas (Physical Address) Los
datos son direccionados por el cilindro,
cabeza y sector que los contiene. Bloque de
direcciones lgicas (Logical Block

Geometra Del Disco


Address (LBA)) Los datos son direccionados
por (LBA)) el nmero relativo de sector.
Cada esquema de direcciones impone sus
propias restricciones Algunos drivers BIOS;
pueden accesar nicamente los primeros 1024
cilindros (0 ... 1023), esto en LBA es hasta 8GB.

Particiones

Sistemas De Archivos
/dev/null es un archivo especial que descarta
toda la informacin que se escribe o
redirecciona en l.
/dev/zero es un archivo especial que provee
tantos caracteres null (ASCII NUL, 0x00; no
el carcter ASCII "0", 0x30) como se lean
desde l.
Btrfs es un sistema de archivo copy-on-write
anunciado por Oracle corporation para
GNU/linux.

Sistemas De Archivos
Ext2 fue el sistema de ficheros por defecto de
las distribuciones de linux Red Hat, Fedora
Core y Debian
Ext3 es un sistema de archivos con registro por
diario (journaling).
Ext4 El sistema de archivos ext4 es capaz de
trabajar con volmenes de hasta 1 exbibyte y
ficheros de tamao de hasta 16 TiB.
Extended File System fue el primer sistema de
archivos creado especficamente para el
Sistema Linux

Sistemas De Archivos
Filesystem Visualizer es un explorador de
ficheros 3D usando OpenGL
Filesystem Hierarchy Standard fine los
directorios principales y sus contenidos en el
Sistema operativo GNU/Linux y otros
sistemas de la familia Unix.
FUSE (Linux) es un mdulo cargable de ncleo
para sistemas operativos de computador tipo
Unix,

Sistemas De Archivos
Journaled Filesystem es un sistema de archivos
de 64-bit con respaldo de transacciones
creado por IBM.
Logical Volume Manager LVM es una
implementacin de un administrador de
volumenes logicos para el kernel Linux.
Reiser 4 es un sistemas de archivos para
ordenadores.

Sistemas De Archivos
Reiser FS es un sistemas de archivos de
propsito general, diseado e implementado
por un equipo de la empresa Namesys
Sysfs es un sistema de archivos virtual
XFS es un sistema de archivos de 64 bits con
journaling de alto rendimiento creado por SGI

Sistemas De Archivos
Metadatos: garantiza la estructura interna de
datos, el orden de
la estructura y la
disponibilidad de los datos, el rendimiento del
sistema depende en gran medida de este
concepto.
Inodo: contienen la informacin respecto de un
fichero: nombre, tamao, nmero de enlaces,
fecha hora de creado.

Sistemas De Archivos
Journal: es una estructura interna de disco con
un tipo de protocolo en el que el driver del
sistema de archivos introduce los (meta)datos
del sistema de archivos que van a ser
modificados.
Journaling: reduce enormemente el tiempo de
elaboracin de un sistema linux, ya que de
este modo el driver del sistema de archivos
no debe iniciar una bsqueda de los
metadatos modificados en todo el disco. En
vez de eso, basta con ver las entradas del
journal

Kernel
Es un software que constituye la parte ms
importante del sistema operativo
Se puede obtener descargndolo desde:
http://www.kernel.org

Instalacion Ubuntu
11.04

INSTALACION
Paso 1: Bootear la pc desde el cd. Esperar que
se cargue.
Paso 2: Elegir su idioma preferido. En este caso
espaol
Paso 3: Asegurarse que se cumplen los 3
requerimientos. En realidad solo es necesario que
tengas suficiente espacio en el disco y tener la pc
enchufada. Estar conectado a internet no es
necesario pero es altamente recomendable. Asi
como instalar las 2 casillas que se presentan en
esta ventana.

INSTALACION

INSTALACION
Paso 4: Si tienen Windows en su pc Ubuntu lo
reconocera y les preguntara si quieren instalar
ubuntu junto con el. En realidad les
reconocer tambin si tienen alguna otra
distribucin de Linux. Podrn instalarlo junto
o simplemente borrar todo y tener solo
Ubuntu. O hacer el particionado manual.

INSTALACION

INSTALACION
Paso 5: Mientras el particionado ya ha
comenzado ahora vamos a continuar con el resto
de los pasos para instalar ubuntu. Lo siguiente es
elegir la posicin geogrfica para establecer la
hora. Hagan click en el mapa donde corresponda.

INSTALACION
Paso 6: Ahora se elige la distribucin del
teclado. Esto no es el idioma del sistema sino la
distribucin que tienen las teclas de su teclado.
Por ej: los teclados de estados unidos no tienen .
Como mi teclado es espaol elijo Espaa

Entorno Grfico

Escritorio KDE
KDE es un proyecto de software libre para la
creacin de un entorno de escritorio e
infraestructura de desarrollo para diversos
sistemas operativos como GNU/Linux, Mac
OS X, Windows, etc. De acuerdo con su
pgina web, KDE es un entorno de escritorio
contemporneo para estaciones de trabajo
Unix. KDE llena la necesidad de un escritorio
amigable para estaciones de trabajo Unix,
similar a los escritorios de Mac OS X o
Windows.4

Escritorio KDE
Las aplicaciones KDE estn traducidas a
aproximadamente 75 idiomas3 y estn
construidas con los principios de facilidad de
uso y de accesibilidad moderna en mente. Las
aplicaciones de KDE 4 funcionan de forma
completamente nativa en GNU/Linux, BSD,
Solaris, Windows y Mac OS X.
La K, originariamente, representaba la
palabra Kool,5 pero su significado fue
abandonado ms tarde.

Escritorio KDE

Escritorio KDE

Escritorio Gnome
GNOME es un entorno de escritorio e
infraestructura de desarrollo para sistemas
operativos Unix y derivados Unix como
GNU/Linux, BSD o Solaris; compuesto
enteramente de software libre.

Escritorio Gnome
El proyecto fue iniciado por los mexicanos
Miguel de Icaza y Federico Mena y forma
parte oficial del proyecto GNU. Naci como
una alternativa a KDE bajo el nombre de
GNU Network Object Model Environment.
Actualmente adems del espaol se encuentra
disponible en 166 idiomas.

Escritorio Gnome

Escritorio Gnome

Comandos Basicos
Linux

Comandos Basicos
Comando

Descripcion

cat fich1 [...fichN] Concatena y muestra


un archivos

Ejemplo
cat
/etc/passwd

archivos

cat dict1
dict2 dict

Cd

Cambia de directorio

cd /tmp

ls

Lista el contenido del


directorio

s -l /usr/bin

pwd

Muestra la ruta del


directorio actual

Pwd

rm fich

Borra un fichero

rm foo.c

rm -r dir

Borra todo un directorio rm -rf prog_dir

rmdir dir

Borra un directorio
vaco

rmdir prog_dir

Comandos Basicos
Comando

Descripcion

Ejemplo

find dir test accin Encuentra archivos.

find . -name
``.bak'' -print

grep [-cilnv] expr


archivos

Busca patrones en
archivos

grep mike
/etc/passwd

mkdir dir

Crea un directorio.

mkdir tmp

mv fich1 ...fichN
dir

Mueve un archivo(s) a un mv a.out


directorio
prog1

mv fich1 fich2

Renombra un archivo.

less / more fich(s)

Visualiza pgina a pgina more


un archivo.
muy_largo.c
less acepta comandos vi

mv .c prog_dir

less
muy_largo.c

Comandos Basicos
at [-lr] hora [fecha]

Ejecuta un comando
mas tarde

at 6pm
Friday
miscript

cal [[mes] ao]

Muestra un calendario
del mes/ao

cal 1 2025

date [mmddhhmm]
[+form]

date [mmddhhmm]
[+form]
Muestra la hora y la fecha

date

echo string

Escribe mensaje en la
salida estndar

echo ``Hola
mundo''

kill [-seal] PID

Matar un proceso

kill 1234

man comando

Ayuda del comando


especificado

man gcc

Comandos Basicos
passwd

Cambia la contrasea.

passwd

ps [axiu]

Muestra informacin
sobre los procesos

ps -ux

que se estn ejecutando


en el sistema

ps -ef

Muestra informacin de
los usuarios conectados
al sistema

who

who / rwho

COMANDOS
BASICOS REDES

Comandos Basicos Redes


ping: comprueba el estado de la conexin con
un equipo remoto. Bsicamente enva un
paquete y espera un mensaje de respuesta, de
esta forma determina si ve o no ve un
equipo.

Comandos Basicos Redes


$

ping
google.com
PING google.com (72.14.205.100) 56(84) bytes of data.
64 bytes from qb-in-f100.google.com (72.14.205.100):
icmp_seq=1
ttl=243
time=189
ms
64 bytes from qb-in-f100.google.com (72.14.205.100):
icmp_seq=2
ttl=243
time=189
ms
64 bytes from qb-in-f100.google.com (72.14.205.100):
Icmp_seq=3
ttl=243
time=192
ms

google.com
ping
statistics

3 packets transmitted, 3 received, 0% packet loss, time


1998ms
rtt min/avg/max/mdev = 189.896/190.702/192.259/1.101 ms

Comandos Basicos Redes


traceroute (tracert): arma el camino que sigue
un paquete hasta llegar a su destino,
mencionando los routers por los que va
saltando. Arranca desde el router de tu ISP o
de tu red domstica hasta llegar al equipo
remoto final.
$

traceroute
google.com
traceroute to google.com (74.125.45.100), 30
hops max, 40 byte packets

Comandos Basicos Redes


netstat: muestra estadsticas de red.
ifconfig: muestra toda la informacin acerca
de la configuracin de TCP/IP de tu
equipo, interfaces de red, IP, MAC
Address, gateway, DNS, etc. Tambin
permite, por consola, setear los valores
para las mencionadas variables.

Administracin
Bsica

Usuarios y Grupos
* La herramienta primaria para aadir usuarios

en linux es adduser:
# adduser nombre del usuario
* El comando userdel, eliminara un usuario
de /etc/passwd. Si se quiere tambin borrar
toda la informacin de su directorio
personal
se usara la opcin -r:
# userdel -r nombre del usuario

Usuarios y Grupos
* Para cambiar la contrasea del usuario Se utiliza
el comando passwd.
# passwd nombre del usuario
* Para aadir un nuevo grupo:
# addgroup nuevogrupo
* Para eliminar un grupo:
# groupdel nombre_de_grupo

Usuarios y Grupos

Usuarios y Grupos
* Para cambiar el grupo por defecto de un usuario:
# usermod -g grupo usuario
* Para aadir el usuario a otros grupos:
# usermod -G lista_de_grupos

Atributos De Archivos

Asignacin de permisos

Asignacion De Permisos
Cuando se crea un archivo o directorio, los
permisos de acceso asignados se establecen de
acuerdo al complemento del valor asignado por el
comando umask
umask 027
El complemento es 750
777

Asignacion De Permisos
Si despus de ejecutar este comando umask 027,
se crea un archivo, por ejemplo archivo1.txt, este
quedar con los siguientes permisos:
rwxr-x--- archivo1.txt
Naturalmente despus de creado los archivos o
directorios, estos permisos se pueden ajustar con
el comando chmod

Asignacion De Permisos

APT
Advanced Packaging Tool (Herramienta
Avanzada de Empaquetado), abreviado APT,
es un sistema de geston de paquetes creado
por el proyecto Debian. APT simplifica en
gran medida la instalacin y eliminacin de
programas en los sistemas GNU/Linux.

APT
Para instalar usando apt lo primero se hace una
bsqueda para saber como se llama el paquete
que queremos instalar entonces escribimos
apt-cache search PAQUETE
un ejemplo seria: apt-cache search adobe.
Entonces aparecer el resultado de la bsqueda
veremos como se llama el paquete y para
instalar haremos un
apt-get install adobe

APT
y cuando termine todo estar listo para usarlo.

Si luego queremos eliminarlo solo tenemos que


escribir lo siguiente
apt-get remove adobe

Shells
Una Shell de Unix o tambin shell, es el trmino
usado epara referirse a un interprete de
contactos, el cual consiste en la interfaz de
usuario tradicional de los sistemas operativos
basados en unix y similares como GNU/
Linux.

Shells Scripts
/etc/shells
Shell bash : Bourne Again, El mas usado en Linux
Copyright (C) 1989 por Free Software Foundation,
Inc.
Es un interpretador de ejecucin de comandos, los
comandos, pueden ser leidos desde la entrada
estandar (standard input) o desde un archivo
Cumple IEEE POSIX, shell y especificaciones de
herramientas (IEEE Working Group 1003.2)
Shell tcsh: la shell C mejorada
Shell Z:
Shell Public Domain Korn

Redireccion Del Stream


Cada proceso en Unix sigue las tres siguientes
corrientes
estndar (standard streams)
* Entrada estndar: entrada de comando
* Salida estndar: salida de comando
* Error estndar: mensajes de error
ls -l > archivo.txt
* < archivo Toma un archivo como entrada
estndar
* > archivo Escribe la salida estndar a un
archivo

Metacaracteres
Metacaracteres en nombre de archivo
* Algn string de cero o ms caracteres
? Algn carcter solamente
[abc] Algn carcter especificado, rangos
[!abc] Algn carcter excepto los
especificados
~user Directorio principal del usuario
Si antepone un backslash (\) a un metacaracter,
el significado especial del metacaracter se
ignora.

Shells Scripts
El aspecto ms importante de los comandos
Unix, es que el lenguaje de comandos se hace
extensible
*
*
*
*

# Comentario
cmd & : Ejecuta cmd en background
cmd1; cmd2 : Ejecuta cmd1 seguido de cmd2
(cmd1: cmd2) : Ejecuta cmd1 seguido de
cmd2, tratndolos como un grupo de
comandos

Shells Scripts
* cmd1 cmd2 : Usa la salida de cmd2 como
argumentos de cmd1
* cmd1 && cmd2: Ejecuta cmd2 si cmd1 tuvo
xito (no fall)
* cmd1 || cmd2 : Se ejecuta cmd2 si falla cmd1
* cmd1 | cmd2 : Ejecuta cmd1, cmd2
recibiendo como entrada la salida de cmd1
* {cmd1 ; cmd2}: Ejecuta cmd1 seguido por
cmd2 en el ambiente actual
* (exp1 ? exp2 : exp3): Operador ternario (if
exp1, then exp2, else exp3)

Variables De Entorno
x=y
x = ${y}
x = $y
x = ${y}es
x = $yes
x = $y
x = \$y
export x,y,z
export x=$y

Por defecto una variable de


ambiente nicamente hace parte del
ambiente local, para hacer una
variable de ambiente accesible a los
programas y procesos iniciados
desde el ambiente local, especifique
la variable como argumento para el
comando export.

Estructuras De Control
Se pueden usar algunos comandos para alterar la
secuencia estndar de ejecucin de los comandos en
un shell script.
if test-command

if test-command

then
commands
fi

then
commands
else
Commands
fi

Estructuras De Control
case string
in
patter1)
commands
;;
patter2)
commands
;;
(etc.)
esac

while
test-command
do
commands
done
until
test-command
do
commands
done

for list
do
commands
done
for x in list
do
commands
done

Estructuras De Control
El comando break puede ser usado en el cuerpo
de un while, until o for, cuando es ejecutado
inmediatamente termina el ciclo. De la misma
forma el comando continue, pero este termina la
iteracin en curso del ciclo.
exit 0: termina la ejecucin del shell script.

Variables De Entorno
x=y
x = ${y}
x = $y
x = ${y}es
x = $yes
x = $y
x = \$y
export x,y,z
export x=$y

Por defecto una variable de


ambiente nicamente hace parte del
ambiente local, para hacer una
variable de ambiente accesible a los
programas y procesos iniciados
desde el ambiente local, especifique
la variable como argumento para el
comando export.

Variables De Entorno

Administracion Del
Servidor Linux

Configuracion De Red
Las versiones recientes de Linux, incluyen una
gran variedad de drivers para tarjetas de red
Ethernet. Los dispositivos Ethernet son eth0,
eth1, eth2, etc. A la primera tarjeta detectada por
el ncleo se le asigna eth0 y al resto se les
asigna secuencial mente en el orden en que sean
detectadas.Por defecto, en algunas distribuciones
el ncleo de Linux slo intenta buscar una
tarjeta de red, porlo que tendr que pasarle
algunos parmetros para forzar la deteccin de
las dems.

Configuracion De Red
Una vez que tenga el nucleo conpilado para
reconocer su tarjeta Ethernet la configuracion de
la tarjeta se hace asi:
Edite el archivo: #/etc/network/interfaces
Y establezca los parametros de Ip y Netmask

Configuracion De Red
Otra forma de configurar la red es asi:
root # ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
root # route add -net 192.168.0.0 netmask 255.255.255.0 eth0

Inicializacion del servicio de red


/etc/init.d/network (start/stop/restart)
Ifconfig eth0 down desactiva la tarjeta de red

Configuracion De Red
Configuracion de la interfaz loopback
root# ifconfig lo 127.0.0.1
root# route add -host 127.0.0.1 lo
root# route -n imprime la tabla de rutas del PC
root# netstat -r imprime la tabla de rutas del PC

Configuracion De Red
/etc/services puertos segn RFC-1340.
Es una base de datos que asocia un nombre con
un puerto de servicio de la mquina. Es un
archivo de texto en el que cada lnea representa
una entrada a la base de datos. Cada entrada
comprende tres camposseparados por cualquier
nmero de espacios en blanco (espacio o
tabulador). Los campos son:
nombre puerto/protocolo sobrenombres # comentario

Configuracion De Red
# Updated from RFC 1340, Assigned Numbers
(July 1992). Not all
# ports are included, only the more common ones.
tcpmux 1/tcp # TCP port service multiplexer
echo 7/tcp
echo 7/udp
discard 9/tcp sink null
discard 9/udp sink null
systat 11/tcp users
daytime 13/tcp
daytime 13/udp

Configuracion De Red
/etc/protocols nmeros segn RFC-1340.
Es una base de datos que correlaciona nmeros de
identificacin de protocolos con sus nombres.
Lo usan los programadores para especificar
protocolos por su nombreen sus programas y
tambin algunos programas. Los campos son:
* Nombre del protocolo nmero sobrenombres

Configuracion De Red
# Updated for NetBSD based on RFC 1340, Assigned
Numbers (July 1992).
ip 0 IP # internet protocol, pseudo protocol number
icmp 1 ICMP # internet control message protocol
igmp 2 IGMP # Internet Group Management
ggp 3 GGP # gateway-gateway protocol
ipencap 4 IP-ENCAP # IP encapsulated in IP
(officially IP)
st 5 ST # ST datagram mode
tcp 6 TCP # transmission control protocol

Configuracion De Red
/etc/networks
El archivo /etc/networks tiene una funcin similar
a la del archivo /etc/hosts. Proporciona una base
de datos sencilla de nombres de
red y direcciones de red. Su formato difiere en
queslo puede haber dos campos por lnea y los
campos estn codificados as:

Configuracion De Red
Nombre de la red direccin de red
loopnet
127.0.0.0
localnet
192.168.0.0
amprnet
44.0.0.0

/etc/hosts
En el archivo /etc/hosts, colocamos los nombres y
direcciones IP de las mquinas locales. Si se
inserta un nombre en este fichero, entonces su
PC no consultar a un servidor de dominio
paraobtener la direccin IP.

Configuracion De Red
La desventaja de emplear este archivo es que hay
necesidad de hacerle mantenimiento (actualizarlo)
cada vez que alguna direccin de alguna mquina
cambie. En un sistema bien administrado, las
nicas entradas que suelen aparecer son la
interfaz de loopback(prueba en bucle) y el
nombre de la mquina local.
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 servidor1.local servidor1

Configuracion De Red

Servidor DHCP
Dynamic Host Configuration Protocol -Protocolo
de configuracin dinmica de host,
es
un protocolo de red que permite a los clientes de
una
red IP obtener
sus
parmetros
de
configuracin automticamente. Se trata de un
protocolo de tipo cliente/servidor en el que
generalmente un servidor posee una lista de
direcciones IP dinmicas y las va asignando a los
clientes conforme stas van estando libres.

Servidor DHCP
* Instalamos servidor DHCP :
apt-get install dhcp3-server
* Abrimos archivo dhcp.conf y configuramos el
servidor DCHP, revisamos la interfaz que se
encuentra conectada y cual es, si es eth1 cambios
de la siguiente manera:
#interface

Servidor DHCP
* Cambiar a :
interface=eth1
* Ahora activamos servidor DHCP :
#range=192.168.0.50 192.168.0.150
* Y modificndola para adaptarla al rango de IP
que queramos servir:
range 172.10.0.10 172.10.0.40;
* Y dejando el archivo dhcp.conf de la siguiente
forma:

Servidor DHCP
ddns-update-style none;
ddns-updates off;
allow unknown-clients;
subnet 172.10.0.0 netmask 255.255.255.0 {
range 172.10.0.10 172.10.0.40;
option broadcast-address 172.10.0.255;
option domain-name "maquina1.minombre.com";
option domain-name-servers 200.21.200.2, 200.21.200.79;
option routers 172.10.0.1;
option broadcast-address 172.10.0.255;
option subnet-mask 255.255.255.0;
default-lease-time 600;
max-lease-time 7200;
interfaces=eth0; }

Servidor DHCP
* Reiniciamos servidor DHCP Dhcp3-server :
/etc/init.d/dhcp3 restart

Servidor DHCP

NFS
Network File System
Provee acceso remoto transparente sobre archivos
compartidos a travs de la red
* Designado para ser portable a travs de
diferentes mquinas, sistemas operativos,
arquitecturas de red, yprotocolos de transporte.
* Remote Procedure Call (RPC): es usado para
implementar el protocolo NFS.

NFS
Se han especificado dos protocolos separados
para NFS:
* Network Lock Manager (NLM) Protocol: provee
anuncios y bloqueo sobre archivos grabados
(modificados)
* Network Status Monitor (NSM) Protocol: provee
aplicaciones coninformacin de status de los host de
la red. Versin 2 (V2) y Versin 3 (V3)

*Implementaciones:
*NFS Server en el espacio del usuario
*NFS Server en el espacio del kernel

NFS
Se han especificado dos protocolos separados
para NFS:
* Network Lock Manager (NLM) Protocol: provee
anuncios y bloqueo sobre archivos grabados
(modificados)
* Network Status Monitor (NSM) Protocol: provee
aplicaciones coninformacin de status de los host de
la red. Versin 2 (V2) y Versin 3 (V3)

*Implementaciones:
*NFS Server en el espacio del usuario
*NFS Server en el espacio del kernel

NFS
NFS Server en el espacio del Usuario
Usa llamadas RPC en el espacio del usuario con
las siguientes caractersticas:
* La jerarqua del directorio exportada por el
montaje del servidor NFS del espacio del usuario
seala dentro de un sistema de archivos exportado
transparencia; as el cliente ve la misma jerarqua
del directorio que se ve en el servidor.

NFS
Puesto que el servidor est funcionando en el
espacio del usuario, es fcil hacer el uid y el gid
tras as como el acceso DNS, NIS, NIS+, etc.
Este servidor tiene algunas desventajas: Puesto
que est funcionando en el espacio del usuario,
tiene que hacer la copia adicional de la memoria
entre el usuario y los espacios del kernel

NFS
Tambin hay gastos indirectos para el interruptor
del contexto. Pueden ser muy costosos. No hay
ayudas para NLM ni NSM. Bloqueos de registro
de archivos no estn disponibles.
* La puesta en prctica actual no es multihilo que
afecta su funcionamiento. Puesto que el control
de la exportacin se inicializa en el tiempo de
lanzamiento, el proceso delservidor tiene que ser
recomenzado cuando se cambia elarchivo
/etc/exports.

NFS
NFS Server en el espacio del Kernel
Descriptor de archivo
* Las definiciones de archivo y su descriptor
especificadas en el protocolo NFS V2 son
vagas. La especificacin V2 dice solamente que
un descriptor de archivo es oculto al cliente y que
puede contener cualquier informacin necesaria
del servidor para distinguir un archivo
individual.

NFS
Sin embargo, hay muchas ambigedades: Si 2
descriptores del archivo del mismo servidor son
idnticas, pueden los clientes asumirlos para
representar el mismo archivo en el servidor? Si 2
descriptores del archivo del mismo servidor
son diferentes, pueden los clientes asumirlos para
representar los diversos archivos en el servidor?
Se deben todos los enlaces duros representar por
el misma descriptor de archivo?

NFS
Cundo un cliente renombra un archivo dentro
del mismo sistema de archivos, debe contar con el
descriptor de archivo anterior a los cambios? La
especificacin V2 no es clara en esto
y diversas puestas en prctica de NFS los
interpretan diferentemente. Eso conduce a los
problemas de la interoperabilidad entre diversas
puestas en prctica NFS.

NFS
* Compartir /usr/local y /home
*Archivo: /etc/exports
/home (rw,root_squash) titanium(rw,no_root_squash)
/usr/local (ro,root_squash) titanium(rw,no_root_squash)
/opt *.dejanews.com(ro) admin(rw,no_root_squash)
/opt/private (noaccess)
/vol/00 192.168.50.0/255.255.255.0(ro) 10.16.0.0/255.255.0.0(rw)

Demonio: nfsd
*/etc/rc.d/init.d/nfsd start
* /etc/rc.d/init.d/nfsd stopt
* /etc/rc.d/init.d/nfsd restart

NFS
Programar el demonio en los niveles de
ejecucin:
* chkconfig nfsd on, chkconfig level 345 nfsd on|off
* Editor de Niveles SysV

Seguridad
Configurar un nivel de seguridad para portmap.
Esto se consigue editando los archivos
/etc/hosts.allow y /etc/hosts.deny.

NFS
Debemos especificar que direcciones IP o rango
de direcciones IP pueden acceder a los servicios
de portmap y que no pueden hacerlo. Ejemplo
para determinar en /etc/hosts.allow como rango
dedirecciones IP permitidas los siguiente:
portmap:192.168.5.0/255.255.255.0
portmap:192.168.10.25
portmap:192.168.40.8
portmap:210.180.51.17
portmap:108.202.14.23
portmap:ALL

NFS
/etc/hosts.deny lo siguiente:
portmap:ALL
Verificar si hay soporte NFS en el Kernel
Archivo: /proc/filesystems encontrando una
entrada para NFS
Verificando la existencia del mdulo nfs.o en el
directorio mdulos del Kernel
Modificar el archivo:
/etc/fstab para incluir la informacin sobre el
sistema de archivos a
montar

NFS
Modificar el archivo:
/etc/fstab para incluir la informacin sobre el
sistema de archivos a montar
quicksilver:/home /home nfs bg,hard,intr,nosuid,rw,no_root_squash 1 0
quicksilver:/usr/local / usr/local nfs bg,hard,intr,rw,no_root_squash
10

*Crear los puntos de montaje adecuados y montar


el sistema de archivos /
#showmount e quicksilver

NFS

Servidor Web Apache


rpm q apache
rpm i apache-1.3.6-7.i386.rpm
apache- 1.3.6HTTP: Hypertext Transfer Protocol
Demonio: httpd (Puerto TCP:80)
/etc/rc.d/init.d/httpd start
/etc/rc.d/init.d/httpd stopt
/etc/rc.d/init.d/httpd restart

Servidor Web Apache


Archivo de configuracin:
/etc/httpd/conf/httpd.conf
Documento predeterminado: index.html
Programar el demonio en los niveles de
ejecucin:
chkconfig httpd on, chkconfig level 345 httpd
on|off
Editor de Niveles SysV

Servidor Web Apache


NameVirtualHost 192.168.5.20
# VirtualHost example:
<VirtualHost 192.168.5.20>
ServerAdmin gerente@dominio1.com.co
DocumentRoot /var/www/html
ServerName www.dominio1.com.co
ErrorLog logs/www.dominio1.com.co-error_log
logs/www.dominio1.com.coCustomLog logs/www.dominio1.com.co-access_log common
logs/www.dominio1.com.coScriptAlias /cgi-bin/ "/var/www/cgi-bin/
/cgi"/var/www/cgi-bin/
<Directory "/var/www/cgi-bin">
"/var/www/cgiAllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
AddHandler cgi-script .cgi

Servidor Web Apache


<VirtualHost 192.168.5.20>
ServerAdmin gerente@dominio1.com.co
DocumentRoot /var/www-sitio2/html
/var/wwwServerName www.dominio2.com.co
ErrorLog logs/www.dominio2.com.co-error_log
logs/www.dominio2.com.coCustomLog logs/www.dominio2.com.co-access_log common
logs/www.dominio2.com.co</VirtualHost>

Notese que quedan dos web sites en la misma


maquina y con la misma IP

Servidor Web Apache


/var/www/html/robots.txt
User-agent: *
Disallow: /cgi-bin/
Disallow: /email-addresses/
Disallow: /manual/
Disallow: /mrtg/
Disallow: /images/
Disallow: /usage/
Disallow: /webmail/
Disallow: /horde/
Disallow: /php/
Disallow: /chat/
User-agent: WebZIP
Disallow: /
User-agent: WebStripper
Disallow: /
User-agent: Teleport Pro

Disallow: /
User-agent: Wget
Disallow: /
User-agent: eCatch
Disallow: /
User-agent: WebCopier
Disallow: /

Resolucion De Nombres
El sistema de resolucin de nombres es una parte
de la biblioteca estndar de Linux.
Su funcin principal es proporcionar un servicio
para convertirlos nombres de las mquinas tales
como www.nic.co adirecciones IP como
157.253.50.16.

Resolucion De Nombres
Es necesario saber a qu dominio pertenecen sus
mquinas.
El software de resolucin de nombres
proporciona el servicio de traduccin haciendo
consultas a un Servidor de Nombres de
Dominio (Domain Name Server), por lo que
deber saber la direccin IP del servidor de
nombres (nameserver) local que vaya a usar

Resolucion De Nombres
Nombre de dominio local
domain maths.wu.edu.au
Dominios alternativos para completar el nombre
de una mquina
search maths.wu.edu.au wu.edu.au
Direcciones IP de Servidores DNS para
hacerles consultas de nombres
nameserver 192.168.10.1
nameserver 192.168.12.1

Resolucion De Nombres
El archivo /etc/host.conf es el lugar donde se
configuran algunos elementos que gobiernan el
comportamiento del cdigo de resolucin de
nombres.
/etc/host.conf
order hosts,bind
multi on

Resolucion De Nombres
Esta configuracin le dice al resolutor de nombres
examine el archivo /etc/hosts antes de intentar
consultar a unservidor de nombres, y que
devuelva todas las direcciones vlidas de una
mquina que encuentre en el archivo /etc/hosts,
en lugar de slo el primero, si no se encuentra en
este archivoel nombre de la mquina a resolver, la
consulta se enva comosegunda alternativa al(los)
servidor(es) de nombres DNS conocido(s), en el
archivo /etc/resolv.conf

Servidor DNS
Domain Name Service
Demonio: named (puerto tcp:53)
Solo cacheo (caching only nameserver)
Un servidor de nombres de ``slo cacheo''
(caching only nameserver) obtendr la respuesta
a las solicitudes de nombre provenientes de su
red preguntando a servidores externos,
recordando la respuesta para la prxima vez que
lo necesite.

Servidor DNS
*Instalamos el paquete bind
apt-get install bind9
*Verificamos que realice consultas
(verificar que sea consultado el 127.0.0.1):
# nslookup
> www.google.com.co
Server:
127.0.0.1
Address:
127.0.0.1#53

con

Servidor DNS
Non-authoritative answer:
www.google.com.co
canonical name = www.google.com.
www.google.com
canonical name = www.l.google.com.
Name: www.l.google.com
Address: 74.125.229.84
Name: www.l.google.com
Address: 74.125.229.80
Name: www.l.google.com
Address: 74.125.229.81
Name: www.l.google.com
Address: 74.125.229.82
Name: www.l.google.com
Address: 74.125.229.83

Servidor DNS
*Configuramos el nombre de dominio para
crear dns primario, ejemplo minombre.com:
nombre de archivo minombre.com dentro
de /etc/bind

Servidor DNS
Quedando de la siguiente forma:
$TTL 86400
@ IN SOA ns1.minombre.com. root.minombre.com. (
2011062701 ; serial
10800 ; refresh
3600 ; retry
86400 ; expire
3600) ; default
IN NS ns1.minombre.com.
IN MX 10 mail.minombre.com.
IN A 190.143.194.15
ns1 IN A 190.143.194.15
wwwIN A 190.143.194.15
mail IN A 190.143.194.15

Servidor DNS
* Modificamos el archivo named.conf.local
dentro de /etc/bind como se muestra a
continuacin y agregamos:
zone "culturared.org" {
type master;
file "/etc/bind/culturared.org";
allow-query {any;};
#Permitimos consultas a cualquier host.
};

Servidor DNS
* Reiniciamos servidor DNS Bind como sigue y
verificamos con dig :
/etc/init.d/bind9 restart
dig minombre.com

Servidor DNS

Servidor FTP
FTP: File Transfer Protocol
Paquetes: wu-ftp, vsftpd (Very Secure FTP
Daemon)
Demonio: wu-ftpd, vsftpd: Puerto TCP:21
FTP annimo:
rpm Uvh wu-ftp-2.8-1.i386.rpm
Archivo de configuracin:
etc/wu-ftpd.conf /etc/vsftpd.conf
Directorio publicacin:
/home/ftp/ /var/ftp/pub/ /srv/ftp/
Usuario: anonymous
Password: email@domain.com

Servidor FTP

Correo Electronico
* MUA: Mail User Agent
Mozilla Mail, Mutt, Pine, and Evolution
*MDA: Mail Delivery Agent
* LDA: Local Delivery Agent
*SMTP: Simple Mail Transfer Protocol
*Puerto TCP:25
#rpm q imap
#rpm Uvh imap-2001.rpm
*POP3: Post Office Protocol
Puerto TCP:110
IMAP: Interactive Mail Access Protocol
Puerto TCP:143

Correo Electronico

Correo Electronico

Correo Electronico

Correo Electronico

Correo Electronico

Correo Electronico

Xinetd
* Controla accesos a los servicios de Internet
* Reemplaza con seguridad a inetd
* El demonio xinetd conserva los recursos del
sistema
* Ofrece control de acceso y loggin, usado para
iniciarservidores de propsito particular, ofrecer o
negar acceso a determinados hosts

Xinetd
xinetd corre constatemente y escucha sobre todos
los puertos que este servicio administra, cuando
una conexin requiere de un servicio
administrado por xinetd, este se encarga
apropiadamente de iniciarlo
Archivo de configuracin:
/etc/xinetd.conf
serviceconf, ntsysv, chkconfig

Open SSH
* Acceso remoto hacia sistemas
* Utiliza un tunel seguro para la transmisin de
los datos
* Es free y Open Source, reemplaza a telnet, ftp,
rlogin, rsh, rcp y rdist
* Usa como llaves por defecto RSA (RivestShamir-Adelman): sistema criptogrfico de
claves/pblicas yclaves/privadas

Open SSH
Servidor sshd escucha el puerto TCP:22
Archivo de Configuracin:
/etc/ssh/sshd_config
Paquete: openssh-server.rpm
Archivo de Configuracin: /etc/ssh/sshd_config
ListenAddress 192.168.1.254 # Ip del servidor
PermitRootLogin no # permite login de root
X11Forwarding yes # ejec. aplicaciones grficas

Open SSH
Reiniciar el Servicio:
/etc/init.d/sshd {start | stop | restart}
Configurarlo en los niveles de ejecucin:
/sbin/chkconfig --level 345 sshd {off | on}
Acceso por shell:
ssh usuario@servidor
Acceso por SFTP:
sftp usuario@servidor

Open SSH
* Paquete: openssh-server-deb
* Programas
make-ssh-known-hosts: busca todos los host en
un dominio DNS y crea una base de datos
scp: Secure Copy de Secure Shell, copiar
archivos de un host a otro de forma segura
ssh: cliente de secure shell (similar a telnet)
ssh-add: agrega identidades (registra nuevas
clases)

Open SSH
ssh-agent: realiza autenticacion RSA en redes
sshd: servidor
ssh-keygen: generador de claves RSA
Emulador de Terminal
-SSH-cliente para windows

Open SSH

Servidor Proxy Squid


Modem s (*Externo, Interno), lneas Tel., NIC s
Routers y Servidores de Acceso
Seguridad y control de acceso a Internet
PPP: Point to Point
Protocol
Servidor PROXY
Cliente PROXY
Intranet, Extranet

Servidor Proxy Squid


Se requiere:
* squid-2.4.STABLE1
*iptables-1.2.4
*kernel-2.4.9
Archivos De Configuracion
/etc/squid/squid.conf
Parametros
http_port
cache_mem

Servidor Proxy Squid


ftp_user
ftp_passive on
cache_dir
Al menos una Lista de Control de Acceso
Al menos una Regla de Control de Acceso
cache_mgr
httpd_accel_host
httpd_accel_port
httpd_accel_with_proxy

Servidor Proxy Squid


# Default: http_port 3128
http_port 3128
http_port 8080
# Con Server Ram = 128 Mb
cache_mem 16 MB
# 500 Mb 16 subdirectorios con 256 niveles cada
uno
cache_dir ufs /var/spool/squid 500 16 256
ftp_user proxy@su-dominio.net

Servidor Proxy Squid


ftp_passive on
acl red-local src 192.168.5.0/255.255.255.0
acl permitidos "/etc/squid/permitidos"
# iNSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS

http_access deny all


cache_mgr paolarod@dominio.edu.co
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Servidor Proxy Squid


auth_param basic children 5
auth_param basic realm Servidor Proxy-Cache
Squid
auth_param basic credentialsttl 2 hours
# anteriores ya estn descomentadas.
est
auth_param
basic
program
/usr/lib/squid/ncsa_auth
/etc/squid/squidpasswords

Servidor Proxy Squid


LISTAS Y REGLAS DE ACCESO
Para generar el fichero de contraseas
correspondiente, se debe utilizar el siguiente
comando:
htpasswd
-c
nombre_usuario

/etc/squid/squidpasswords

Servidor Proxy Squid


Para modificar las contraseas del fichero de
contraseas, se debe utilizar el
siguiente comando:
htpasswd
/etc/squid/squidpasswords
nombre_usuario
El fichero /etc/squid/squidpasswords debe ser
leble para el usuario squid:
chown squid:squid /etc/squid/squidpasswords

Servidor Proxy Squid


# Lista que define mtodo de autenticacin:
acl password proxy_auth REQUIRED
# Listas de control de acceso por defecto:
acl all src 0.0.0.0/0.0.0.0
acl localhost src 127.0.0.1/255.255.255.255
# Listas que definen conjuntos de maquinas
acl redlocal src "/etc/squid/redlocal
acl privilegiados src "/etc/squid/privilegiados
acl restringidos src "/etc/squid/restringidos
acl administrador src 192.168.1.254

Servidor Proxy Squid


# Listas con palabras restringidas contenidas
en un URL
acl porno url_regex "/etc/squid/porno
# Contenido:
Sex
Extasis
xxx
Drug
Porn
Hustler
Girl
nude
Celebrit

Servidor Proxy Squid


# Lista de sitios inocentes que accidentalmente
sean bloqueados
acl noporno url_regex "/etc/squid/noporno
# Contenido:
missingheart
wirelessexcite
msexchange
msexcel
freetown

Servidor Proxy Squid


# Listas que definen tipos de extensiones
prohibidas
acl multimedia urlpath_regex
"/etc/squid/multimedia
# Contenido:
\.mp3$
\.pif$
\.sys$
\.avi$
\.lnk$
\.mov$
\.exe$
\.bat$

Servidor Proxy Squid


# Define una lista moderada de extensiones
prohibidas
acl peligrosos urlpath_regex
"/etc/squid/peligrosos
# Contenido:
\.bat$
\.pif$
\.exe$

Servidor Proxy Squid


# Reglas de control de acceso
# Regla por defecto:
http_access allow localhost
# Ejemplos de reglas de control de acceso
http_access allow restringidos password !
porno !multimedia
http_access allow redlocal password !porno !
peligrosos
http_access allow privilegiados password

Servidor Proxy Squid

INTEGRACION
WINDOWS Y LINUX

Servidor Samba
Samba es
una
implementacin
libre
del protocolo de
archivos
compartidos
de Microsoft
Windows (antiguamente
llamado SMB, renombrado recientemente a
CIFS) para sistemas de tipo UNIX. De esta
forma,
es
posible
que
ordenadores
con GNU/Linux, Mac OS X o Unix en general
se vean como servidores o acten como
clientes en redes de Windows.

Servidor Samba
* Instalamos samba
apt-get install samba samba-client smbfs
smbclient
* Instalamos configuracion grafica
apt-get install system-config-samba
* Editamos la configuracion de samba en el
archivo
nano smb.conf

Servidor Samba
*Modificamos el grupo de trabajo, buscamos la
linea que diga:
smbclientworkgroup = (reemplazamos
por
le nombre de nuestro grupo de
trabajo)
*Para compartir una carpeta:
Creamos carpeta con permisos ejemplo:
mkdir /home/compartidos
chmod 755 /home/compartidos

Servidor Samba
Abrimos configuracion y al final agregamos
[publico]
comment = Archivos Compartidos
path = /home/compartidos
public = yes
writable = no
Las opciones public = yes es para que pueda
acceder a la carpeta cualquier usuario y writable
= yeses para que no se pueda escribir.

Servidor Samba
*Compartir una unidad de cdrom
Abrimos el archivo smb.conf y agregamos al final
[cdrom]
comment = Unidad de cdrom compartida
path = /cdrom
public = yes
writable = no
browseable = yes

Servidor Samba
Agregamos las siguientes lineas a /etc/fstab para
que se pueda montar la unidad de cd
/dev/sr0
/cdrom
defaults,noauto,ro,user 0 0

iso9660

Para montar y desmontar unidad de cdrom


Montar unidad de cd mount /cdrom
Desmontar unidad de cd umount /cdrom

Servidor Samba
*Administracin
Agregar usuario
smbpasswd -a nombre_de_usuario
(Si desea usuario sin contrasea solo dar enter)
Cambiar contrasea de usuario
useradd -s /sbin/nologin usuario-windows
(Si desea usuario sin contrasea solo dar
enter).

Servidor Samba
*Reiniciar samba
/etc/init.d/smbd restart
restart smbd
*Acceso a los recursos compartidos
Windows
\\192.168.10.246\compartidos

Servidor Samba
Linux
smb://192.168.10.246/compartidos/
smbclient //192.168.10.246/compartidos/
*Reiniciar samba
/etc/init.d/smbd restart
restart smbd

Servidor Samba
* Compartir impresora con Windows
Hay que instalar CUPS, asi que instalamos cups
apt-get install cups
Luego en la terminal escribimos
/etc/init.d/cupsys restart

Servidor Samba
* Luego se puede entrar en la direccion
http://localhost:631 pagina de administracion de
CUPS
* En Windows se da aadir impresora, se
selecciona impresora de red, en el cuadro se
escribe
http:/
(ip_del_servidor_de_la_impresora):631/printe
rs/(Nombre_de_la_impresora)

Servidor Samba

Wine

Wine

Wine

Wine

Wine

Wine

Wine

Вам также может понравиться