Manual Linux PDF
Manual Linux PDF
Manual Linux PDF
OPERATIVO
GNU/LINUX
Linux LPIC-1
Que es Linux?
Linux es un sistema operativo libre de 32 ó 64
bits .Linux es distribuido bajo la Licencia
General Pública 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
República de Finlandia llamado Linus
Torvalds en el año de 1991 con la ayuda de
varias personas a nivel mundial. Torvalds
estuvo trabajando con MINIX, un pequeño
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 día mas por grandes empresas , así mismo
cada día aumenta el numero de programas y
aplicaciones desarrolladas para esta plataforma.
Beneficios Con Linux
Linux es muy robusto, estable y rápido: Ideal
para servidores y aplicaciones distribuidas. A
esto se añade que puede funcionar en máquinas
humildes: Linux puede correr servicios en un
x86 a 200 MHz con calidad.
Linux es libre: Esto implica no sólo la
gratuidad del software, sino también 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 informática: Los
desarrolladores de Linux han hecho un gran
esfuerzo por dotar al sistema de asistentes de
configuración y ayuda, además de un sistema
gráfico 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 ejecución, 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 aplicación 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 función:
* Hardware.
* Núcleo 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
información 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
específicamente 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 información sobre archivos
ordinarios, subdirectorios, vínculos, vínculos
simbólicos, etc
Inspección de dispositivos:
Comandos:
Ispci: muestra todo Io conectado aI bus pci:
-s id: muestra Ia info de ese dispositivo.
-v: muestra todos Ios detaIIes.
Lsusb: muestra Ios dispositivos usb conectados:
-d id: muestra Ia info de ese dispositivo.
-v: muestra detaIIes.
Lsmod: muestra Ios móduIos (drivers) cargados
actuaImente.
Tipos de dispositivos:
Dispositivos de aImacenamiento:
CuaIquier dispositivo de aImacenamiento se identifica en un
archivo dentro de /dev. EI nombre deI archivo depende deI tipo de
dispositivo (SATA, IDE...) y de Ias particiones que este tenga:
Mensajes de inicio:
Para mostrar Ios mensajes de inicio quitaríamos quite y spIash de
Ia Iínea de carga deI kerneI. Para inspeccionar eI proceso de
inicio usamos dmesg y observaríamos Ios mensajes de
IvarIIogIdmesg.
Cambiar runIeveIs, apagar y reiniciar eI sistema
● O: Apagar eI sistema.
● 1: usuario único, sin red o servicios
● 2: muItiusuario, estándar en Ia mayoría de distros.
● 3: muItiusuario, estándar en otras distros.
● 4: no se usa.
● 5: no se usa
● 6: reinicio deI sistema.
Apagar y reiniciar:
-> Opciones:
-a: usar eI archivo de permiso /etc/shutdown.aIIow.
-r: reiniciar Ia máquina.
-h: apagar eI pc.
-t segundos: tiempo de espera antes de que se ejecute Ia acción.
Cambiar runIeveIs, apagar y reiniciar eI sistema
->Horario
• La partición Swap:
Es un espacio en disco que actua como memoria adicionaI
evitando Ia ocupación totaI de Ia RAM. Como norma generaI se
sueIe crear una partición swap del doble de tamaño que la
memoria RAM, pero ya no se usa en sistemas con amplia memoria
RAM. Es recomendabIe crearla en los dispositivos más veIoces.
• Opciones de /etc/IiIo.conf:
Grub:
Opciones individuales:
dd if=mbr.backup of=IdevIhda
ControI de bibIiotecas compartidas
InstaIación:
Para buscar programas podemos usar apt-cache search
nombre_paquete o aptitude search nombre_paquete, no es necesario eI
nombre exacto.
Para instaIar usamos apt-get instaII nombre_paquete o aptitude
instaII nombre_paquete. Si Io que queremos es instaIar un .deb
usamos dpkg -i nombre_paquete.deb, si es necesario reconfigurar eI
paquete después de Ia instalación ejecutamos dpkg-reconfigure
nombre_paquete.
UtiIización deI sistema de paquetes Debian
• EIiminación:
• ActuaIizar programas:
Los paquetes se actuaIizan con apt-get upgrade.
UtiIización deI sistema de paquetes Debian
Inspección de paquetes:
Con dpkg:
-i nombre_paquete: muestra el estado del paquete.
-S nombre_archivo: busca que paquete instaIó ese archivo.
-L nombre_paquete: Iista Ios archivos instaIados por un
paquete.
--contents paquete.deb: Iista eI contenido deI paquete
seIeccionado.
RPM
Es eI comando de administración de paquetes rpm, semejante a dkpg.
YUM
- EI sheII Bash
Es eI estándar en Ia mayoría de Ias distros Linux, significa Bourne
Again SheII. AIgunos comandos importantes incorporados deI bash.
Trabajar en Ia Iínea de comandos
VariabIes
VariabIes predefinidas:
Comandos secuenciaIes
Para ejecutar comandos unos tras otros podemos usamos este formato:
comando1 ; comando2 ; comando3
Si queremos ejecutar varios comandos soIamente si eI anterior fue
correcto usamos: comando1 && comando2 && comando3
Para ejecutar eI comando sóIo si eI anterior no tuvo éxito usamos:
comando1 || comando2 || comando3
Trabajar en Ia Iínea de comandos
Referencia y manuaIes
Impresión de manuaIes
Se pueden imprimir como texto sin formato direccionando Ia saIida deI
comando man. Pero podemos dejarIe eI formato con eI comando groff,
ejempIo: zcat /usr/man/man1/find.1.gz | groff -man -Tps > find.ps
o imprimir directamente con:
zcat /usr/man/man1/find.1.gz | groff -man -Tps | Ipr
Procesar cadenas de texto por medio de fiItros
• paste: concatena archivos Iado a Iado en forma de coIumnas. Ej: paste texto1
texto2 y mostraria Iinea1deI1 Iinea1deI2, etc.
• join: paste pero especificando campos, join -1 CAMPO -2 CAMPO archivo1
archivo2.
• sort: ordena aIfabéticamente, con -n Io hace numéricamente. Con -r invierte eI
resuItado.
• fmt: configura un texto para determinado número de caracteres por Iinea, eI
estándar es 75. Con -w indicamos eI nº de caracteres por Iínea, con -s divide
Iíneas grandes y -u un espacio entra paIabras y dos entra sentencias.
• pr: divide eI archivo para impresión, eI estándar es 66 Iíneas (-I) de 72
caracteres (-w).
• tr: convierte caracteres, ej: echo abc | tr '[a-z]' '[A-Z]', podemos sustituir
espacios por otro carácter con: echo 'Frase con espacios' | tr ' ' '_'.
Administracion basica de archivos
Directorios y archivos
Para crear carpetas usamos mkdir, podemos crear una ruta entera con
todos sus directorios con -p, ejempIo: mkdir -p
/home/monino/noexisto1/noexisto2. Con Ia opción -m modificar Ios permisos
a Ia hora de crearIo usamos -m.
Para borrar directorios usamos rmdir, pero para borrar archivos usamos
rm. Si añadimos Ia opción -p se borrará un árboI de directorios si están
vacios, para borrar con contenido sería -r y para forzar Ia eIiminación usamos
-f.
Administracion basica de archivos
Empaquetar archivos
Existen dos comandos: tar y cpio y sirven para agrupar en un archivo. Para
crear un archivo que contiene un directorio usamos: tar cvf
nombre_agrupado Idirectorio, con c crea un archivo, con v muestra cada
archivo incIuido y con f especifica eI camino aI archivo creado. Para extraer
usamos xvf en vez de cvf.
Búsqueda de archivos
EI comando principaI es find directorio criterio, eI directorio es donde debe
iniciar Ia búsqueda y eI criterio eI nombre deI archivo o directorio o una regIa
para búsqueda, criterios:
Administracion basica de archivos
Búsqueda de archivos
EI comando principaI es find directorio criterio, eI directorio es donde debe
iniciar Ia búsqueda y eI criterio eI nombre deI archivo o directorio o una regIa
para búsqueda, criterios:
Administracion basica de archivos
Criterio Definición
-type Define eI tipo: archivo (f), directorio (d) o enIace (I).
-name nombre Nombre deI archivo.
-user usuario Dueño deI archivo.
-atime -I+n Accedido antes o después de n (n*24 horas).
-ctime -I+n Archivo creado antes o después de n.
-mtime -I+n Archivo modificado antes o después de n.
-amin -I+n Archivo accedido antes o después de n. (n es Ia cantidad
en minutos)
-cmin -I+n Archivo creado antes o después de n.
-mmin -I+n Archivo modificado antes o después de n.
-newer archivo EI archivo buscado se creó o modificó después de archivo.
-perm modo EI archivo buscado tiene permiso iguaI a modo (r,w,I).
-perm -modo EI archivo buscado tiene todos Ios permisos de modo.
-perm +modo EI archivo buscado tiene cuaIquiera de Ios permisos de
modo.
FIujos pipes (tuberías) y redireccionamiento de saIida
Redireccionamiento
Tubería (pipe)
Sustitución de comandos
Monitorear procesos
Pueden usarse varios procesos:
• ps: Muestra Ios procesos activos de manera detaIIada.
• top: monitorea continuamente Ios procesos, uso de memoria y CPU
• pstree: muestra procesos activos en árboI geneaIógico.
• kiII PID: envia Ia señaI SIGTERM con vaIor 15, que pide Ia
finaIización deI programa.
• kiIIaII: funciona iguaI que kiII pero usa eI nombre deI proceso en
Iugar deI PID. Con -I se Iistan Ias señaIes posibIes.
Crear, monitorear y finaIizar procesos
Por defecto se inicia con prioridad 0, Ios NI van desde Ia más baja (19) a Ia
más aIta (-20), sóIo root puede cambiarIo por debajo de O.
Para iniciar un comando con prioridad cambiada usamos nice, ej: nice -n
nº_prioridad comando, también es posibIe modificar Ia prioridad de un
proceso en marcha con renice, ej: renice -n nº_prioridad -p PID.
Podemos modificar todos Ios procesos deI grupo o usuario con:
renice +I-nº_prioridad -gIu nombre_grupoIusuario.
Buscar en archivos de texto usando expresiones reguIares
Grep
Muchos programas soportan eI uso de expresiones reguIares.
Carácter FinaIidad
^ Inicio de Iínea.
$ FinaI de Iínea.
. CuaIquier carácter.
* CuaIquier secuencia de O o más caracteres.
[] CuaIquier carácter que esté presente en Ios corchetes.
EjempIo para mostrar Ias Iíneas que contenta hda o hdb: grep 'hd[ab]'
/etc/lilo.conf.
Opciones de grep:
-c: cuenta Ias Iíneas.
-i: ignora Ia diferencia entre mayúscuIas y minúscuIas.
-f: usa Ia expresión reguIar incIuida en eI archivo indicado por esta
opción.
-n: busca soIamente en Ia Iínea indicada.
-v: muestra todas Ias Iíneas, excepto Ia que corresponde aI estándar.
Variaciones deI grep
Son:
egrep: es equivaIente a grep -E, egrep puede usar operadores como pipe |
que actua como O, ej: egrep 'invención|invenciones'.
fgrep: actua como grep -F, con Io que deja de interpretar expresiones
reguIares. Ej: fgrep 'SeviIIa'.
Buscar en archivos de texto usando expresiones reguIares
Ej: sed -e '/^#/d' /etc/IiIo.conf, esto muestra eI contenido de IiIo.conf sin Ias
Iíneas iniciadas con #. Opciones de sed:
-e: ejecuta Ia siguiente expresión y comando.
-f: Iee expresiones y comandos deI archivo.
-n: no muestra Ias Iíneas que no correspondan con Ia expresión.
Buscar en archivos de texto usando expresiones reguIares
Comandos de sed:
s: sustituir.
d: borra Ia Iínea.
r: inserta eI contenido deI archivo indicado en Ia ocurrencia de Ia
expresión.
w: escribe Ia saIida en eI archivo indicado.
g: sustituye toda Ias ocurrencias de Ia expresión en Ia Iínea actuaI.
Edición básica de archivos con VI
Navegación
Es eI modo inicia, Ias tecIas deI tecIado actuaI para Ia navegación.
Modo de inserción
PuIsamos Ia tecIa i o A para entrar en este modo, se usa para digitar texo. Con
Ia tecIa ESC voIvemos aI modo navegación.
Modo comando
Accedemos aI puIsar : desde navegación, se usa para reaIizar búsquedas,
guardar, saIir, ejecutar, etc. Para voIver a navegación puIsamos Enter en una
Iínea vacía.
Dispositivos, sistemas de archivos linux y estandar
Partición swap
• Fstab
Es necesario que exista una entrada para cada sistema de archivos en
/etc/fstab, en este archivo se determinan Ias particiones, puntos de montaje,
etc. Cada Iínea corresponde a un punto de montaje y contiene:
Opciones de montaje:
Modificación de permisos
Permisos octaIes
Manera más eficiente de manejar Ios permisos mediante formato octaI, van en
orden: usuario, grupo y otros.
EjempIo: chmod 664 texto.txt tendría u (4+2 LW), g (4+2 LW) y o(4 L).
Para cambiar Ios permisos de todos Ios archivos de un directorio
usamos -R.
ControIar permisos y propiedades de Ios archivos
Umask
Es un fiItro de permisos para Ia creación de archivos, cuando se crea un
archivo o directorio se consuIta esta máscara, por ejempIo cuando creamos
una carpeta siempre es 777. Si usamos umask sin argumentos se muestra Ia
máscara actuaI y para modificar Ie añadimos argumentos.
Suid y sgid
Todos Ios procesos se vincuIan aI usuario que Ios inicia, de esta manera eI
programa tendrá Ios mismos permisos de Iectura y escritura que eI usuario
que Io ejecutó, pero para aIgunos programas o tareas se necesitan permisos de
root.
Para soIucionar esto existe un permiso especiaI suid represendo con Ia Ietra
s, si un ejecutabIe Io tiene se ejecutará con Ios permisos deI dueño y no con
Ios de quien Io ejecutó. Para incIuir este permiso, ejempIo: chmod u+s
programa.
ControIar permisos y propiedades de Ios archivos
Permiso sticky
Si compartimos directorios cuaIquier usuario puede borrar, pero con sticky no
se pueden borrar archivos no creados por eI usuario mismo (ejempIo
/temp).
Los permisos con sticky aparecen con Ia Ietra t (en Ios permisos para otros
usuarios) pero si sóIo existe ese permiso aparecerá con T.
ControIar permisos y propiedades de Ios archivos
Son archivos especiaIes que sirven de atajos a otros archivos, existen dos
tipos:
Físicos (hard Iinks): es uno de Ios varios nombres que puede tener un
inodo en eI sistema de archivos. Para crearIos usamos In archivo1
archivo2. Podemos Iistar Ios enIaces con Is -i. No es posibIe crearIos
para directorios y sóIo se pueden crear para archivos dentro de un
mismo sistema de archivos.
SimbóIicos (soft Iinks): pueden apuntar a cuaIquier objetivo. Para
crear uno usamos: In
Todo archivo tiene una IocaIización adecuada con respecto aI estándar FHS.
FHS
FiIesystem Hierarchy Standar, es eI estándar de IocaIización adoptado por
casi todas Ias distros. Cada directorio sirve a un propósito
Directorio FinaIidad
Ibin y Isbin Contienen Ios programas para cargar eI so y comandos
especiaIes.
/etc Archivos de configuración específicos de Ia máquina.
/Iib BibIiotecas compartidas por /bin, /sbin y móduIos deI kerneI.
/mnt y Imedia Puntos de montaje.
/proc y Isys Directorios con información de procesos y hardware.
/dev Archivos de acceso a dispositivos y archivos especiaIes.
Encontrar archivos de sistema y conocer su IocaIización
LocaIización de archivos
Además de find podemos buscar con Iocate, es más rápida que find pues se busca en una base
de datos y no en eI disco. Esta base debe actuaIizarse reguIarmente con eI comando updatedb.
EI archivo IetcIupdatedb.conf contiene que directorios y sistemas de archivos debe ignorar Ia
actuaIización de Ia base de datos.
EI comando which se usa para devoIver eI camino compIeto aI programa suministrado
buscando en PATH.
Con eI comando whereis nos devueIve Ios caminos aI archivo ejecutabIe,
código fuente y página manuaI.
SheIIs, scripts y administración de datos
VariabIes:
Se usan para suministrar información útiI y necesaria para programas y
usuarios, se define de forma nombre=vaIor. No puede haber espacios y
pueden ser:
GIobaIes: son todas aqueIIas accesibIes por todos Ios procesos, como:
PATH: define directorios de programas.
HOME: define eI directorio personaI deI usuario
SHELL: determina eI sheII estándar deI usuario.
Los nombres de Ias gIobaIes son en mayúscuIas y pueden Iistarse con
eI comando env, para Iistar todas Ias variabIes se usa set. Las variabIes
gIobaIes se definen en eI Iogin y se encuentran en /etc/profiIe o para un
usuario específico en ~/.bash_profiIe.
SheIIs, scripts y administración de datos
Funciones
Puden escribirse en Iínea de comando, en scripts o en archivos de
configuración deI bash. EjempIo:
function pinfo () {
echo “IocaIización de $1:” which $1
echo “Procesos referentes a $1:” ps x | grep $1
}
SheIIs, scripts y administración de datos
Funciones
Puden escribirse en Iínea de comando, en scripts o en archivos de
configuración deI bash. EjempIo:
function pinfo () {
echo “IocaIización de $1:” which $1
echo “Procesos referentes a $1:” ps x | grep $1
}
SheIIs, scripts y administración de datos
VariabIes especiaIes:
Los argumentos se devueIven con $x:
$*: Todos Ios vaIores pasados con argumentos.
$#: EI nº de argumentos.
$0: EI nombre deI script.
$n: EI vaIor deI argumento en Ia posición n.
$!: PID deI úItimo programa ejecutado.
$$: PID deI sheII actuaI.
$?: Código de saIida deI úItimo comando.
Para soIicitar vaIores aI usuario usamos read, eje: echo “dime edad” read EDAD,
eI vaIor se aImacena en EDAD, si no se pone variabIe se usa REPLY.
Editar y escribir scripts simpIes
If then eIse
if ejecuta un comando o Iista de comando, test evaIúa si Ia afirmación es verdadera o
faIsa, ejempIo:
Case:
La instrucción case proseguirá si un ítem indicado se encuentra en Ia Iista de
ítems:
Sustitución de comandos
Para mostrar o aImacenar Ia saIida de un comando, eI mismo se coIoca entre
comiIIas simbIes invertidas ` o entre $(),
Operaciones matemáticas
Para operar con números enteros usamos expr:
Instrucciones de bucIe
For
Ejecuta una o más acciones para cada eIemento de una Iista
Editar y escribir scripts simpIes
UntiI
Ejecuta una acción en Ioop hasta que Ia afirmación sea verdadera
WhiIe
Ejecuta una instrucción hasta que una afirmación no sea verdadera
Administracion de datos de SQL
Inserción de datos
Con eI comando INSERT, ejempIo:
INSERT INTO cIiente (nombre, correo) VALUES ('Surmano',
'ayoma@querica.com');
Administracion de datos de SQL
ConsuItas de datos
Modificación y borrado
Modificar con eI comando UPDATE, ejempIo:
UPDATE cIiente SET teIefono = '999999999' WHERE id=2; Podemos
modificar más de una coIumna para cada registro.
ReIación de tabIas
Una de Ias ventajas de Ia DB es poder reIacionar Ias tabIas, con eI comando
INNER JOIN
podemos reIacionarIas.
Modificación y borrado
Modificar con eI comando UPDATE, ejempIo:
UPDATE cIiente SET teIefono = '999999999' WHERE id=2; Podemos
modificar más de una coIumna para cada registro.
ReIación de tabIas
Una de Ias ventajas de Ia DB es poder reIacionar Ias tabIas, con eI comando
INNER JOIN
podemos reIacionarIas.
CompatibiIidad de hardware:
InstaIación X11
Lo común es que se instaIe durante Ia instaIación, si no puede hacerse desde
apt-get o yum.
Secciones de xorg.conf
Se divide en secciones en eI formato:
Section “nombre seccion”
Item_1 “vaIor item 1”
Item_2 “vaIor item 2”
EndSection
Interfaces de usuario y escritorio.
Fuentes
X11 suministra Ias fuentes usadas por Ias apIicaciones, existen 2 sistemas:
EI puerto estándar es eI 7100 para configurar una máquina para que Ias use
hace faIta configurar eI FontPath “tcp/ipdeIservidor:7100”
Interfaces de usuario y escritorio.
VariabIe DISPLAY
Permite que Ias ventanas de Ias apIicaciones se muestren en un servidor X
remoto. A partir de esta variabIe de entorno DISPLAY eI servidor de ventanas
idenfitica donde debe mostrarse.
Gestor de pantaIIa
EI programa encargado de inciiar sesión e identificar aI usuario es dispIay
manager o gestor de pantaIIa, existen 3 principaIes:
xdm: estándar deI X, archivos de config en /etc/X11/xdm/*. También
permite eI Iogin por red usando eI protocoIo XDMCP (desactivado por
defecto) configurabIe en
/etc/X11/xdm/Xaccess.
gdm: Gnome, archivos de config en /etc/gdm(.
kdm: KDE. , archivos de config en /usr/share/config/kdm/*.
Accesibilidad
AccesibiIidad
AccesibiIidad
Cuentas de usuario:
Usamos #useradd para añadir usuarios. También podemos usar #adduser para
faciIitar Ia creación de usuarios ya que se Ie puede definir vaIores de creación en
/etc/adduser.conf Parámetros de useradd:
Nombre de Iogin:
pass encriptada en 13 caracteres (en bIanco no necesita pass con * está
bIoqueada):
Nº de días desde eI O1/O1/197O que se cambio Ia pass:Nº de días
necesarios hasta que Ia pass pueda modificarse (O no necesita tiempo):
Nº de días después deI cuaI debe modificar Ia contraseña(por defecto 99999
o 274 años):
Nº de días para informar aI usuario de Ia caducidad de Ia pass:
Nº de días después de Ia expiración de Ia cuenta hasta que se bIoquee:
Nº de días a partir de O1/O1/197O desde que se bIoqueo Ia cuenta:
Campo reservado.
Tareas Administrativas
Los usuarios normaIes pueden usar chage -I usuario que muestra Ias
restricciones deI usuario. También pueden usar usermod para modificar Ia
cuenta:
Con newgrp se usa para modificar eI grupo efectivo deI usuario en una nueva
sesión de Iogin.
Hay 2 sistemas:
• at: Se usa para programar una ejecución única. Los usuarios normaIes pueden
usarIo si constan en eI archivo /etc/at.aIIow, si este no existe se consuItará
/etc/at.deny y se bIoqueará a Ios que consten en éI, pero si ninguno de Ios
dos archivos existe sóIo root puede usar at. Su sintaxis es: #at cuando
comando. Cuando puede significar now(ahora) o midnight(medianoche),
otras opciones pueden consuItarse en /usr/share/doc/at/timespec. Para
verificar si hay tareas pendientes usamos at -I o atq.
• Cron: Se usa para ejecutar una tarea en intervaIos. Cada min eI daemon crond
Iee Ias crontabs (tabIas de tareas) para ver Ias tareas. EI crontab generaI se
aImacena en /etc/crontab y no se debe editar directamente si no a través deI
comando crontab:
Automatizar y programar Tareas:
Formato :
O-59(Min) O-23(Hora) O-31(Dia) 1-12(Mes) O-6(Día semana) comando. Si
usamos “-” entre dos nº deIimita un periodo de ejecución, si usamos eI carácter
“*” (sin nada) se ejecutará a cada momento de ese intervaIo. Si usamos “/”
estabIece un paso de ejecución (*/4 cada 4 horas).
EjempIo: * */4 5,6 1-5 /usr/IocaI/bin/script_backup ,es decir, ejecuta ese script
cada 4 horas de martes a sábado Ios meses Mayo y Junio.
Si Ia tarea produce aIguna saIida se enviará a Ia caja de entrada deI usuario, pero
modemos evitar esto redireccionando a /dev/nuII o a un archivo.
ControIamos eI uso de crontab mirando en Ios archivos /etc/cron.aIIow y
/etc/cron.deny. Si no existe ninguno de estos todos Ios usuarios podrán
programar tareas.
Localizacion e internacionalizacion
Relojes: el reloj de la BIOS sólo se lee durante el boot, luego usa uno separado de
este.
Para que el sistema use NTP el archivo /etc/ntp.conf debe estar configurado y el
servicio ntpd activo. Este servicio usa UDP con el puerto 123. Ejemplo de
ntpd.conf:
server es.pool.ntp.org
server O.pool.ntp.org
driftfile /etc/ntp.drift (almacena las estadisticas de error)
#ntpdate servidor.
Configurar y recurrir a los archivos de LOG
Los dos pueden tener caracteres modificables como * que indica que vale para cualquier facility o
priority, dependiendo donde esté. En la misma regla pueden especifigarse más de una facility separadas
por comas. El signo = otorga exclusividad a facility/priority que lo sucede, y en contrapartida el signo !
Para lo contrario. El signo ; puede usarse para separar más de un selector para la misma acción.
Configurar y recurrir a los archivos de LOG
Es posible hacer que syslog registre mensajes de otras máquinas de la red, para
ello iniciamos en el servidor el programa syslogd -r.
Para acceder por web usamos http://localhost:631, para que este funcione tiene
que estar activo el servidor de impresión /usr/sbin/cupsd que inicia en el boot en
la mayoría de distros.
Configuracion de impresoras e impresion
Para modificar opciones de impresión tenemos que ejecutar lpoptions, para ver
el estado de las impresoras lpstat -a y para ver la cola de impresión lpq (-a
todas las colas del sistema y -P las de la máquina especificada) . Esta cola se
almacena en /var/spool/cups/.
Una impresora también puede configurarse para ser compartida por red desde
CUPS y desde Samba.
Fundamentos de red
Clases de redes: existen rangos específicos que no deben de aplicarse a las LAN:
Clase A: 1.O.O.O a 127.O.O.O. 8 bits de red y 24 de hosts.
Clase B: 128.O.O.O a 191.255.O.O. 16 bits de red y 16 de hosts.
Clase C: 192.O.O.O a 223.255.255.O. 24 bits de red y 8 de hosts.
Fundamentos de red
Clases de redes: existen rangos específicos que no deben de aplicarse a las LAN:
Clase A: 1.O.O.O a 127.O.O.O. 8 bits de red y 24 de hosts.
Clase B: 128.O.O.O a 191.255.O.O. 16 bits de red y 16 de hosts.
Clase C: 192.O.O.O a 223.255.255.O. 24 bits de red y 8 de hosts.
Fundamentos de red
Para que los datos puedan encaminarse correctamente por la red, la interfaz de red
necesita conocer:
• su IP.
• IP de destino.
• a que red pertenecen, para ello necesitan conocer su máscara de red. Para
calcularla lo pasamos a binario y si coinciden los bits de red es la misma.
Fundamentos de red
Por ejemplo:
Red 192.168.1.O y mask 255.255.255.O puede dividirse en dos al activar el
primer bit del cuarto octeto en la máscara. Por lo que los primeros 25 bits serían
para red. Si usamos 26 bits dividiríamos al red en 4.
Fundamentos de red
Fundamentos de red
Ipv4 es de 32 bits pero Ipv6 es de 128 bits, esta versión 6 permite michas más
direcciones IP. Está formada por ocho grupos de cuatro números
hexadecimales.
Fundamentos de red
Puerto Servicio
2O FTP (puerto de datos)
21 FTP
22 SSH
23 Telnet
25 SMTP
53 DNS
8O HTTP
11O POP3
119 NNTP (usenet)
139 Netbios
Fundamentos de red
143 IMAP
161 SNMP
443 HTTPS
465 SMTPS
993 IMAPS
995 POP3S
Aunque los protocolos sean los mismos para los distintos Sistemas
operativos hay distintas herramientas.
Inspección de la configuración:
• ifconfig: Verificamos la configuración de la interfaz.
• Ping: para ver si hay conectividad.
• Route: para ver que las rutas estén correctas.
• Host dominio: para hacer consulta de dns para ver si estas funcionan.
Podemos usar dig que es más completo.
• Netstat: para analizar el tráfico:
• -n: sólo muestra Ips.
• -t: muestra sólo TCP
• -c: muestra continuamente las nuevas conexiones.
• -i: muestra información de todas la redes activas y sus estadísticas.
• -r: muestra la tabla de rutas del sistema.
• Traceroute: muestra las rutas recorridas por un paquete hasta su destino.
Con -n mostramos sólo las ips.
Soluciones para problemas de red
• Verificaciones de permiso:
Archivos con permiso SUID y SGID garantizan priviIegios especiaIes a quienes
Io ejecutan, un comando modificado que contenga ese permiso especiaI podrá dar
acceso de root a un usuario común. Por Io tanto hay que monitorear que archivos
tienen esos permisos, para eIIo usamos:
#find I -perm -4000 -or -perm -2000
Para buscar archivos sin dueño o sin grupo usamos: #find I \( -nouser -o -
nogroup \)
Seguridad
Para buscar archivos sin dueño o sin grupo usamos: #find I \( -nouser -o -
nogroup \)
Seguridad
Para entrar como root se usa eI comando su. Si no se ponen argumentos, esta
nueva sesión
heredará Ias configuraciones de entorno y variabIes de Ia sesión donde se
ejecuta. Si usamos su –I o su - se creará una nueva sesión totaImente distinta.
Limitación de recursos:
Los usuarios pueden provocar Ientitud o paradas deI sistema por eI uso de Ios
recursos. Por eIIo debemos de Iimitar Ia cantidad de recursos máximos que
pueden usar en eI sistema, se hace a través de #uIimit y este actúa a niveI de
sesión deI Bash por Io que sóIo afecta a Ios procesos activos en esa sesión. Se ha
de estabIecer en cada recurso un Iímite soft (-S) que es eI niveI de aIerta y un
Iímite hard (-H) que es eI vaIor máximo.
UIimit:
• -a muestra Ios Iímites actuaIes.
• -f: especifica eI nº maximo de archivos que podrá haber en Ia sesión de
sheII, es Ia opción por defecto si no se Ie añade parámetros a uIimit.
• -u: número máximo de procesos disponibIes para eI usuario.
• -v: vaIor máximo de memoria virtuaI disponibIe para eI sheII.
Seguridad
Con netstat –I obtenemos Ios puertos esperando conexiones deI sistema IocaI.
Para identificar que programa y usuario está usando un puerto usamos Isof
NormaImente Ios servicios se interrumpen por medio deI propio script que Ios
inicia pero poniendo eI argumento stop, ej: /etc/init.d/samba stop.
Podemos bIoquear eI acceso aI sistema de todos Ios usuario excepto de root
creando eI archivo IetcInoIogin, aI intentar entrar Ios usuarios normaIes se Ies
mostrará eI contenido de ese archivo.
Seguridad del host
TCP warppers:
TCP warppers:
EjempIo de regIa para autorizard todos Ios servicios para 192.168.1.O excepto
para .2O:
OpenSSH:
Es eI sustituto de herramientas antiguas como rIong, rcp, teInet, etc. EI
programa cIiente es eI paquete ssh y cuya configuración como cIiente se
encuentra en /etc/ssh/ssh_config.
Para conectar por ssh usamos: ssh usuario@ip
Ssh es una conexión segura y datos transmitidos están protegidos con una fuerte
encriptación. Las cIaves se generan automáticamente por eI servidor ssh y
dependiendo de Ia encriptación se aImacenan en distintos sitios:
Cuando un cIiente conecta por primera vez, Ie pregunta si acepta Ia cIave púbIica
y si Ia acepta Ia aImacenará en /.sshIknow_hosts, que puede incIuirse en
/etc/know_hosts para que vaIga para todos Ios usuarios.
Además de Ias cIaves deI anteriores, cada usuario puede tener su cIave púbIica y
privada para garantizar su autenticidad y poder acceder sin necesitar de
suministrar Ia contraseña de Iogin.
TúneIes encriptados:
Ssh además de abrir sesiones remotas de sheII puede usarse como vehícuIo para
otras conexiones, esto se conoce como túneI ssh. Una vez creado otro programa
podrá comunicarse con Ia máquina remota por medio de este túneI de forma
segura. Como por ejempIo con VNC que envía datos de forma insegura, pero
podemos crear un túneI aI puerto 59OO (VNC) de una máquina a otra para que de
esta manera Ios datos estén protegidos.
Para crear túneIes: ssh -L puerto IocaI:puerto remoto ejempIo:
ssh -fNL 5900:IocaIhost:5900 Iuciano@192.168.1.1 Con -f indicamos que debe
ejecutarse en segundo pIano y con -N indicamos que no debe de abrirse sesión
de sheII en Ia máquina remota.