Tags:
create new tag
, view all tags

Curso De Linux

Capitulo 1

Previo a la Instalación
Discos Duros
/dev/hda→ Disco Master Primario
/dev/hdb→ Disco Esclavo Primario
/dev/hdc→ Disco Master Secundario
/dev/hdd→ Disco Esclavo Secundario
Es posible tener por cada disco duro 3 particiones primarias y una partición extendida. 
Por cada partición extendida puede haber N particiones lógicas.
Ejemplos:
                       /dev/hda1
                      /dev/hda2 
                     /dev/hda3
                    /dev/hda5
                   /dev/hda6
                  /dev/hda7
Particiones a crear en la instalación
Hay que crear:
/boot  →  Partición Primaria. Es la imagen del kernel. Fichero ext3 (100MB).
/      →  Partición Primaria. Partición root (o raíz) (3GB).
/home  →  Partición Primaria. Se ubican los directorios de los usuarios (1GB).
/usr   →  Partición Extendida. (3 GB). Al crearla automáticamente se crea dentro de hda4 
automáticamente como partición extendida.
/var        → Segunda partición lógica dentro de la extendida. Igual que /usr (3GB). 
Crear swap  → trozo de disco que se como la memoria virtual. Es utilizada como memoria 
RAM secundaria cuando ésta se acaba.
Instalando Red Hat 9
Gestor de arranque a elegir:
LILO: LInux Loador
GRUB: GRand Unified Bootloader
Red Hat 9  → Kernel 2.4.20-13.9
Contraseña de root: linux., (para este curso)
Autentificación
Dejar por defecto.
Durante la instalación: 
Ctrl+alt+
F2: Shell
F3: Paquetes
F4: Dispositivos
F5: Sistemas de archivos
Para volver al modo gráfico: ctrl+alt+F7. Si es modo texto: F1 
Al rebotear el equipo:
Login: root
Pass: linux.,
Configuración Inicial
Configurar interfaz de red:
            Cd/etc/sysconfig/network-scrips
Ifcfg-eth0  →  tarjeta de red, hay que editarlo
Vi Ifcfg-eth0  
Uso del Editor VI 

         dd:  eliminar línea
         yy:  copia línea
         p:   pegar
         5yy: copia las 5 primeras líneas
         i:   insertar
         ESC/:wp para grabar.
Colocarse en la segunda fila 
Agregar:
IPADDR= 192.168.1.10
NETMASK=255.255.255.0
BOOTPROTO= static ( static o dhcp)
ONBOOT= yes
Salir.
Configurar nombre del servidor y gateway:
cd/etc/sysconfig
Editar archivo network
Vi network
Indicar el hostname y agregar las siguientes líneas
NETWORKING= yes
HOSTNAME= pc1.cft.cl
GATEWAY=192.168.1.1
Es necesario reiniciar el  servidor. Existen 3 formas:
1.- service network restart
2.- /etc/rc.d/init.d/network restart
3.- /etc/init.d/network restart
Configurar DNS:
Cd/etc
vi resolv.conf
SEARCH cft.cl
NAMESERVER 192.168.1.1
Iniciar modo gráfico: startx
Actualización
Es necesario actualizar el sistema. Para ello debe registrarse:
Registro
#rhn_register
* Antes hay que actualizar los paquetes de actualización del certificado SSL de Red de hat.
http://rhn.redhat.com/errata/RHSA-2003-267.html
http://updates.redhat.com/9/en/os/i386/up2date-3.1.23.2-1.i386.rpm
http://updates.redhat.com/9/en/os/i386/up2date-gnome-3.1.23.2-1.i386.rpm
Actualización
#up2date-u
Una manera de actualizar es con el comando up2date.
Otra manera es con el archivo autoupdate (bajar de internet).
Comandos más usados del capitulo 1
rpm-fvh (nombre de archivo).
rpm-u (nombre de servicio).

Capitulo 2

Estructura de Directorios
/: Contiene todos los directorios. Raíz
/boot: Archivos de partida. Kernel, Lilo, Grub
/dev:  Dispositivos: disquetera, disco duro, puertos seriales, paralelo, scsi, etc.
/bin:  Binarios. Ejecutables para todos los usuarios. Comandos básicos.
/sbin: Comandos del root. Ejecutables por el sistema.
/home: Directorio para cada usuario.
/usr:  Aplicaciones.
/usr/src: Código fuente de linux.
/usr/local: Aplicaciones varias, instaladas a mano.
/var: Archivos variables. Logs, colas de impresión, colas de correo, bases de datos.
/etc: Archivos de configuración para las aplicaciones tales como apache, web, proxy, sendmail, etc.
/opt: Opcionales. Programas aparte, que no vienen con la distribución.
/lib:  Librerías.
/proa: Directorio con un sistema de archivos virtual que guarda la información del 
hardware de la maquina. Este directorio se crea cada vez que bootea la maquina.
Comandos Básicos
rm:   borra un archivo
      rm<archivo>
rm-r: borra recursivo (para borrar directorios)
      rm-r <directorio>
rm-f: borra sin preguntar. Forzado.
      rm-rf <directorio>
mkdir: crea un directorio.
       mkdir <directorio>
mv: mueve o renombra archivos. 
       mv <archivo1> /nueva/ruta : mueve el archivo hacia otra parte.
       mv <archivo1><archivo2> : renombra el archivo1 a archivo2.
cp: copia
       cp <archivo> /nueva/ruta: copia el archivo hacia otro directorio.
Cp-r: copia recursiva (para copiar directorios)
       cp <directorio> /nueva/ruta: copia el directorio y su contenido a otra ruta.
Is: Lista de archivos
       Is-I: Lista permisos e información
       Is-La: Lista archivos ocultos (antecedidos por un punto).
cd: Cambia de directorio
       Cd/ruta
pwd: Indica directorio en que estamos situados
find: Buscar archivos 
      find<ruta><nombre de archivos>
Ejemplos:
                 find/etc-name&#8217;*net&#8217;*
                 find/<archivos> (busca en todos los directorios).
man: Manual del comando
Ejemplos:
                  man printf   (muestra contenido del manual)
                  man 3 printf (muestra pagina 3 del manual)
Manejo de archivos
more: Muestra contendido del archivo de texto.
              more/proa/cpuinfo
cat: Muestra el contendido de un archivo de texto.
              cat/etc/syslog.conf
less: Muestra y edita el contendido de un archivo de texto.
              less/etc/redhat-release
head: Muestra las 10 primeras líneas de un archivo.
              head-50<archivo> (muestra las primeras 50 líneas del archivo)
tail: Muestra las 10 últimas líneas de un archivo.
              Tail-50<archivo> (muestra las últimas 50 líneas del archivo)
file: Sirve para saber que tipo de archivo es.           
Ejemplo: file/etc/syslog.conf         
Comandos
df:   muestra espacio de disco
df-h: muestra espacio en megas.
du:   muestra tamaño del archivo.
         du-sh/root: muestra tamaño de archivos en bytes, kilos o megas.
         du-h/root:  muestra por directorios o archivos.
         wc:   muestra cuanto pesa un archivo.
         wc-m: muestra cantidad de caracteres.
         wc-w: muestra cantidad de palabras.
         wc-l: muestra cantidad de líneas.
diff: muestra diferencias entre dos archivos
            diff<archivo1><archivo2>
grep: busca una cadena dentro del archivo de texto.
            grep&#8217;hola&#8217;<archivo>
Para comprimir
zip: comprimir.
unzip: descomprimir.
gzip: comprime y descomprime.
tar: empaqueta una serie de archivos.
Ejemplo:
                 Para empaquetar: tar cvf<archivo>
                               c: empaqueta
                               v: muestra estado
                               f: file
                               t:muestra comprimido
Ejemplo: para desempaquetar:  tar xvf<archivo>
Ejemplo: para comprimir y empaquetar:
                               tar zcvf root.tar.gz<directorio>
Ejemplo: para descomprimir y desempaquetar:
                               tar zxvf root.tar.gz
 split: divide el archivo en varios
                               split-b 1024<archivo>
El resultado es un archivo de la forma
                               xaa
                               xab
                               xac
Para juntar: cat xaa xab xac > archivo
mount: montar
                       mount (muestra las particiones montadas)
                       mount/dev/cdrom/mnt/cdrom
                       mount/dev/fdo/mnt/floppy
                       mount/dev/fdo/mnt/floppy-t vfat-t ext2 (de linux).
umount: desmontar
                      umount/mnt/cdrom
fdisk: herramienta para particionar los discos
                      fdisk-l /dev/hda (muestra particiones del disco)
                      fdisk /dev/hda (pasa a la interfaz particiones del disco duro)
mkfs: make file system (para formatear)
                      mkfs.ext2
                      mkfs.vfat
                      mkfs.msdos
Ejemplo: mkfs.ext3 /dev/fdo
fsck: especie de scandisk
                       fsck-yf /dev/hda1 (comprueba y arregla el filesystem de la partición hda1).
/dev/null: especie de hoyo negro
                       ls> /dev/null
/dev/zero: entrega ascii 0 (se utiliza para llenar archivos)
                       dd if=/dev/zero of=/root/tmpswp bs=1024 count=100 (hace una imagen). 
Se creó un archivo con carácteres nulos de 100 kilos. Con esto se puede aumentar la swap:
                       mkswap /root/tmpswp
Crea una swap a partir de un archivo:
                       Swapon/root/tmpswp (activa la swap).
                       more/proc/swaps (es temporal, al apagarlo se borra, pero el archivo queda).
Administración
top: muestra procesos ejecutándose.
free: memoria libre y ocupada.
ps: procesos ejecutándose
dd: hace imágenes de dispositivos.
             dd if=/dev/cdrom of=/root/cd.iso
             dd if=/dev/hdb1 of=/disco.iso
Comandos más usados del capitulo 2                    
&#8594; mount-o loop floppy.ing  /mnt/floppy 
&#8594; dd if=/dev/zero  of=tmpswp  bs=1024  count=100.00 (para llenar un archivo con basura con bloques 
de 1024 de tamaño 100.000).
&#8594; mkswap  tmpswp (hacer este formato a swap).
&#8594; swapon  tmpswp (activar swap).
&#8594; more /proc/swaps (para ver detalle del swap creado).
&#8594; uptime (tiempo arriba 1, 5, 15).
Proceso zombie
&#8594; free (muestra memoria RAM Y swap).

Comandos de administración (top, free, ps) leen directamente el /proc.
&#8594;ps-fax
         -aux
&#8594;  killall<nombre> (mata todos los procesos).

Capitulo 3

Cuentas de usuario
      *Super usuario (root)
      *Normal
      *Especiales

more/etc/passwd
root: x: 0 :0 : root: /root: /bin/bash
more/etc/shadow
chage (para dar tiempo a una cuenta).

Usuarios
                Adduser user1 (crea usuario user1)
                Passwd  user1
Al agregar un usuario:
    
            adduser &#8211;s /bin/false user2 (no permite logear al usuario, es solo usuario
de correo a través de POP3).
            passwd user3

Por ejemplo: para varios usuarios de correo pop.
Se crea la carpeta/home/popusers

          mkdir/home/popusers
          adduser &#8211;d /home/popusers &#8211;s/bin/false<usuario> (manda al usuario a la
carpeta y es solo de correo).

         passwd user

Grupos

More/etc/group
Para agregar grupos, es conveniente crear usuarios por grupos

         groupadd correo
         adduser &#8211;s /bin/false/ -g correo user4 (asigna un grupo)
         passwd user4

Borrado 

Para borrar usuarios: userdel o deluser
         Userdel &#8211;r user 1 ( me permite borrar su directorio)
Para borrar grupos: groupdel
            groupdel popusers

Permisos

3 niveles de permisos: usuario, grupo, otros.
3 niveles de privilegios: lectura, escritura, ejecución.

ls &#8211;l /etc/passwd

- rw-r&#8212;r&#8212;1  root root
La primera muestra el tipo de archivo que es: d=directorio, s=socket, l=link.
Los 3 que siguen: usuario.
Los 3 que siguen: grupo.
Los 3 que siguen: otros.

Chmod: cambiar permisos
                u: user
                g: group
                o: otros
                a: all

copiar archivos al root
cp/etc/passwd  root/passwd

i) cambiar opción a propietario a usuario
Chmod u+-passwd
En /root hacer:

ls -l
Chmod 640 passwd
Cp passwd /home/user2

Chown: cambia propietario del archivo

*cambiar de propietario el archivo:
chown user2/home/user2/passwd

chown: cambia grupo del archivo

*cambiar de propietario de grupo
chgrp user2/home/user2/passwd

chattr y lsattr: cambia los atributos del archivo
              

                   a: al final del archivo
                   c: comprimido
                   i: inmutable

Ejemplo:
chattr +i /home/user2/passwd
ls attr (muestra atributos)

chattr +i//home/user2/.bash-history (en este archivo se almacenan los comandos del usuario).
Ni siquiera el root puede modificarlo, con &#8211;i lo desbloqueo.
last: últimos usuarios ingresados al sistema.
lastlog: muestra todos los usuarios y la última vez que ingresaron.
LILO: Gestor de arranque
Ubicado en el MBR, indica que partición bootear y la ubicación de la imagen del kernel.
Su configuración está ubicada en: /etc/lilo.conf
Al iniciar el computador y aparecer boot: presionar tab
Boot: linux single
Con esto cualquier usuario puede ingresar como root.
&#8594; Poner password al LILO
&#8594; Editar lilo.conf

Al final de image agregar:
 image=&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;..
              &#8230;&#8230;&#8230;&#8230;.
              &#8230;&#8230;&#8230;.
               restricted
               password= linux

Guardar y salir, escribir LILO para volver a instalarlo con los cambios.
Entrando como usuario, se puede hacer: more/etc/lilo.cinf
Cualquier usuario puede ver la password de lilo.
  &#8594; Chmod go &#8211;r /etc/lilo.conf
  &#8594; ahora no la pueden editar.
*cuando hay Windows instalado:
Agregar al lilo.conf al final
               other = /dev/hda1
               label = windows
               table = /dev/hda
* después de cualquier cambio, ejecutar lilo para reinstalarlo.
Lilo &#8211;u elimina LILO del MBR. De estar instalado windows partiría con este sin preguntar.

Rescatando Linux

Escribir lilo.
Se reinstalo lilo.

Grub

Agregar la opción: 
               Password &#8211;md5 $bw0ez$tljnxxKLfMzmnDVguPo
El password encriptado se obtiene con la utilidad: grup-d5-crypt
Instalando GRUP: grup- install /dev/hda
El siguiente es un ejemplo de archivo de configuración de menú muy básico 
diseñado para arrancar bien sea Red Hat Linux o Microsoft Windows 2000:

default=0
timeout=10
splashimage=(hd0,0) /grup/splash.xpm.gz

# sectiontoloadinux
title Red Hat Linux(2.4.5.47)
root(hd0,0)
kernel / vmlinuz-2.4.18-5-47 root=/dev/hda
initrd /initrd-2.4.18.-5.47img
#sectionoloadwindows 2000
titlewindows
rootnoberify (hd0,0)
chainloader+1

Capitulo 4

Inicio de sistemas
vi/etc/inittab
run level
o             &#8594;  apagado (nunca)
1             &#8594;  monousuario
2             &#8594;  multiusuario sin red (NFS)
3             &#8594;  multiusuario
4             &#8594;  no usado
5             &#8594;  modo gráfico
6             &#8594;  reinicio (nunca)

id : runlevel : acción : proceso
Cambiar al 5 y rebootear: va a partir desde ahora en modo gráfico.

Scripts de inicialización

cd/etc/rc.d
vi /etc/rc.d/rc.sysinit
vi /etc/rc.d/rc
vi /etc/rc.d/rclocal   &#8594;   se ejecuta al finalizar la inicialización del sistema.
Generalmente esos archivos no se modifican.
De cada uno de los niveles de ejecución existe un archivo.
cd /etc/rc.d/rc3.d
archivos con : s   &#8594;  cuando parte el sistema.
               k   &#8594;  cuando se mata un proceso.
Son archivos de link que apuntan a: /etc/rc.d/init.d
cd/etc/rc.d/init.d   &#8594;  scrip de servicios de la máquina.
Dentro del directorio escribir:
/sendmail status
hacer
./sendmail stop

chkconfig   &#8594;  archivo para ver que servicios parten.

#chkconfig &#8211;list
#chkconfig &#8211;list | grep<servicio>

Desabilitar sendmail
chkconfig &#8211;level 2345 sendmail off
Desactivar también netfs en los niveles que esté activo, lo mismo con el 
portmap, sacar también nfslock.
Desactivar también ipchains, isdn, httpd, pcmcia.
Ntsysv       &#8594;   muestra los servicios que existen
             &#8594;   solamente en nivel 3. 

Administración de paquetes

Se realiza a través de rpm (redhat Package Management), se encarga de instalar, 
desinstalar, actualizar, etc.
Ejemplo: lynx -2.8.4.18.i386.rpm
En un browser: www.rpmfind.net  página que sirve para buscar paquetes
Buscar w3c, descargas devel, apps y libwww.
Escribir:
rpm &#8211;qpi<nombre>  (p: archivos rpm, i: de que trata el paquete, q: query)
*rpm ya instalados en vez de p es i.
En vez de i colocar l &#8594; muestra archivos, lo que contienen y donde van a quedar instalados.
En vez de i : d = documentación, c = configuración.

Para instalarlo:
rpm &#8211;i <nombre> (i de instalación)
Instalar los 3 archivos que se descargaron.

Para desinstalarlo:
rpm &#8211;e <nombre> (sin la extensión, rpm)
Para saber los paquetes instalados:
rpm &#8211;qa >rpm.txt (para llevarlo a un archivo)
wc &#8211;l rpm.txt (encuentra el número de líneas, saber cuantos están instalados).

Buscar un paquete instalado

#rpm &#8211; qa| sort>rpm.txt (guarda en un archivo el listado de paquetes ordenados 
alfabéticamente).
#grep w3c rpm.txt (busca paquetes de w3c instalados).
O bien se pudo haber echo:
#rpm &#8211;qa | grep w3c

Verbose
Para saber que está pasando es bueno colocar v.
Ejemplo: rpm &#8211;jvh <nombre>

Parámetros básicos

Dentro de la instalación de paquetes, usar:
            -i: para instalar un paquete.
            -U: para actualizar un paquete.
            -F: para refrescar un paquete. 
Todos con vh: para saber qué está pasando  &#8594; -ivh, -Uvh, -Fvh
Grep bind rpm.txt
Rpm &#8211;qi bind
Rpm &#8211;qi w3c
Rpm &#8211;qil bind (archivos que utiliza el paquete. C: configuración, d: documentación), 
qi: paquetes ya instalados.
Si falla se puede hacer:
rpm &#8211;ivh &#8211;nodeps<archivo.rpm>  --force
Para eliminar
rpm &#8211; e--nodeps
Hacer rpm-qa |grep w3c para ver que está instalado.
En www.redhat.com/apps/support/errata/     se puede ver los avisoso de fallas, en nuestro caso 
ir a red hat 9.
Bajar el kernel -2.4.20.9.i386.rpm, al lado aparece una llave , la cual es un registro que es 
para usar con el programa md5sum, sirve para comprobar si el archivo bajó correctamente.
Md5sum<nombre del archivo>
Cuando baje el archivo, probar con md5sum, luego actualizarlo:  rpm &#8211;Uvh kernel&#8230;.rpm.

Resumen

rpm  -i    &#8594;  instala
     -e    &#8594;  desinstal
     -U    &#8594;  actualiza
     -F    &#8594;  refuerza
     -vh   &#8594;  verbosa
     -q    &#8594;  query

Capitulo 5

El kernel

rpm &#8211;qa | grep kernel (indica cual kernel está instalado y debiera aparecer el kernel source).
En: www.kernel.org  bajar el último kerner y mover el archivo a /usr/src/
Estando en /usr/src descomprimir el archivo:
tar zxvf linux-2.4.22.tar.gz
Se crea el directorio linux-2.4.22
make config.responde y/n/m (este sistema ya no se utiliza)
make menuconfig
make xconfig (en xwindows)
            y: si, n: no, m: configura opción como módulo. Se instala y desinstala cuando 
la maquina esta encendida.
Final, guardar y salir.
Se creó el archivo /usr/src/linux-2-4-22/.config
Cuando se instala un nuevo kernel, abrir el archivo y tomara las selecciones por defecto.
         
Ejecutar:
#make dep (verifica las dependencias)
#make clean (limpia las configuraciones antiguas)
#make bzlmage (la l con mayúscula, compila el kernel)
Si seleccioné algún tipo módulo, es necesario hacer:
#make modules
#make modules_install
#make install (toma el kernel que creó y lo deja dentro del directorio boot y actualiza el grub).

Se ha instalado el nuevo kernel.
Se puede escribir también:
make dep clean bzlmage modules modules_install install (hace todo de una vez).
En www.tux.cl aparece cómo recompilar el kernel de manera rápida.
Kernel &#8594; archivo /boot/vmlinuz-2.4.22

Alías
Hacer alías:
                     vi .bashrc  y agregar los alías
                     Ejemplo:
                                     alías mcd = &#8216;mount /dev/cdrom/mnt/cdrom&#8217;
                                     alías dcd = &#8216;umount/mnt/cdrom&#8217;

Comandos más utilizados de esté capitulo

/usr/src/linux -2.4.20-8    &#8594;  esta toda la distribución.
modulo                      &#8594; cargar modulo de tipo de ejecución.
Recopilación kernel: puede ser para optimizar el kernel (grabar CD=SCSI linux), usar para
hacer uso de instrucciones del pentium IV.

make config         &#8594;    configura kernel antigua
make menuconfig     &#8594;    <m> : modulo, <*> : kernel
En modo gráfico:   
make xconfig     &#8594;  al salir y guardar crea un archivo oculto &#8220;.config&#8221;, tiene que crearlo para poder guardarlo.
make dep         &#8594;  verifica dependencia, con el kernel optimizado podemos guardar este archivo.

Capitulo 6

Redes                       

Protocolos: tcp, udp, icmp.                      
Modelo ISO/OSI                                          
Aplicación                        Semántica de datos         
Presentación                      Representación de los datos   
Sesión                            Dialogo ordenado   
Transporte                        Extremo a extremo               
Red                               Encaminamiento
Enlace                            Punto a punto   
Físico                            Electrónico      

TCP: por cada paquete que se envía se recibe respuesta de que se envió bien.
UDP: no se chequea por si llegó bien, se utiliza para dns, transmitir audio y video principalmente.
ICMP: protocolo de control para saber si la máquina esta activa (ping).
 
Clases de redes:

Clase A: 0&#8230;.126             Mascara: 255.0.0.0
Clase B: 128&#8230;.191           Mascara: 255.255.0.0
Clase C: 192&#8230;.223           Mascara: 255.255.255.0
En nuestra configuración: 192.168.1.0 (red de trabajo), 255.255.255.0 (mascara).
lspci  &#8594;  muestra dispositivos instalados en los puertos.
Configurar interfaz de red:

cd/etc/sysconfig/network-scripts
vi Ifcfg-eth0
Lo mínimo que debe tener es:
DEVICE= eth0
BOOTPROTO= static
IPADDR= 192.168.1.0
NETMASK= 255.255.255.0
ONBOOT= yes

Para configurar salida a internet &#8594; gateway
cd/etc/sysconfig
vi network
NETWORKING= yes
HOSTNAME= pc55.cft.cl
GATEWAY= 192.168.1.1
Luego los cambios: > reiniciar los servicios de red
Network service restart

Ifconfig

Ifconfig             &#8594;  muestra información acerca de las interfaces de red.
Ifconfig eth0 down   &#8594;  baja la tarjeta de red.
Ifconfig eth0 up     &#8594;  sube la tarjeta de red.
Múltiples IPs:
eth0:0      alías de IP
eth0:1
eth0:2

cd/etc/sysconfig/network-sccripts
cp ifcfg-eth0 ifcfg-eth0:1
vi ifcfg-eth0:1
 DEVICE= eth0:1
 IPADDR= 10.0.0.5
 
Comando route

Destination       Gateway                Genmask   
10.0.0.1              *                255.255.255.0   
192.168.2.0           *                255.255.255.0   
127.0.0.0             *                255.0.0.0   
default  ns.global.cl
bajar  &#8594;     ifconfig eth0:1 down
route  &#8594;     se eliminó la 10.0.0.1
route add &#8211;net 192.168.1.0 gw 192.168.2.1 natmask  255.255.255.0  eth0

Ping

ping 192.168.2.121
ping &#8211;b 255.255.255.255 &#8594;  broadcast a todas las máquinas.
arp                     &#8594;  muestra los que no respondieron.

Servicios

netstat &#8211;a               &#8594;  ver conexiones de la máquina o servicios corriendo.
netstat &#8211;tan             &#8594;  indica protocolo, direcciones.
ssh 192.168.1.51 &#8211;l root &#8594;  telnet encriptado.

Sniffer

tcpdump &#8594; sniffer, aplicaciones que escuchan en la interfaz de red.
tcpdump &#8211;i eth0  &#8594; selecciona la interfaz.
tcpdump &#8211;n host 192.168.2.121  &#8594; muestra a través de direcciones ip, más fácil de interpretar.
tcpdump  -n host 192.168.2.121 &#8211;p tcp port 22

Resumen De Comandos Mas Utilizados

/proc =   VFS (virtual file system), aquí quedan datos del PC cuando bootea.
/home      &#8594; de usuario
/root      &#8594; de root
touch pepe &#8594; crea un archivo
rm &#8211;i < >  &#8594; borra archivo preguntando, si no va, no pregunta en caso de usuario común.
En caso de root siempre pregunta.
rm &#8211;rf  &#8594; recursivo
mv  &#8594; renombra y mueve un archivo
find /etc &#8211;name &#8220;net*&#8221;
find /etc &#8211;type :     d  &#8594; muestra directorios.
                            l  &#8594; link simbólicos.
                            f  &#8594; ficheros.

head
redhat &#8211; release
/etc/issue &#8594; sale la versión
/etc/initlab
chown  &#8594; cambia
chgrp
chattr +i    &#8594; prueba .txt. (Inmutable, no se puede hacer nada).
       -i    &#8594; quita atributos.
Listar atributos: 
ls atts <archivo>
chattr +i .bash_history  &#8594;  nada se puede escribir en este archivo historial.

last                     &#8594;  últimos usuarios logineados  &#8594; listado     
lastlog                  &#8594;  todos los usuarios y comandos se loginearon.
                         &#8594;  ningún usuario con /bin/false debiera estar logineado.

Cuota sobre particiones  &#8594;  edquota, quotacheck, repquota.
Particiones con cuota:
/home
/var/spool/mail
quotachek &#8211;afm       &#8594;  forzar el chequeo de cuota.
Para activar cuota         &#8594;  ver doc.redhat

Cuentas de usuario:
- Superusuario
- Normal
- Especial (normal más otra característica).

more/etc/passwd
root: x: 0: 0: root: /root: /bin/bash
/sbin/nologin
/bin/false
/etc/shadow  &#8594;  aquí están los password (solo tiene privilegios de root).
chage        &#8594;  para cambiar parámetros de una password en el shadow, para cada 
usuario (el resto de parámetros del home).
Los por defecto quedan en:
/etc/login.defs.
useradd &#8211;d :dir, -s: shell, -p: password
cuotas por partición o por grupos de usuario, se debe a default home &#8594; .bashrc
                                                                             .profile

Para modificar cosas del usuario una vez creado se debe modificar a mano el:
/etc/passwd
/etc/shadow
/etc/group        &#8594;   grupos de usuarios.
groupadd correo   &#8594;   crear un grupo de correo.
adduser user6  &#8211;g correo &#8211;s /bin/false   &#8594;  crear usuarios al grupo de correo.  
userdel   &#8211;r user6  &#8594;  para borrar usuario y carpetas.
groupdel  &#8594;   borra grupo (no borra si no tiene usuarios creados).
Nota: un usuario puede permanecer a varios grupos.

GRUB  &#8594;  en master boot record (MBR).
Restaurar la máquina:
Restaurar el MBR  &#8594;  puede perderse x instalación de windows encima
                                        &#8594;  bootear de CD1
                                        &#8594;  linux rescue ( en modo de rescate)
/mnt/sysimage  &#8594;  se monta aquí el anaconda porque pilló una máquina.

Para trabajar con el sistema antiguo:

chroot  /mnt/sysimage &#8594;  se vuelve a cómo estaba antes.
/etc/grub.conf
default =0            &#8594;  parte al defecto primer ítem del menú. 
timeout =10           &#8594;  tiempo de espera.
root (hd0,1)
kernel /boot/umlinuz -2&#8230;8.0 root = LABEE/
initrd /boor/initrd -2.4.20-8.          &#8594;  primer demonio.
grub-install /dev/hda                   &#8594;  reinstalar el grub.
Password para el grub:
&#8594; grub-mds-crypt.
        Password: &#8230;  (luego se copia en archivo grub.conf.)

/etc/inittab      &#8594;  archivo de inicio del sistema
.cshrc            &#8594;  específica alías y funciones, alías rm &#8216;rm-i&#8217;
.bashrc           &#8594;  alías útiles = &#8216;cd/root/utiles&#8217;
Ejecutar comando:
echo &#8220;cdo:  &#8216;/s_l&#8217; &#8221;
ls                &#8594; sólo se ejecuta.
/etc/crontab      &#8594; cron. Del sistema.

boot: log de booteo.
messages: mensajes.
dmesg : chequeo del hw en booteo.
secure: conexiones sobre la máquina.
maillog: todo del log.
/etc/syslog.conf  &#8594; el programa que se encarga de los logs es el syslog.

GFI LANguard Network Security Scanner

Características

  1. La función de GFI LANguard N.S.S es asistir a los administradores en la identificación de vulnerabilidades de su red.
  2. Es una herramienta que permite realizar, rápida y fácilmente una asistencia segura a su red.
  3. Combina las funciones de escanear puertos y alarmas, además crea reportes que pueden ser utilizados para mantener una red segura.
  4. También provee hiperlinks para sitios de seguridad y para encontrar más acerca de las vulnerabilidades.

Instalación

Requerimientos Del Sistema

  1. Windows 2000/2003 ó Windows XP
  2. Internet explorer a lo menos 5.1
  3. Cliente para Microsoft Network debe estar instalado.
  4. El software firewall no puede estar corriendo mientras se hace un scaneo. Esto puede bloquear la funcionalidad de GFI LANguard.

Procedimiento de instalación

  1. Cargar el programa LANguard N.S.S haciendo doble click en lannetscan.exe y confirmar la instalación y hacer click en next.
  2. Leer la licencia y hacer click en yes para aceptar la instalación.
  3. Seleccionar el directorio de destino y hacer click en next.
  4. Finalmente GFI LANguard N.S.S esta instalado y listo para escanear tus computadores.
NOTA: GFI LANguard N.S.S necesita aproximadamente 8.1 MB de espacio en el disco duro.

Ejecución Del Escaneo

El primer paso para asistir a una red es ejecutar un escaneo de las máquinas y de los dispositivos actuales de la red.
  1. Click en File>new
  2. Seleccionar el rango de escaneo de los computadores.
  3. Introducir el comienzo y el final (rango) de la Red a ser escaniada.
  4. Seleccionar Finish.
  5. Seleccionar el boton Play para comenzar el escaneo de las máquinas seleccionadas.
Despues de escanear, en la izquierda de la pantalla aparecerán las listas de las máquinas y servicios analizados. Los nodos aparecerán abajo de cada máquina encontrada por LANguard N.S.S. Los servicios o máquinas que no contestan al GFI LANguard N.S.S se asume, que estos servicios no existen para una direción específica de IP o simplemente que el equipo está apagado.

Análisis de los resultados del escaneo

En la figura 1, se muestra lo que debería aparecer en la pantalla una vez finalizado el escaneo y en la planilla Excel (al final de esté documento) se muestra los resultados que arrojo el escaneo de la red interna de Telsur Valdivia, lo cual será comparado con el Nesssus Scanner más adelante.

Figura 1: Imagen De Escaneo.

Aquí se puede ver que cada nodo lo primero que entrega es la dirección IP de cada computador escaneo en la Red (en negro en la Fig.1). Posteriormente hay que hacer un click en ese nodo y se desprenderá toda lo información sobre los puertos abiertos en los cumputadores y las alarmas respectivas. Además cuenta con una opción que permitirá saber la intensidad de la alarma y el tipo de alarma (DNS alerts, FTP alerts,Miscellaneous alerts, etc.).

Nessus Network Security Scanner

Características

  1. Nessus es un explorador de seguridad de fácil uso, poderoso y sobre todo gratis.
  2. Es una herramienta que permite realizar actualizaciones fácilmente y adémas permite que tu lo ajustes segun tus necesidades de operación.
  3. Combina las funciones de escanear puertos y alarmas. Pero lo mejor de todo es que te avisa de los posibles errores y adémas te dice como solucionarlos y donde encontrar ayuda en Internet para un mejor comprendimiento de la vulnerabilidad de tu equipo o Red.
  4. Nessus está compuesto de dos partes: un cliente y un servidor. Se necesita un sistema como Unix para usar en el servidor (en este caso Linux)y para poder realizar una prueba necesitas ser un cliente nessus.

Instalación

Requerimientos Del Sistema

  1. Sistema Unix, en este caso Linux Red Hat 9.0.
  2. Salida a Internet.
  3. Ser cliente nessus.

Procedimiento De Instalación

  1. Lo primero que hay que hacer es descargar nessusd y nessus, luego instalarlo.
  2. Después hay que crear una cuenta nessusd como sigue:
      # nessus-adduser

Con lo cual aparecerá lo siguiente:
      Addition of a new nessusd user
      Login: hola
      Authentication (pass/cert) [pass] : pass
      Password : xxxxxx

Después aparecerá:
   
      User rules (aquí se pueden restringir ciertos host ó no y después apretar ctrl+D).

Con lo cual aparecerá:

      Login:    hola
      Password: xxxxxx
      DN:
      Rules:
     
      Is that ok (y/n) ? [y]: y
      user added.
! Ya eres un usuario de nessus !

Ejecución Del Escaneo

  1. Lo primero que hay que colocar en la shell, es: nessusd -D & y después nessus &.
  2. Ahora hay que colocar login y password que seleccionaste para tu usuario, sin mover el nessusd host y port. Hacer click en log in para estar dentro del sistema.
  3. Scan options : aquí se puede dar un rango a los puertos a escanear, el número de host a escanear al mismo tiempo y el número de chequeos a realizar en el mismo tiempo. A veces es necesario ajustarlo para que sea un poco más rápido el escaneo.
  4. Después (modo gráfico) hay que ir a Target Selection y en Target(s) introducir los equipos de la red a escanear.
  5. Finalmente hacer click en start the scan.

Análisis de los resultados del escaneo

En la figura 2 y 3, se muestra lo que debería aparecer en la pantalla una vez comenzado y una vez finalizado el escaneo, respectivemente. En la planilla Excel (al final de esté documento) se muestra los resultados que arrojo el escaneo de la red interna de Telsur Valdivia, lo cual será comparado con el GFI LANguard N.S.S.

Figura 2: Comienzo Del Escaneo.

Figura 3: Resultados Del Escaneo.

Como se puede ver en la figura 3, una vez marcado el host (va a estar a la izquierda de la pantalla) aparecerá a la derecha de la pantalla toda la información acerca de los puertos abiertos del computador y sobre las alarmas. Hay que hacer un click sobre la alarma que se desea tener más información y sobre todo como solucionar el posible error.

LANguard v/s Nessus

  1. En cuanto a la velocidad de escaneo LANguard se comporto un poco más rápido que Nessus, pero por muy poco.
  2. En cuanto a los puertos que nos entregó LANguard éstos eran los mismos que Nessus con la salvedad que el nessus nos entrego datos generales de los puertos, aunque no allá encontrado un puerto específico, por ejemplo el puerto 137 de UDP si ninguno de los dos escaneadores lo encontraba en una máquina el nessus nos entregaba información del puerto UDP en forma general.
  3. La gran diferencia que había entre los dos escaneadores era sobre las alertas. El Nessus nos entregaba las mismas alertas que el LANguard, pero además nos daba la solución y por otra parte entregaba una página de Internet donde referirnos para más ayuda. El Nessus nos entregaba datos gráficos de cuan seguro era un PC de la red de Telsur Valdivia.
  4. Por último hay que mencionar que Nessus fue capaz de escaniar 6 máquinas más que LANguard. Nessus escanio 9 máquinas que LANguard no fue capaz y LANguard escanio 3 máquinas que Nessus no pudo, por lo cual, podría pensarse que como complemento es una muy buena alertenativa. Pero hay que tomar en cuenta que las maquinas que no escaneo LANguard eran de alta seguridad o mejor dicho los reportes que Nessus mostro de estas máquinas eran que tenian un 100% de riesgo muy bajo.
  5. Se puede concluir que la gran ventaja de Nessus es que entrega además de las alertas una solución al problema.

Nagios Para Linux

Introducción

Nagios es un sistema de monitorización de equipos y servicios de red, creado para ayudar a los administradores a tener siempre el control de qué está pasando en la red que administran y conocer los problemas que ocurre en la infraestructura que administran antes que los usuarios de la misma los perciban. Nagios es un software usado en todo el mundo, que debe correr en sistemas Linux (en la mayoría de los Unix funciona sin problemas) y que permite extender su funcionalidad con la utilización/creación de extensiones.

Estructura Del Sistema

Un núcleo de la aplicación contiene el software necesario para realizar la monitorización de los servicios y máquinas de la red para la que se está preparando. Hace uso de diversos componentes que vienen con la aplicación, y puede hacer uso de otros componentes realizados por terceras personas. Aunque permite la captura de paquetes SNMP trap para notificar sucesos, no es un sistema de monitorización y gestión basado en SNMP sino que realiza su labor basándose en una gran cantidad de pequeños módulos software que realizan chequeos de parte de la red. Muestra los resultados de la monitorización y del uso de los diversos componentes en una interfaz web a través de un conjunto de CGI's y de un conjunto de páginas HTML que vienen incorporadas en serie y que permiten al administrador una completa visión de qué ocurre,dónde y en algunos casoso, por qué. Por último, Nagios es capaz de guardar los históricos en una base de datos para que al detener y reanudar el servicio de monitorización, todos los adtos sigan como antes, sin cambios.

Instalación

Requerimientos Del Sistema

  1. Es necesario tener una máquina con Linux ( Linux Red Hat 8.0 o más) y el servidor web Apache correctamente instalado.
  2. Según Nagios, debería tratarse de una máquina con lo menos 256 Mb de RAM y 20 Gb de disco duro.

Procedimiento De Instalación

Creación De Usuarios

  1. El primer paso es la creación de un usuario para Nagios, que se realiza agregando en la shell:
adduser nagios

Instalación Del Núcleo De Nagios

- Lo primero es bajar el paquete con las fuentes de Nagios de la página web oficial http://www.nagios.org. En este caso se bajo el paquete:

nagios-1.2.tar.gz

- Ahora hay que desempaquetar y descomprimir el paquete:

tar xzvf nagios-1.2.tar.gz

- El siguiente paso será crear el directorio donde se instalará el software una vez compilado, por defecto:

mkdir/usr/local/nagios

- Se procederá a la configuración de las fuentes para una compilación acorde a nuestro sistema. Tomando todas las opciones por defecto, se tiene que:

./configure

- Con esto las fuentes quedarán configuradas para ser compiladas correctamente. Se procede a la compilación de las mismas:

make all

- Esto compilará nagios 1.2. Para que los ejecutables recién compilados queden instalados en el directorio elegido se procede a la instalación:

make install

Que instalará los ficheros binarios y los ficheros HTML que serán necesarios para el correcto funcionamiento del sistema de monitorización. Nagios ofrece guiones para ser iniciado durante el arranque del sistema, de la siguiente manera :

make install-init

make install-command

make install-config

Con esto quedará instalado el núcleo del sistema.

Instalación De Las Extensiones Oficiales

- Hay que instalar todas las extensiones oficiales (plugins) que permitirán la monitorización. Por lo cual, hay que bajar de http://www.nagios.org el paquete llamado:

nagios-plugins-1.3.0.tar.gz

- Para instalarlos, lo primero que hay que hacer es desempaquetar y descomprimir el paquete, así se tiene:

tar xzvf nagios-plugins-1.3.0.tar.gz

- Igual que antes hay que configurar las fuentes, como hemos instalado Nagios en su lugar por defecto. Simplemente se escribira en la shell, lo siguiente:

./configure

- Ahora hay que proceder a la compilación y a la instalación, lo cual se hace igual que antes, se ejecutará entonces en la shell:

make all

make install

Con esto se tiene instalado correctamente las extensiones oficiales.

Activación y Configuración De La Interfaz Web

Ante que nada es prácticamente obligatorio activar y configurar la interfaz web de Nagios que nos permitirá interactuar con el sistema de monitorización a través de cualquier navegador. Lo primero que hay que hacer es levantar el servicio http, como sigue :

service httpd start

-Después se configura el http :

vi httpd.conf

Para ello añadimos lo siguiente al fichero de configuración de apache :

ScripAlias /nagios/cgi-bin/ /usr/local/nagios/sbin/

AllowOverride AuthConfig

Options ExecCGI

Order allow,deny

Allow from all

Del mismo modo, hay que crear un alias para poder acceder a los ficheros html de nuestra distribución Nagios vía el servidor Apache. Incluimos en el mismo fichero las siguientes líneas sabiendo que deben estar colocadas después de las que hemos escrito en el paso anterior.

Alias /nagios/ /usr/local/nagios/share/

Options None

AllowOverride AuthConfig

Order allow,deny

Allow from all

Lo que nos permitirá poder acceder a la interfaz web del sistema de monitorización que estamos instalando. Ahora hay que reiniciar el servidor http, como sigue :

/etc/rc.d/init.d/httpd restart

Configuración De Nagios

Si se han seguido los pasos anteriores, en el directorio "/usr/local/nagios/etc" se encontrarán los ficheros de configuración de ejemplos del sistema de monitorización. Bastará con quitarles a todos la parte el nombre de "sample" para tener todos los ficheros de configuración necesarios que habrá que retocar, pero que están auto documentados en gran parte. Nagios puede configurarse exclusivamente en un solo fichero "nagios.cfg", aquí abajo se presentan las principales configuraciones a cambiar en los ficheros :

Topic revision: r6 - 2005-04-04 - PeterThoeny
 
Twitter Delicious Facebook Digg Google Bookmarks E-mail LinkedIn Reddit StumbleUpon    
  • Download TWiki
TWiki logo Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2012 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.