Upload
others
View
8
Download
0
Embed Size (px)
Citation preview
CONFIGURACION, IMPLEMENTACIÓN Y ADMINISTRACION DE REDES Y SERVIDORES LINUX
Manual del estudiante – Vol. 1
INTRUCTOR:
Ing. Edgar Villa Morales
Agosto - 2017
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
© 2017 Corporación Líderes
TODOS LOS DERECHOS RESERVADOS
Queda reservado el derecho de propiedad de este documento, con la facultad de disponer de
él, publicarlo, traducirlo o autorizar su traducción, así como reproducirlo total o parcialmente,
por cualquier sistema o medio.
No se permite la reproducción total o parcial de este documento, ni su incorporación a un
sistema informático, ni su locación, ni su transmisión en cualquier forma o por cualquier medio,
sea éste escrito o electrónico, mecánico, por fotocopia, por grabación u otros métodos, sin el
permiso previo y escrito de los titulares de los derechos y del copyright.
FOTOCOPIAR ES DELITO.
Otros nombres de compañías y productos mencionados en este documento, pueden ser marcas
comerciales o marcas registradas por sus respectivos dueños.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Contenido
INTRODUCCIÓN ............................................................................................................................ 6
DESARROLLO ............................................................................................................................ 7
1. MODULO 1.- GESTIÓN DE SOFTWARE .............................................................................. 7
1.1. OBJETIVOS ......................................................................................................................... 7
1.2. QUÉ ES EL SISTEMA OPERATIVO LINUX SERVER Y COMFIRGURACIÓN DE FECHA ............ 7
1.3. INSTALACIÓN DEL SISTEMA OPERATIVO LINUX SERVER – REDHAT.. INSTALACIÓN DE
IMPRESORA ................................................................................................................................. 7
1.4. ADMINISTRACIÓN DE ALMACENAMIENTO EN DISCOS............................................................. 8
1.5. GESTIÓN DEL SOFTWARE DEL SISTEMA CON EL MANEJADOR DE PAQUETES APT OR SYNAPTIC ... 8
1.6. USO DEL SHELL BÁSICO ....................................................................................................... 9
1.7. USO DE LAS UTILIDADES MAN Y HELP ................................................................................... 9
1.8. EDICIÓN DE ARCHIVOS DE TEXTO CON EL EDITOR VI ............................................................ 10
1.9. CONFIGURACIÓN DE FECHA Y ZONA HORARIA ..................................................................... 13
1.10. GESTIÓN DEL SOFTWARE DEL SISTEMA CON EL MANEJADOR DE PAQUETES RPM - YUM ...... 14
1.11. SUPERVISAR LOS RECURSOS DEL SISTEMA (TOP) ............................................................. 15
2. MODULO 2.- CONFIGURACIÓN ....................................................................................... 17
2.1. OBJETIVOS ....................................................................................................................... 17
2.2. ADMINISTRACIÓN DE USUARIOS Y GRUPOS ........................................................................ 18
2.3. CONFIGURACIÓN DE LA RED .............................................................................................. 20
2.4. MANEJO DE ARCHIVOS DESDE LA LÍNEA DE COMANDOS. ..................................................... 21
2.5. PERMISOS EN ARCHIVOS Y PERMISOS DE USUARIO .............................................................. 22
2.6. MÓDULO 2 LINUX SERVER – ADMINISTRACIÓN ................................................................... 22
3. MÓDULO 3.- INSTALACIÓN DEL SERVIDOR DE NOMBRES (DNS) .................................... 22
3.1. OBJETIVOS ....................................................................................................................... 22
3.2. QUE ES UN SERVIDOR DNS, FUNCIÓN Y CARACTERÍSTICAS .................................................. 22
3.3. INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES DNS BIND ........................ 23
3.4. CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES SECUNDARIO ............................................ 23
3.5. USO DE NSLOOKUP Y DIG .................................................................................................. 23
4. RESPALDOS DE INFORMACIÓN ....................................................................................... 25
4.1. OBJETIVOS ........................................................................................................................... 25
4.2. QUÉ ES UN SITE .................................................................................................................... 25
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
4.3. PARA QUÉ SIRVEN LOS RESPALDOS ......................................................................................... 26
4.4. QUE RESPALDAR ................................................................................................................... 26
4.5. QUE MEDIOS UTILIZAR AL RESPALDAR LA INFORMACIÓN ......................................................... 26
4.6. CÓMO RESTAURAR LA INFORMACIÓN ..................................................................................... 27
4.7. USO DE SECURE SHELL PARA TRANSFERIR INFORMACIÓN DE RESPALDOS .................................. 28
4.8. CREACIÓN DE UN SCRIPT PARA GENERAR RESPALDOS .............................................................. 28
4.9. CREACIÓN DE UNA ENTRADA EN EL CRON DIARIO PARA GENERAR EL SCRIPT Y ENVIAR LA
INFORMACIÓN RESPALDADA AL SERVIDOR REMOTO DE ALMACENAMIENTO DE RESPALDOS .................... 29
5. FIREWALL – MAQUINAS VIRTUALES .............................................................................. 29
5.1. CONFIGURACIÓN BÁSICA DE UN CORTAFUEGOS (FIREWALL) .................................................... 29
5.2. CONFIGURACIÓN PARA HACER NAT A UNA RED USANDO A UN SERVIDOR COMO GATEWAY ...... 29
5.3. CONFIGURACIÓN DE FILTRACIÓN DE PAQUETES, ACEPTÁNDOLOS O DENEGÁNDOLOS ................. 30
5.4. REDIRECCIONAMIENTO DE PAQUETES A OTRO SERVIDOR Y/O PUERTO ..................................... 30
5.5. ADMINISTRACIÓN DE MÁQUINAS VIRTUALES .......................................................................... 30
5.6. QUE ES LIBVIRT, KVM Y QEMU ............................................................................................... 31
5.7. DETECTAR SI EL HYPERVISOR DE KVM PUEDE FUNCIONAR BIEN EN EL EQUIPO A INSTALAR ......... 32
5.8. USO DE VIRT-MANAGER PARA GESTIONAR LA CREACIÓN Y ELIMINACIÓN DE MÁQUINASVIRTUALES
33
5.9. USO DE VIRSH PARA GESTIONAR LAS MÁQUINAS VIRTUALES EN LÍNEA DE COMANDOS .............. 33
5.10. USO DE RSYNC PARA BACKUP AUTOMÁTICOS CON BASH Y CROND ....................................... 33
5.11. USO DE FIREWALL IPTABLES MÓDULO DE LAYER-7 .............................................................. 34
6. BITÁCORAS Y SEGURIDAD .............................................................................................. 34
6.1. OBJETIVOS ........................................................................................................................... 34
6.2. BITÁCORAS DEL SISTEMA ....................................................................................................... 35
6.3. REVISIÓN DE LAS BITÁCORAS DEL SISTEMA Y DE SERVICIOS ...................................................... 35
6.4. LECTURA DE BITÁCORAS DEL SISTEMA PARA REVISIÓN DE ACCESOS , FALLAS EN EL SERVIDOR Y
VERIFICACIÓN DE ERROR. ................................................................................................................... 36
6.5. COMENTARIOS ACERCA DE PROGRAMAS QUE NOS AYUDEN A REVISAR LOGS ............................. 36
6.6. REVISIÓN DE LAS BITÁCORAS ................................................................................................. 37
6.7. SEGURIDAD .......................................................................................................................... 38
6.8. QUÉ ES Y PARA QUÉ SIRVE ..................................................................................................... 38
6.9. SEGURIDAD, INICIOS, CIFRADO, DESCIFRADO, COMO NACIÓ LA NECESIDAD DE UTILIZARLA ........ 38
6.10. PROTOCOLOS ................................................................................................................... 39
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.11. ALGORITMOS ................................................................................................................... 39
6.12. CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA ........................................................................... 40
7. LAMP .............................................................................................................................. 47
7.1. OBJETIVOS ........................................................................................................................... 47
7.2. QUE ES LAMP? ..................................................................................................................... 47
7.3. INSTALACIÓN Y CONFIGURACIÓN DE LAMP ............................................................................ 48
7.4. INSTALACIÓN Y CONFIGURACIÓN DE APACHE .......................................................................... 49
7.5. REVISIÓN DE ARCHIVOS DE CONFIGURACIÓN .......................................................................... 50
7.6. DATOS RELEVANTES DE LA CONFIGURACIÓN DE APACHE .......................................................... 50
7.7. DIRECTORIOS WEB ................................................................................................................ 51
7.8. ACTIVACIÓN DE MÓDULOS .................................................................................................... 52
7.9. SITIOS VIRTUALES CON APACHE ............................................................................................. 53
7.10. INSTALACIÓN DE MYSQL .................................................................................................. 55
7.11. CONFIGURACIÓN POR PRIMERA VEZ ................................................................................... 55
7.12. INSTALACIÓN DE PHP ....................................................................................................... 56
7.13. REVISIÓN DE ARCHIVO DE CONFIGURACIÓN ........................................................................ 57
8. SERVIDOR DE CORREO ................................................................................................... 58
8.1. OBJETIVOS ........................................................................................................................... 58
8.2. QUE ES UN SERVIDOR DE CORREO .......................................................................................... 58
8.3. INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DE CORREO ................................................ 59
8.4. INSTALACIÓN Y CONFIGURACIÓN DE POSTFIX ......................................................................... 60
8.5. ARCHIVOS DE CONFIGURACIÓN .............................................................................................. 61
8.6. CONFIGURACIÓN DE POSTFIX ................................................................................................ 61
8.7. INSTALACIÓN DE DOVECOT .................................................................................................... 62
8.8. CONFIGURACIÓN DE DOVECOT .............................................................................................. 62
8.9. AUTENTICACIÓN/REVISIÓN/ENVÍO DE CORREOS A TRAVÉS DE UN CLIENTE DE CORREO .............. 62
1. SEGURIDAD DEL SERVIDOR ............................................................................................ 63
1.1. SEGURIDAD BÁSICA DEL SERVIDOR ......................................................................................... 63
1.2. REVISIÓN DE ARCHIVOS DE CONTRASEÑAS Y AUTENTICACIÓN .................................................. 65
1.3. ESCANEOS AL SERVIDOR PARA VERIFICACIÓN DE SERVICIOS ACTIVOS ....................................... 65
1.4. ELIMINACIÓN DE SERVICIOS NO NECESARIOS .......................................................................... 66
1.5. VERIFICACIÓN DEL USO DE IPTABLES ...................................................................................... 66
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
1.6. VERIFICACIÓN DEL USO DE SELINUX ...................................................................................... 67
1.7. VERIFICACIÓN DEL USO DE SSH ............................................................................................. 68
1.8. USO DE NMAP ...................................................................................................................... 69
1.9. INSTALACIÓN DE HERRAMIENTAS PARA PREVENIR INTRUSIONES .............................................. 71
Spoofing. ..................................................................................................................................... 71
Sniffing. ....................................................................................................................................... 71
Denegación de servicio (DoS). ..................................................................................................... 72
1.10. REVISAR INTENTOS DE INTRUSIÓN ..................................................................................... 73
1.11. CONFIGURACIÓN DE SELINUX PARA HABILITAR SERVICIOS SIN DESACTIVAR LA SEGURIDAD ... 73
INTRODUCCIÓN
Este curso está dirigido para personal operativo con conocimientos, habilidades y destrezas en
administración de servidores. Enfoca a la instalación y configuración del Sistema Operativo Linux,
configuraciones de servicios de red y manejo de seguridades.
La información que consta en este manual, ayudará a los profesionales a gestionar y administrar la
infraestructura bajo su responsabilidad, así como estarán en capacidad de buscar información
complementaria que les permita profundizar los temas de interés propio y necesidades que no son
parte del alcance de este curso.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
DESARROLLO
1. MODULO 1.- GESTIÓN DE SOFTWARE
1.1. OBJETIVOS
- Conocer las características y ventajas del sistema operativo Linux server 7.0
- Instalar el sistema operativo linux redhat 7.0
- Utilizar comandos y utilitarios básicos del sistema operativo para familiarizarse con el
entorno.
1.2. QUÉ ES EL SISTEMA OPERATIVO LINUX SERVER Y COMFIRGURACIÓN DE FECHA
El sistema operativo Linux está pensado para aprovechar en su totalidad las características de las computadoras. Es un sistema Unix con licencia libre, por lo tanto cualquier usuario puede accederlo. Al ser de código abierto, Linux puede ser enriquecido y modificado a partir del aporte de los usuarios, es un sistema operativo con herramientas de multiprocesamiento, multitarea y multiusuario. Destaca especialmente por su elevada capacidad para aprovechar el procesamiento y las condiciones de seguridad, sus características y ventajas son las siguientes:
- Permite accede a software de libre distribución - Está centrado en el aprovechamiento de redes - Es el sistema operativo preferido por los informáticos - Brinda soporte a todo tipo de hardware y puede funcionar en múltiples
plataformas - Presenta una importante capacidad multitarea - Favorece el trabajo en modo multiusuario - Garantiza un avanzado nivel de seguridad (algoritmos DES) - Permite un mayor control de los dispositivos - Va por fuera de las grandes compañías internacionales y monopolios
1.3. INSTALACIÓN DEL SISTEMA OPERATIVO LINUX SERVER – REDHAT.. INSTALACIÓN DE
IMPRESORA
Para instalar el sistema operativo debemos tomar las siguientes consideraciones:
- Disponer del medio (DVD o ISO) - La plataforma sobre la cual vamos a instalar (física o virtual) - En que se va a utilizar el servidor - Definir el sistema de archivos - Ejecutar el Laboratorio 1
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Se realizará práctica de instalación de impresora.
1.4. ADMINISTRACIÓN DE ALMACENAMIENTO EN DISCOS
El almacenamiento de discos básicos admite discos orientados a la partición.
Un disco básico es un disco físico que contiene volúmenes básicos (particiones
primarias, particiones extendidas o unidades lógicas). En los discos de registro
de inicio maestro (MBR) puede crear hasta cuatro particiones primarias en un
disco básico, o hasta tres particiones primarias y una partición extendida.
También puede utilizar el espacio libre de una partición extendida para crear
unidades lógicas. En los discos de tabla de partición GUID (GPT) puede crear
hasta 128 particiones primarias. Como en los discos GPT no existe la limitación
de cuatro particiones no tiene por qué crear particiones extendidas en las
unidades lógicas.
Utilice discos básicos, en lugar de discos dinámicos, en equipos con Microsoft
Windows XP Professional o un miembro de Windows Server 2003 que estén
configurados para inicio dual o inicio múltiple con Microsoft Windows XP Home
Edition, Microsoft Windows NT 4.0, Microsoft Windows Millennium Edition,
Microsoft Windows 98 o anteriores, o Microsoft MS-DOS. Estos sistemas
operativos no pueden obtener acceso a los datos almacenados en discos
dinámicos.
1.5. GESTIÓN DEL SOFTWARE DEL SISTEMA CON EL MANEJADOR DE PAQUETES APT OR SYNAPTIC
Un sistema de gestión de paquetes, también conocido como gestor de
paquetes, es una colección de herramientas que sirven para automatizar el
proceso de instalación, actualización, configuración y eliminación de paquetes
de software. El término se usa comúnmente para referirse a los gestores de
paquetes en sistemas Unix-like, especialmente GNU/Linux, ya que se apoyan
considerablemente en estos sistemas de gestión de paquetes.
En estos sistemas, el software se distribuye en forma de paquetes,
frecuentemente encapsulado en un solo fichero. Estos paquetes incluyen otra
información importante, además del software mismo, como pueden ser el
nombre completo, una descripción de su funcionalidad, el número de versión,
el distribuidor del software, la suma de verificación y una lista de otros
paquetes requeridos para el correcto funcionamiento del software. Esta
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
metainformación se introduce normalmente en una base de datos de paquetes
local.
1.6. USO DEL SHELL BÁSICO
El intérprete de comandos es la interfaz entre el usuario y el sistema operativo. Por esta razón, se le da el nombre inglés “shell”, que significa “caparazón”.
Por lo tanto, la shell actúa como un intermediario entre el sistema operativo y el usuario
gracias a líneas de comando que este último introduce.
Existen varios shells, los más comúnes son sh (Bourne shell), bash (Bourne again shell), csh
(C Shell), Tcsh (Tenex C shell), ksh (Korn shell) y zsh (Zero shell).
Cada usuario tiene una shell predeterminada, que se especifica en el archivo de
configuración /etc/passwd al final de la línea que corresponde al usuario.
Para acceder al Shell remotamente se requiere de utilitarios como MOVETERM, PUTTY,
entre los más utilizados.
1.7. USO DE LAS UTILIDADES MAN Y HELP
Existen diferentes formas para obtener ayuda sobre los comandos, ficheros de
configuración, ficheros especiales, etc. esta documentación se encuentra en la ruta
/usr/share/doc. Existen algunas formas para desplegar esta información entre las más usadas
tenemos:
El comando man, es la interfaz utilizada para ver los manuales de referencia del sistema,
permite desplazarse hacia arriba y hacia abajo, buscar incidencias de texto específico y otras
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
funciones útiles, cada argumento es normalmente el nombre de un programa, utilidad o
función. Ejemplo:
[root@srvstdo ~]# man ls
El comando man permite la utilización de parámetros.
El comando help almacena y recupera información acerca de los comandos de bash. Para utilizar las opciones de este comando, invocaremos a --help p—h nos devolverá una lista con las opciones de ese comando:
[root@srvstdo ~]#chmod—help
1.8. EDICIÓN DE ARCHIVOS DE TEXTO CON EL EDITOR VI
El editor vi es un editor de texto de pantalla completa que maneja en memoria el texto
entero de un archivo. Es el editor clásico de UNIX; está en todas las versiones. Puede usarse en
cualquier tipo de terminal con un mínimo de teclas; esto lo hace difícil de usar hasta que uno se
acostumbra.
La sintaxis para abrir Vi es la siguiente:
[root@srvstdo ~]# vi nombre_del_archivo
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
La pantalla de edición de vi
Para conocer los comandos del editor vi podemos utilizar la ayuda
man vi
vi –h
COMANDO SIGNIFICADO
Editorvi
vinombre_de_archivo Abrir o crear el archivo
vi Abrir un archivo nuevo para nombrarlo más tarde
vi-rnombre_de_archivo Recuperar un archivo de una caída del sistema
viewnombre_de_archivo Abrir archivo sólo para leer
Comandos del cursor
h, Moverse un carácter hacia la izquierda
j Moverse una línea hacia abajo
k Moverse una línea hacia arriba
l Moverse un carácter a la derecha
w Moverse una palabra a la derecha
W Moverse una palabra a la derecha (pasados los signos de puntuación)
b Moverse una palabra a la izquierda
B Moverse una palabra a la izquierda (pasados los signos de puntuación)
e Moverse al final de la palabra actual
Return Moverse una línea hacia abajo
Back Space Moverse un carácter a la izquierda
Space Bar Moverse un carácter a la derecha
H Moverse a la parte de arriba de la pantalla
M Moverse al centro de la pantalla
L Moverse a la parte inferior de la pantalla
Ctrl-F Paginar una pantalla hacia adelante
Ctrl-D Desplazarse media pantalla hacia adelante
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Ctrl-B Paginar una pantalla hacia atrás
Ctrl-U Desplazarse media pantalla hacia atrás
Insertar caracteres y líneas
a Insertar caracteres a la derecha del cursor
A Insertar caracteres al final de la línea
i Insertar caracteres a la izquierda del cursor
I Insertar caracteres al principio de línea
o Insertar una línea por debajo el cursor
O Insertar una línea por encima del cursor
Cambiar texto
cw Cambiar una palabra (o parte de una palabra) a la derecha del cursor
c Cambiar una línea
C Cambiar desde el cursor hasta el final de la línea
s Sustituir cadena por carácter(es) desde el cursor hacia adelante
r Reemplazar el carácter marcado por cursor por otro carácter
r Return Partir una línea
J Unir la línea actual con la línea inferior
xp Transponer el carácter del cursor con el carácter a la derecha
~ Cambiar el tipo de letra (mayúscula o minúscula)
u Deshacer el comando anterior
U Deshacer todos los cambios en la línea actual
:u Deshacer el comando anterior sobre la línea última
Eliminar texto
x Eliminar el carácter del cursor
X Eliminar el carácter a la izquierda del cursor
dw Eliminar la palabra (o la parte de la palabra a la derecha del cursor)
dd Eliminar la línea que contiene al cursor
D Eliminar la parte de la línea a la derecha del cursor
dG Eliminar hasta el final de línea
d1G Eliminar desde el principio del archivo hasta el cursor
Copiar y mover texto
yy Tirar o copiar línea
Y Tirar o copiar línea
p Poner la línea tirada o eliminada por debajo de la línea actual
P Poner la línea tirada o eliminada por encima de la línea actual
Ajustar la numeración de las líneas
:set nu Mostrar los números de las líneas
:set nonu Esconder los números de las líneas
Establecer la distinción entre mayúsculas y minúsculas
:set ic En la búsqueda se ignora la distinción entre mayúsculas y minúsculas
:set noic En la búsqueda se distingue entre mayúsculas y minúsculas
Encontrar una línea
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
G Ir a la última línea del archivo
21G Ir a la línea 21
Buscar y reemplazar
/string Búsqueda de cadena de caracteres
?string Búsqueda hacia atrás de cadena de caracteres
n Encontrar la siguiente aparición de string en la dirección de búsqueda
N Encontrar la aparición previa de la cadena de caracteres en la dirección de búsqueda
:g/search/s//replace/g Buscar y reemplazar
Guardar y salir
:w Guardar los cambios
:q! Salir sin guardar los cambios
1.9. CONFIGURACIÓN DE FECHA Y ZONA HORARIA
- Configurar la zona horaria
Creamos un backup del directorio /etc/localtime
[root@srvstdo ~]# mv /etc/localtime /etc/localtime.bak
Luego hacemos un link simbolico que apunte a otra zona horaria en este caso lo haremos a Paraguay. [root@srvstdo ~]# ln -s /usr/share/zoneinfo/America/Asuncion /etc/localtime
Si nuestro servidor tiene un proceso automatico para actualizar estos directorios cuando el horario de verano cambia (por ej), los archivos ubicados en /usr/share/zoneinfo seran actualizados pero los ubicados en /etc/localtime no, por eso la creación del link; con eso sería suficiente, pero por si acaso tenemos aplicaciones que usan el formato antiguo de timezone, también lo cambiamos en /etc/sysconfig/clock
[root@srvstdo ~]# vi /etc/sysconfig/clock
ZONE=”America/Asuncion”
el cambio lo hace sin reiniciar la máquina, sólo habría que reiniciar las aplicaciones que utilicen el timezone.
- Configurar fecha y hora
La sintaxis es la siguiente: date MMDDhhmmYYYY.
[root@srvstdo ~]# date
Wed Aug 16 20:37:20ECT 2017
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
[root@srvstdo ~]# date 081707272017 Thu Aug 17 07:27:00 ECT 2017
- Sincronizar la hora con el HWCLOCK (Hora del hardware , hora y fecha almacenados en la bios del equipo)
[root@srvstdo ~]# hwclock –systohc [root@srvstdo ~]# hwclock
Sun 24 Mar 2013 13:01 PM GMT -0.125883 seconds
1.10. GESTIÓN DEL SOFTWARE DEL SISTEMA CON EL MANEJADOR DE PAQUETES RPM - YUM
Para instalar un paquete en RedHat, debemos buscar y bajarel software empaquetado en formato .rpm
Una vez que disponemos del paquete.rpm lo instalaríamos:
[root@srvstdo ~]# rpm -hiv paquete.rpm
advertencia: la espera de bloqueo de transacción / var/lib/rpm/__db.000 Preparación...########### ################################[100%] 1: paquete ############## #############################[100%]
La mayoría de los administrador de Linux hemos sufrido en algún momento la pesadilla de las dependencias de software: para instalar el paquete A; nos avisa de que A tiene dependencias de B y C; buscamos y descargamos el paquete B y, cuando lo vamos a instalar, nos aparece una nueva dependencia, esta vez de D; por su parte, al buscar C, no hay forma de encontrar la versión exacta para nuestro sistema, por lo que intentamos instalar una de un sistema inferior; nos funciona, pero cuando intentemos volver a instalar A nos llevaremos la desagradable sorpresa de que no le vale la versión de C que hemos instalado porque necesita una más reciente, etc.
Para evitar esta revuelta de dependencias podemos utilizar para instalar un paquete el utilitario yum, pero antes requerimos configurar un repositorio:
Creamos un punto de montaje fijo para nuestro repositorio:
[root@srvstdo ~]# mkdir /repositorio
Montamos el dispositivo de CD en el repositorio:
[root@srvstdo ~]# mount -o /dev/cdrom /repositorio
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Configuramos yum, el gestor avanzado de paquetes de RedHat, para que use ese repositorio.
Para ello, hay que editar el fichero /etc/yum.repos.d/file.repo para incluir las siguientes
líneas:
[RHEL-Repository]
name=RHEL Repository
baseurl=file:///repositorio/Server
gpgcheck=0
enable=1
Una vez configurado el repositorio correctamente en el fichero, podemos comprobar que todo es correcto haciendo un listado del software disponible:
[root@srvstdo ~]# yum list
Loading “rhnplugin” plugin Loading “security” plugin Loading “installonlyn” plugin This system is not registered with RHN. RHN support will be disabled. Setting up repositories RHEL-Repository 100% |=========================| 1.3 kB 00:00 Reading repository metadata in from local files primary.xml.gz 100% |=========================| 753 kB 00:00 ################################################## 2348/2348 Installed Packages Deployment_Guide-en-US.noarch 5.1.0-11 installed
...
1.11. SUPERVISAR LOS RECURSOS DEL SISTEMA (TOP)
El comando TOP nos permite monitorearnuestros servidores. El comando top nos ayuda a
conocer los procesos de ejecución del sistemaen tiempo real y es una de las herramientas más
importantes para un administrador.
[root@srvstdo ~]# top
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Detalle de la salida del Comando top
a. Tiempo de actividad y carga media del sistema
top - 19:11:06 up 11 min, 2 users, load average: 0.17, 0.30, 0.32
Hora actual.
Tiempo que ha estado el sistema encendido.
Número de usuarios
Carga media en intervalos de 5, 10 y 15 minutos respectivamente.
b. Tareas
Tasks: 231 total, 1 running, 230 sleeping, 0 stopped, 0 zombie
Total: total de tareas procesos ejecutandoce
Running: procesos ejecutándose actualmente o preparados para ejecutarse.
Sleeping: procesos dormidos esperando que ocurra algo (depende del proceso) para
ejecutarse.
Stopped: ejecución de proceso detenida.
Zombie: el proceso no está siendo ejecutado. Estos procesos se quedan en este estado
cuando el proceso que los ha iniciado muere (padre).
c. Estados de la CPU
Cpu(s): 0.2%us, 0.2%sy, 0.0%ni, 99.6%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
us (usuario): tiempo de CPU de usuario.
sy (sistema): tiempo de CPU del kernel.
id (inactivo): tiempo de CPU en procesos inactivos.
wa (en espera): tiempo de CPU en procesos en espera.
hi (interrupciones de hardware): interrupciones de hardware.
si (interrupciones de software): tiempo de CPU en interrupciones de software.
st():
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
d. Memoria física
Mem: 1008444k total, 504220k used, 504224k free, 23088k buffers
Memoria total.
Memoria utilizada.
Memoria libre.
Memoria utilizada por buffer.
e. Memoria virtual
Swap: 10485752k total, 0k used, 10485752k free, 209972k cached
Memoria total.
Memoria usada.
Memoria libre.
Memoria en caché.
f. Columnas
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4436 root 20 0 982792 154512 91896 S 3,0 0,9 0:56.36 top
4807 root 20 0 902092 240028 74752 S 2,3 1,5 0:21.27 init
PID: es el identificador de proceso. Cada proceso tiene un identificador único.
USER (USUARIO): usuario propietario del proceso.
PR: prioridad del proceso. Si pone RT es que se está ejecutando en tiempo real.
NI: asigna la prioridad. Si tiene un valor bajo (hasta -20) quiere decir que tiene más prioridad
que otro con valor alto (hasta 19).
VIRT: cantidad de memoria virtual utilizada por el proceso.
RES: cantidad de memoria RAM física que utiliza el proceso.
SHR: memoria compartida.
S (ESTADO): estado del proceso.
%CPU: porcentaje de CPU utilizado desde la última actualización.
%MEM: porcentaje de memoria física utilizada por el proceso desde la última actualización.
TIME+ (HORA+): tiempo total de CPU que ha usado el proceso desde su inicio.
COMMAND: comando utilizado para iniciar el proceso.
2. MODULO 2.- CONFIGURACIÓN
2.1. OBJETIVOS
- Utilizar comando y utilitarios del sistema operativo para personalizar el entorno de
trabajo.
- Configurar la red interna entre las máquinas de los participantes.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
- Compartir información entre los participantes.
2.2. ADMINISTRACIÓN DE USUARIOS Y GRUPOS
Los usuarios en Unix/Linux se identifican por un número único de usuario, User ID, UID. Y pertenecen a un grupo principal, identificado también por un número único de grupo, Group ID, GID. El usuario puede pertenecer a más grupos además del principal.
Se puede identificar tres tipos de usuarios en Linux:
Usuario root
También llamado superusuario o administrador.
Su UID (User ID) es 0 (cero).
Es la única cuenta de usuario con privilegios sobre todo el sistema.
Controla la administración de cuentas de usuarios.
Ejecuta tareas de mantenimiento del sistema.
Instala software en el sistema.
Puede modificar o reconfigurar el kernel, controladores, etc.
Usuarios especiales
Ejemplos: bin, daemon, adm, lp, sync, shutdown, mail, operator, squid, apache, etc.
Se les llama también cuentas del sistema.
No tiene todos los privilegios del usuario root, pero dependiendo de la cuenta asumen
distintos privilegios de root.
No tienen contraseñas pues son cuentas que no están diseñadas para iniciar sesiones con
ellas.
Se crean (generalmente) automáticamente al momento de la instalación de Linux o de la
aplicación.
Generalmente se les asigna un UID entre 1 y 100 (definido en /etc/login.defs)
Usuarios normales
Cada usuario dispone de un directorio de trabajo, ubicado generalmente en /home.
Cada usuario puede personalizar su entorno de trabajo.
Tienen solo privilegios completos en su directorio de trabajo o HOME.
Por seguridad, es siempre mejor trabajar como un usuario normal en vez del usuario root, y
cuando se requiera hacer uso de comandos solo de root, utilizar el comando su.
En las distros actuales de Linux se les asigna generalmente un UID superior a 500.
//Crear grupos
[root@srvstdo ~]# groupadd [opciones] nombre-grupo
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
f, --force forza la creación del grupo si ya existe
g, --gid GID especifica manualmente el GID del grupo
k, --key KEY=VALUE sobreescrive/etc/login.defs
o, --non-unique permite la creación de grupos con GID duplicados
p, --pasword PASSWORD encripta el password del nuevo grupo
r. –system crea una cuenta de sistema
h, --help despliega la ayuda
//Eliminargrupos
[root@srvstdo ~]# groupdel nombre-grup
//Crear usuario
[root@srvstdo ~]# useradd [opciones] nombre-usuario
g, --gid GROUP Grupo principal que queremos tenga el usuario (debe existir previamente)
d, --home-dir HOME_DIR define el home del usuario. Por defecto es /home/nombre-usuario
m, --create-homeCrearcarpeta home si es que no existe.
s, --shell SHELL Intérprete de comandos (shell) del usuario. Por defecto es /bin/bash
//Eliminar usuario
[root@srvstdo ~]# userdel [opciones] nombre-usuario
f.—force forza la eliminación del usuario
r. –remove remueve el home del usuario y la cola de mail
A continuación un resumen de los comandos utilizados para la gestión de usuario y grupos
Comandos de administración y control de usuarios
useradd Añade usuarios al sistema (/etc/passwd).
userdel Elimina usuarios del sistema.
usermod Modifica usuarios.
chage Permite cambiar o establecer parámetros de las fechas de control de la contraseña.
chpasswd Actualiza o establece contraseñas en modo batch, múltiples usuarios a la vez. (se usa junto con newusers)
id Muestra la identidad del usuario (UID) y los grupos a los que pertence.
gpasswd Administra las contraseñas de grupos (/etc/group y /etc/gshadow).
groupadd Añade grupos al sistema (/etc/group).
groupdel Elimina grupos del sistema.
groupmod Modifica grupos del sistema.
groups Muestra los grupos a los que pertence el usuario.
newusers Actualiza o crea usuarios en modo batch, múltiples usuarios a la vez. (se usa junto chpasswd)
pwconv Establece la protección shadow (/etc/shadow) al archivo /etc/passwd.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
pwunconv Elimina la protección shadow (/etc/shadow) al archivo /etc/passwd.
Archivos de administración y control de usuarios
.bash_logout Se ejecuta cuando el usuario abandona la sesión.
.bash_profile Se ejecuta cuando el usuario inicia la sesión.
.bashrc Se ejecuta cuando el usuario inicia la sesión.
/etc/group Usuarios y sus grupos.
/etc/gshadow Contraseñas encriptadas de los grupos.
/etc/login.defs Variables que controlan los aspectos de la creación de usuarios.
/etc/passwd Usuarios del sistema.
/etc/shadow Contraseñas encriptadas y control de fechas de usuarios del sistema.
2.3. CONFIGURACIÓN DE LA RED
- Identificar la interfaz de red a utilizar ejecutando el siguiente comando
[root@srvstdo ~]# ifconfig –a
- Modificar el archivo de configuración de la interfaz elegida, en nuestro caso
utilizaremos la interfaz eth0, editamos el archivo de configuración
[root@srvstdo ~]#vi /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPROTO=none HWADDR=01:09:4B:7F:6C:E3 # Dirección MAC IPADDR= 192.168.1.10 # Ip de la interfaz de red NETMASK= 255.255.255.0 # Máscara de red
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
ONBOOT=yes # Arranque automático al inicio del sistema GATEWAY= 192.168.1.1 # Puerta de enlace definido por el ruteador TYPE=Ethernet
- Reiniciamos la red:
[root@srvstdo ~]#/etc/init.d/network restart o
[root@srvstdo ~]# systemctl restart network.service
- Especificar el HostName si desea cambiarlo
[root@srvstdo ~]#vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=nuevohostname
- Configurar unos servidores DNS válidos para el equipo (valores ficticios):
[root@srvstdo ~]#vi /etc/resolv.conf nameserver ipdnsprimario nameserver ipdnssecundario
2.4. MANEJO DE ARCHIVOS DESDE LA LÍNEA DE COMANDOS.
SSH (Secure Shell) es un conjunto de estándares y protocolo de red que permite establecer
una comunicación a través de un canal seguro entre un cliente local y un servidor remoto.
Utiliza una llave pública para autenticar el servidor remoto y de manera opcional permitir al
servidor remoto autenticar al usuario. SSH provee confidencialidad e integridad en la
transferencia de los datos utilizando criptografía y MAC (Message Authentication Codes o
Códigos de Autenticación de Mensaje). De modo predeterminado, escucha peticiones a través
del puerto 22 por TCP.
Archivos de configuración.
/etc/ssh/sshd_config.- Archivo principal de configuración del servidor SSH
/etc/ssh/ssh_config.- Archivo principal de configuración de los clientes SSH
~/.ssh/config.- Archivo para cada usuario, almacena la configuración utilizada por los
clientes SSH. Permite al usuario local utilizar una configuración distinta a la definida en el archivo
/etc/ssh/ssh_config.
~/.ssh/known_hosts.- Archivo para cada usuario, el cual almacena las firmas digitales de los
servidores SSH a los que se conectan los clientes. Cuando éstas firmas cambian, se pueden
actualizar ejecutando ssh-keygen con la opción -R y el nombre del usuario. Ejemplo: ssh-keygen -
R nombre.o.ip.servidor.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
~/.ssh/authorized_keys.- Archivo para cada usuario, el cual almacena los certificados de los
clientes SSH, para permitir autenticación hacia servidores SSH sin requerir contraseña.
2.5. PERMISOS EN ARCHIVOS Y PERMISOS DE USUARIO
Hay muchas maneras de transferir archivos de un sistema a otro, pero lo que tramos de
hacerlo es de forma segura, así que utilizaremos el comando scp que se basa en SSH.
Sintaxis:
scp[opción] /ruta-origen usuario@ordenador-or-IP:/ruta-destino/
Como opciones más utilizadas tenemos
p mantiene la fecha del modificación, acceso y creación del origen
r copia de manera recursiva
2.6. MÓDULO 2 LINUX SERVER – ADMINISTRACIÓN
Usando VirtualBox como emulador virtual para instalar Ubuntu Server
Descarga de un sistema operativo de servidor Ubuntu Server
Crear una máquina virtual para Ubuntu Server
Instalación del sistema operativo Ubuntu Server
Continuación de la instalación del sistema operativo Ubuntu Server
Iniciando y cerrando la sesión
Conexión por SSH con Ubuntu Server
Primeros pasos en Shell
Opciones y parámetros de control
Gestión de los archivos y directorios
3. MÓDULO 3.- INSTALACIÓN DEL SERVIDOR DE NOMBRES (DNS)
3.1. OBJETIVOS
- Conocer la funcionalidad y características de un servidor DNS
- Instalar y Configurar un servidor DNS
- Probar el funcionamiento del servidor DNS
3.2. QUE ES UN SERVIDOR DNS, FUNCIÓN Y CARACTERÍSTICAS
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Un servidor DNS (Domain Name System - Sistema de nombres de dominio) es un servidor
cuya función principal es la resolución de nombres de dominio.
Existen servidores DNS locales que se utilizan para resolver nombres de las Pc o servicios
internos de una organización (LAN local) no son visibles al internet, y los servidores de nombres
de Dominio externos que son utilizados para resolver los nombres de los sitios WEB, estos por
lo general están gestionados por cada proveedor de internet ISP.
Una de las características fundamentales que debe tener un servidor DNS es la de traducir
nombres de dominio a IP y viceversa, para aquello dispone de dos zonas que son:
Zona de Búsqueda Directa:Devuelve la dirección IP a partir de un nombre de dominio.
Zona de Búsqueda Inversa:devuelve el nombre del dominio a partir de una IP
3.3. INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES DNS BIND
Laboratorio 2
3.4. CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES SECUNDARIO
Laboratorio 2
3.5. USO DE NSLOOKUP Y DIG
Nslookupes una herramienta de administración de red para consultar el Sistema de
nombres de dominio (DNS) para obtener el nombre de dominio o la asignación de direcciones IP
o cualquier otro registro DNS específico. Aquí unos ejemplos
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
dig .- Esta herramienta viene en el paquete BIND (Berkeley Internet Name
Domain) que es una implementación de protocolos DNS y sirve para diagnosticar problemas con los DNS. Por lo general se invoca de la siguiente forma:
dig @IPdelservidorDNS nombre -t type
Si no se especifica el tipo de registro a consultar (A, ANY, MX, NS, SOA, HINFO, AXFR, TXT, etc.) por defecto solo devuelve el resultado del registro A (que es el que asocia la IP con el nombre de dominio). Ejemplos
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
4. RESPALDOS DE INFORMACIÓN
4.1. OBJETIVOS
- Definir la importancia de los respaldos
- Desarrollar un ejercicio que simule la ejecución automática de una política
de respaldo
4.2. QUÉ ES UN SITE
Los Respaldos de información se utilizan para resguardar ciertos datos o información
definida como crítica o importante para la empresa, también se puede entender como
protección de información.
Tipos de Respaldos: Completos, Incremental o diferencial.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
4.3. PARA QUÉ SIRVEN LOS RESPALDOS
La importancia de los respaldos radica en que
todos los dispositivos de almacenamiento masivo
de información tienen la posibilidad de fallar, por
lo tanto es necesario que se cuente con una copia
de seguridad de la información crítica, ya que la
probabilidad de que 2 dispositivos fallen de
manera simultánea es menor.
4.4. QUE RESPALDAR
La más grande pregunta que nos hacemos los informáticos es que
respaldar, pero realmente es algo que nosotros debamos definir, pues no. La
responsabilidad de la integridad de los datos si es nuestra responsabilidad, pero
que respaldar es responsabilidad de los dueños de la información. Y deben estar
definidas en las políticas emitidas por el BCP (plan de continuidad de negocio). El área de
informática se encargara de diseñar su DRP (plan de recuperación ante desastres) y DCP (plan
de recuperación de información).
Los planes antes mencionados debe definir claramente lo siguiente: tipo de información,
periodicidad y el tiempo de retención, medios a utilizar, periodicidad de las pruebas de
recuperación de los datos.
4.5. QUE MEDIOS UTILIZAR AL RESPALDAR LA INFORMACIÓN
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
4.6. CÓMO RESTAURAR LA INFORMACIÓN
1. Ejecute service luci stop. 2. Ejecute service luci backup-db.
También, puede especificar un nombre de archivo como un parámetro para el comando backup-db, el cual escribirá la base de datos luci a ese archivo. Por ejemplo, escriba la base de archivos de luci al archivo /root/luci.db.backup, ejecute el comando service luci backup-db /root/luci.db.backup. Observe que los archivos de respaldo que se escriben en sitios diferentes a /var/lib/luci/data/ (para copias de seguridad cuyos nombres de archivos especifique cuando use service luci backup-db) no aparecerán en la salida del comando list-backups.
3. Ejecute service luci start.
Use el siguiente procedimiento para restaurar una base de datos de luci.
1. Ejecute service luci stop. 2. Ejecute service luci list-backups y observe el nombre de archivo a restaurar. 3. Ejecute service luci restore-db /var/lib/luci/data/lucibackupfile donde
lucibackupfile es el archivo de respaldo a restaurar.
Por ejemplo, el siguiente comando restaura la información de configuración de luci que estaba almacenada en el archivo de respaldo luci-backup20110923062526.db:
service luci restore-db /var/lib/luci/data/luci-backup20110923062526.db
4. Ejecute service luci start.
Si necesita restaurar la base de datos de luci, pero ha perdido el archivo host.pem de la máquina en que usted creó la copia de seguridad debido a
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
una reinstalación completa, por ejemplo, necesitará añadir otra vez de forma manual sus clústeres a luci para reautenticar los nodos de clúster.
4.7. USO DE SECURE SHELL PARA TRANSFERIR INFORMACIÓN DE RESPALDOS
a. Definir la información a respaldar.
Elegimos el home de cada usuario /home labstdo#
4.8. CREACIÓN DE UN SCRIPT PARA GENERAR RESPALDOS
[root@srvstdo ~]#vi /scripts/backupdiario.sh
echo “Inicio de Respaldo” >> /backup/ddlabstdo#-‘date +%y%m%d‘.log
tar -cvzf /backup/ddlabstdo#-‘date +%y%m%d‘.tgz /home/labstdo#
ls –l /backup/*.tgz>> /backup/ ddlabstdo#-‘date +%y%m%d‘.log
echo >> “copiando archivo” /backup/ ddlabstdo#-‘date +%y%m%d‘.log
scp –pr /backup/ ddlabstdo#-‘date +%y%m%d‘.tgz [email protected]:/backup
echo >> “eliminando archivo” /backup/ ddlabstdo#-‘date +%y%m%d‘.log
rm /backup/ ddlabstdo#-‘date +%y%m%d‘.tgz
echo >> “respaldo exitoso” /backup/ ddlabstdo#-‘date +%y%m%d‘.log
Ejecución script para generar el
backup
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
4.9. CREACIÓN DE UNA ENTRADA EN EL CRON DIARIO PARA GENERAR EL SCRIPT Y ENVIAR LA
INFORMACIÓN RESPALDADA AL SERVIDOR REMOTO DE ALMACENAMIENTO DE RESPALDOS
Configuración del cron
[root@srvstdo ~]# crontab –e
[hora] [minuto] [dia_del_mes] [mes] [dia_de_la_semana] [comando]
0 0 * * * sh /scripts/backupdiario.sh
Recuperación del backup
[root@srvstdo ~]# scp –pr [email protected]:/backup /ddlabstdoyymmdd.tgz /backup
[root@srvstdo ~]# tar –xvzf /backup/ddlabstdoyymmdd.tgz
5. FIREWALL – MAQUINAS VIRTUALES
5.1. CONFIGURACIÓN BÁSICA DE UN CORTAFUEGOS (FIREWALL)
De la misma forma que un firewall o cortafuegos en un edificio previene que el fuego se extienda, un cortafuegos en el computador ayuda a evitar que los virus se esparzan por su ordenador y evita que los usuarios no autorizados accedan a su ordenador. El cortafuegos está ubicado entre su ordenador y la red. Determina qué servicios en su computador pueden acceder los usuarios remotos en la red. Un cortafuegos que haya sido configurado debidamente puede aumentar la seguridad de su sistema. Se le recomienda que configure un cortafuegos para cualquier sistema Red Hat Enterprise Linux con una conexión de Internet.
5.2. CONFIGURACIÓN PARA HACER NAT A UNA RED USANDO A UN SERVIDOR COMO GATEWAY
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
5.3. CONFIGURACIÓN DE FILTRACIÓN DE PAQUETES, ACEPTÁNDOLOS O DENEGÁNDOLOS
5.4. REDIRECCIONAMIENTO DE PAQUETES A OTRO SERVIDOR Y/O PUERTO
192.0.2.1 - anfitrión en Internet 24.65.1.13 - dirección externa del enrutador OpenBSD 192.168.1.5 - dirección interna del servidor de web
Regla de redireccionamiento:
rdr on tl0 proto tcp from 192.0.2.1 to 24.65.1.13 port 80 \ -> 192.168.1.5 port 8000
El paquete antes de procesar la regla de rdr:
Dirección de origen: 192.0.2.1 Puerto de origen: 4028 (escogido arbitrariamente por el sistema operativo) Dirección de destino: 24.65.1.13 Puerto de destino: 80
El paquete después de procesar la regla de rdr:
Dirección de origen: 192.0.2.1 Puerto de origen: 4028 Dirección de destino: 192.168.1.5 Puerto de destino: 8000
5.5. ADMINISTRACIÓN DE MÁQUINAS VIRTUALES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Utilizar el complemento o sc config de línea de comandos herramienta Servicios para volver a configurar el servicio para iniciarse automáticamente. De forma predeterminada, la pertenencia a grupo de administradores local, o equivalente, es el requisito mínimo para completar este procedimiento. Para volver a configurar el servicio se inicie automáticamente mediante la interfaz de Windows Abra el complemento Servicios. (Haga clic en Inicio, haga clic en el cuadro Iniciar búsqueda , escriba services.mscy, a continuación, presione ENTRAR.) En el panel de detalles, haga clic en Administración de máquinas virtuales de Hyper-Vy, a continuación, haga clic en Propiedades. En la ficha General , en tipo de Inicio , haga clic en automático. Para volver a configurar el servicio se inicie automáticamente con la línea de comandos Abra el símbolo del sistema. Escriba: inicio de sc config VMM = auto
5.6. QUE ES LIBVIRT, KVM Y QEMU
¿Qué es KVM?
KVM (Kernel Virtual Machine) es un módulo del kernel Linux que permite que los programas en espacio usuario utilicen las características de virtualización por hardware ofrecidas por diferentes procesadores. En la actualidad, soporta procesadores AMD e Intel (x86 y x86_64), PPC 440, PPC 970, S/390, y ARM (Cortex A15). ¿Qué es QEMU? QEMU es un emulador de máquinas y virtualizador genérico open source. Cuando se usa como emulador de máquinas, QEMU puede ejecutar sistemas operativos y programas compilados para una arquitectura (por ejemplo un sistema ARM) en una máquina diferente (por ejemplo una PC), tal como lo demostré en el artículo Emular Raspberry Pi con QEMU y KVM en CentOS 6. Al utilizar traducción dinámica, alcanza muy buena performance.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Cuando se utiliza como virtualizador, QEMU alcanza casi la performance nativa ya que ejecuta el código guest directamente en el CPU host. QEMU soporta virtualización cuando se ejecuta bajo el hipervisor Xen o a través del módulo del kernel KVM en Linux. Cuando se usa con KVM, QEMU puede virtualizar sistemas guest x86, PowerPC y S390, entre otros. QEMU aprovecha KVM cuando ejecuta una arquitectura guest que coincide con la arquitectura host. Por ejemplo, cuando se utiliza qemu-system-x86 sobre un procesador x86 compatible, se aprovecha la aceleración de KVM (beneficiando tanto al sistema guest como al host), ya que el código guest se ejecuta directamente en el host (sin traducción). Anteriormente, KVM mantenía su propio fork de QEMU llamado "qemu-kvm" para soportar virtualización por hardware en arquitecturas x86. Actualmente está deprecated ya que QEMU ha incorporado la funcionalidad necesaria (ver http://wiki.qemu.org/KVM. ¿Qué es libvirt? libvirt (The virtualization API) es un conjunto de herramientas para interactuar con las capacidades de virtualización de las versiones recientes de Linux (y otros sistemas operativos), liberado bajo la licencia "GNU Lesser General Public License".
5.7. DETECTAR SI EL HYPERVISOR DE KVM PUEDE FUNCIONAR BIEN EN EL EQUIPO A INSTALAR
$ cat /proc/cpuinfo | grep vmx # para CPUs Intel $ cat /proc/cpuinfo | grep svm # para CPUs AMD Si el sistema no nos devuelve nada me temo que no tenemos soporte de virtualización en nuestro procesador o no lo tenemos activado. En caso afirmativo, instalamos los paquetes necesarios: $ sudo apt-get install kvm libvirt-bin ubuntu-vm-builder bridge-utilse incluimos el usuario en el grupo de kvm $ sudo adduser $USER kvm
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
5.8. USO DE VIRT-MANAGER PARA GESTIONAR LA CREACIÓN Y ELIMINACIÓN DE
MÁQUINASVIRTUALES
1) Nombre de la máquina virtual y selección del medio de instalación. 2) Detección del medio de instalación, sistema operativo y versión. 3) Especificación de los recursos de memoria y procesamiento. 4) Configuración del almacenamiento. 5) Configuración de la conexión de red y finalización.
5.9. USO DE VIRSH PARA GESTIONAR LAS MÁQUINAS VIRTUALES EN LÍNEA DE COMANDOS
Puede utilizar la aplicación virsh para administrar máquinas virtuales. Esta utilidad está construida sobre la API de administración libvirt y funciona como una alternativa a la herramienta xm o al administrador gráfico de máquinas virtuales. Los usuarios sin privilegios pueden utilizar esta utilidad para operaciones de sólo lectura únicamente. Si tiene la intención de ejecutar xend/qemu, debe activar la ejecución de xend/qemu como servicio. Después de modificar el archivo de configuración respectivo, reinicie el sistema y xend/qemu será iniciado como un servicio. Como la herramienta xm, virsh se ejecuta desde la línea de comandos.
5.10. USO DE RSYNC PARA BACKUP AUTOMÁTICOS CON BASH Y CROND
Para crear un respaldo de los archivos que están por ser modificados utilizamos el parámetro --backup (o -b en su forma corta), por ejemplo: rsync -a --backup origen/ destino/ rsync -ab origen/ destino/ Por default, el sufijo ~ es anexado al nombre del archivo que es guardado como respaldo, es decir, cuando actualizamos archivo01.txt, este archivo será copiado a un archivo llamado archivo01.txt~, y entonces archivo01.txt será actualizado con el nuevo contenido. Para cambiar el sufijo de el archivo que será creado como respaldo, usamos el parámetro --suffix, por ejemplo: rsync -ab --suffix=.viejo origen/ destino/ Esto agregará el sufijo .viejo a los archivos de respaldo, es decir, archivo01.txt será copiado en archivo01.txt.viejo, y entonces archivo01.txt sería actualizado con la nueva información. Podemos agregar la fecha de el respaldo al sufijo utilizando el comando date junto con el parámetro sufijo:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
rsync -ab --suffix=_`date +%F` origen/ destino/ Esto anexaría la fecha en el formato YYYY-MM-DD al nombre del archivo, por ejemplo, si hoy fuera 12 de febrero de 2010, y respaldamos archivo01.txt, el archivo resultante sería llamado: archivo01.txt_2010-02-12 Para restaurar desde el respaldo si solo agregamos un sufijo, podemos usar los siguientes comandos: for nombre in *[sufijo]; do cp $nombre `basename $nombre [sufijo]`; done Puedes usar mv en lugar de cp si no quieres dejar el archivo de respaldo. Como ejemplo de esto, si usamos --suffix=.viejo con rsync: for nombre in *.viejo; do cp $nombre `basename $nombre .viejo`; done
5.11. USO DE FIREWALL IPTABLES MÓDULO DE LAYER-7
Los scripts de iptables pueden tener este aspecto:
Diseño e imp.servidor comunicaciones con acceso seguro a internet, alta disponibilidad y QoS L7
Borrado de las reglas aplicadas actualmente (flush)
Aplicación de políticas por defecto para INPUT, OUPUT, FORWARD
Listado de reglas iptable4s
6. BITÁCORAS Y SEGURIDAD
6.1. OBJETIVOS
- Conocer los archivos de log o bitácoras para monitorear el sistema.
- Buscar en las bitácoras actividad anormales del sistema
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.2. BITÁCORAS DEL SISTEMA
Linux tiene una serie de archivos de registro o logs (también conocido como bitácoras) que
ayudan al administrador a monitorear y a dar mantenimiento de sus servidores e incluso de una
red. En estos archivos se van almacenando registros de todos los eventos que ocurren en un
sistema
Las bitácoras se encuentran en el directorio /var/log/ y las más comunes son:
- /var/log/message: registra mensajes generales del sistema - /var/log/secure: registra mensajes de seguridad - /var/log/boot.log : registramensajes de inicio y apagado del sistema - /var/log/dmesg: y dispositivos plug and play - /var/log/maillog: registro de mensajes de mails - /var/log/lastlog: registro de últimosingresos de usuarios
6.3. REVISIÓN DE LAS BITÁCORAS DEL SISTEMA Y DE SERVICIOS
Conocer el propósito de cada bitácora.
Conocer el formato en el que se presenta la información.
Conocer los ataques propios de cada servicio.
Las bitácoras en el caso de Linux están dentro del directorio /var/log/, para otros sistemas Unix se encuentran en /var/adm/
kernel
SECURE
BOOTLOG
MAILLOG
LASTLOG
DMESG
MESSAGES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.4. LECTURA DE BITÁCORAS DEL SISTEMA PARA REVISIÓN DE ACCESOS , FALLAS EN EL SERVIDOR
Y VERIFICACIÓN DE ERROR.
usuario Nombre con el que puede identificarse un usuario
contraseña
En versiones anteriores, en este campo se almacenaba la contraseña de acceso del usuario, en forma encriptada. Actualmente contiene un carácter "x", y la contraseña y sus características están en el archivo /etc/shadow.
user-id
Número asignado al usuario para identificarlo internamente. Este número es utilizado por el sistema para efectuar los controles de propiedad de archivos y subdirectorios. Los números más bajos quedan reservados para los usuarios con privilegios de administrador.
group-id
Número que identifica el grupo al que se asocia ese usuario. Debe tener una correspondencia con el archivo /etc/group. Afectará a los permisos de acceso a archivos a nivel de grupo.
comentario Normalmente contiene información sobre el propietario del login, como puede ser su nombre completo, su dirección, etc.
directorio Ruta completa del directorio HOME, en el que sitúa al usuario cuando tanto el login como la contraseña son correctos.
shell
Nombre completo del proceso que se arrancará automáticamente para el usuario cuando se identifica. Aunque puede ser cualquier programa ejecutable, normalmente será un intérprete de comandos (shell).
6.5. COMENTARIOS ACERCA DE PROGRAMAS QUE NOS AYUDEN A REVISAR LOGS
Que es un log?
Registro oficial de eventos durante un periodo de tiempo en particular. Para los
profesionales en seguridad informática un log es usado para registrar datos o información
sobre quién, que, cuando, donde y por qué de un evento que ocurre para un dispositivo
en particular o aplicación.
La mayoría de los logs son almacenados o desplegados en el formato estándar ASCII. De
esta forma logs generados por un dispositivo en particular puede ser leído y desplegado
en otro diferente.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Propósito de los LOGS
Todos los sistemas pueden verse comprometidos por un intruso, de manera local o
remota.
La seguridad no sólo radica en la prevención, sino también en la identificación. Entre
menos tiempo haya pasado desde la identificación de intrusión, el daño será menor; para
lograr esto es importante hacer un constante monitoreo del sistema.
De cualquier forma que se realice una protección de Unix debe incluir el monitoreo y
revisión de LOGS de una forma comprensiva, precisa y cuidadosa.
Los logs tienen numerosos propósitos:
Ayudar a resolver problemas de todo tipo
Proveer de avisos tempranos de abusos del sistema.
Después de una caída del sistema, proporcionan datos de forensia.
Como evidencia legal
6.6. REVISIÓN DE LAS BITÁCORAS
Para observar los primeros 10 mensajes contenidos en este archivo podemos ejecutar el
siguiente comando: more messages | head, esto despliega una lista actualizada similar la
siguiente:
Dec 4 09:07:19 localhost syslogd 1.4-0: restart.
Dec 4 09:07:19 localhost syslogd 1.4-0: restart.
Dec 4 09:07:20 localhost syslogd 1.4-0: restart.
Dec 4 09:07:20 localhost syslogd 1.4-0: restart.
Dec 4 09:07:20 localhost syslogd 1.4-0: restart.
Dec 4 09:07:20 localhost syslogd 1.4-0: restart.
dic 4 10:31:10 localhost gdm[798]: gdm_child_action: Master rebooting...
dic 4 10:31:11 localhost rc: Stopping keytable: succeeded
Dec 4 10:31:11 localhost Font Server[767]: terminating
dic 4 10:31:12 localhost xfs: xfs shutdown succeeded
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.7. SEGURIDAD
- Conocer las herramientas de seguridad Iptables y SElinux
- Diferenciar las herramientas Iptables y SElinux
- Configurar reglas de seguridad
6.8. QUÉ ES Y PARA QUÉ SIRVE
Además de la instalación y configuración apropiadas de su sistema Red Hat Linux, es de
extrema importancia que asegure el sistema a un nivel aceptable de riesgo según su papel,
importancia, y uso previsto. La seguridad es un tema increíblemente complejo que tiene
que enfrentarse constantemente tanto a problemas emergentes como a problemas
potenciales.
6.9. SEGURIDAD, INICIOS, CIFRADO, DESCIFRADO, COMO NACIÓ LA NECESIDAD DE UTILIZARLA
Seguridad Informática: La Seguridad Informática suele ser la forma más habitual con la que nos referimos a todo aquello que tiene que ver con la seguridad de los ordenadores y los sistemas. Es un concepto muy conocido pero que está obsoleto. Hace hincapié en la seguridad de los sistemas, teniendo en cuenta las amenazas de carácter fundamentalmente tecnológico. La Seguridad Informática es un concepto de Seguridad que nació en la época en la que no existían las redes de banda ancha, los teléfonos móviles o los servicios de internet como las redes sociales o las tiendas virtuales. Es por ello que la Seguridad Informática suele hacer un especial énfasis en proteger los sistemas, es decir, los ordenadores, las redes y el resto de infraestructuras de nuestra organización. La Seguridad Informática es un concepto undamentalmente técnico. El problema del enfoque de la Seguridad Informática es que suele perder de vista otros aspectos importantes para una organización y, en la mayoría de las ocasiones, cuando nos hablan de Seguridad Informática nos parece algo completamente alejado de nuestra actividad diaria. Seguridad TIC (Seguridad de las Tecnologías de la Información y las Comunicaciones) Se trata de un enfoque más moderno, que incorpora el concepto de redes o infraestructura de comunicaciones. Hoy en día no concebimos el ordenador como un elemento aislado sino como un elemento conectado, y por otro lado, el ordenador ya no es el único elemento o dispositivo a proteger, sino que también hay que proteger las infraestructuras de comunicaciones, así como diversos dispositivos, como son los teléfonos móviles, PDA’s, etc. La Seguridad TIC es un término mucho más amplio que la Seguridad Informática, pero sigue siendo de carácter fundamentalmente tecnológico. Seguridad de la Información: Estamos ante el término más amplio y conceptual de los tres. Se basa en que lo fundamental es proteger la información y en base a esta premisa se desarrollan todas los demás aspectos relativos a la seguridad y a las medidas que necesitamos aplicar, así como el lugar donde hay que aplicarla. Es un concepto que tiene en cuenta, no solamente la seguridad tecnológica, sino
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
también otras facetas de la seguridad, como son, la seguridad desde el punto de vista jurídico, desde el punto de vista normativo y desde el punto de vista organizativo. De los tres conceptos el que más nos interesa es el de la Seguridad de la Información, puesto que es aquel que nos permitirá sacar el máximo provecho a la aplicación de la seguridad en nuestra organización. Además, es el más actual y el más amplio. Como veremos más adelante, abarca todos los aspectos relativos a la protección de la información. Por tanto, a partir de ahora y para todo lo que resta del artículo, hablaremos de seguridad desde el punto de vista de la Seguridad de la Información o SI. La Seguridad de la Información no tiene que ver únicamente con cuestiones tecnológicas, sino también legales u organizativas, es decir, puede ser aplicada desde tres puntos de vista: legal, técnico y organizativo.
6.10. PROTOCOLOS
Los protocolos de Seguridad de Servicios web proporcionan mecanismos de
seguridad de servicios Web que cubren todos los requisitos de seguridad de
mensajería para empresas existentes.En esta sección se describen los detalles de
Windows Communication Foundation (WCF) (implementados en
SecurityBindingElement) para los siguientes protocolos de Seguridad de Servicios
web.
6.11. ALGORITMOS
En Linux se usan dos algoritmos: tiempo compartido y tiempo real
Tiempo compartido
Prioridad basada en créditos – el proceso con más créditos es el siguiente en
tomar la CPU
Los créditos se reducen cuando ocurre una interrupción de reloj
Tiempo real
Tiempo real blando
Cumple el estándar Posix.1b – dos clases
FCFS y RR
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.12. CRIPTOGRAFÍA SIMÉTRICA Y ASIMÉTRICA
Criptografía simétrica también llamada criptografía de clave secreta o criptografía
de una clave), es un método criptográfico en el cual se usa una misma clave para
cifrar y descifrar mensajes. Las dos partes que se comunican han de ponerse de
acuerdo de antemano sobre la clave a usar. Una vez que ambas partes tienen
acceso a esta clave, el remitente cifra un mensaje usando la clave, lo envía al
destinatario, y éste lo descifra con la misma clave.
Criptografía de clave asimétrica también llamada criptografía de clave
pública o criptografía de dos claves es el método criptográfico que usa un par de
claves para el envío de mensajes. Las dos claves pertenecen a la misma persona
que ha enviado el mensaje. Una clave es pública y se puede entregar a cualquier
persona, la otra clave es privada y el propietario debe guardarla de modo que
nadie tenga acceso a ella.
6.13. MÓDULO 3 LINUX SERVER – ADMINISTRACIÓN DE SERVICIOS
Linux es un sistema operativo de la familia Unix, gratuito, creado mediante la
política de “código abierto”
Estas características implican un gran ahorro en los costes de instalación de los
equipos, pero también una mayor especialización por parte del personal
informático.
En todo sistema Unix existe un usuario administrador (root), que controla el
funcionamiento completo del sistema, tiene acceso universal y puede realizar
cualquier operación con los datos y los dispositivos de la máquina.
6.14. INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES
Un usuario Unix representa tanto a una persona (usuario real) como a una
entidad que gestiona algún servicio o aplicación (usuario lógico o ficticio)
Todo usuario definido en el sistema se corresponde con un identificador único
(UID) y con una cuenta, donde se almacenan sus datos personales en una zona de
disco reservada.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Un grupo es una construcción lógica –con un nombre y un identificador (GID)
únicos– usada para conjuntar varias cuentas en un propósito común,
compartiendo los mismos permisos de acceso en algunos recursos.
Cada cuenta debe estar incluida como mínimo en un grupo de usuarios, conocido
como grupo primario o grupo principal.
Características generales de una cuenta.
Las características que definen la cuenta de un usuario son:
• Tiene un nombre y un identificador de usuario (UID) únicos en el sistema.
• Pertenece a un grupo principal.
• Puede pertenecer a otros grupos de usuarios.
• Puede definirse una información asociada con la persona propietaria de
la cuenta.
• Tiene asociado un directorio personal para los datos del usuario.
• El usuario utiliza en su conexión un determinado intérprete de mandatos,
donde podrá ejecutar sus aplicaciones y las utilidades del sistema
operativo.
• Debe contar con una clave de acceso personal y difícil de averiguar por
parte de un impostor.
• Tiene un perfil de entrada propio, donde se definen las características
iníciales de su entorno de operación.
• Puede tener una fecha de caducidad.
• Pueden definirse cuotas de disco para cada sistema de archivos.
• Es posible contar con un sistema de auditoría que registre las
operaciones realizadas por el usuario.
6.15. INSTALACIÓN DE BIND
• Lo primero que debe configurar es /etc/bind/named.conf. La primera
parte de este paso es especificar el directorio raíz de bind, el puerto e IP
donde se presentará el servicio, el archivo pid, y una linea para el
protocolo IPv6.
• La segunda parte de named.conf es la vista interna usada para nuestra
red local.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
• La tercera parte de named.conf es la vista externa usada para resolver
nuestro nombre de dominio para el resto del mundo y para resolver
todos los otros nombre de dominios para nosotros (y cualquiera que
quiera usar nuestro DNS).
• La parte final de named.conf es la política de registros.
6.16. ARCHIVOS DE CONFIGURACIÓN DE BIND
El demonio named del servidor de nombres BIND utiliza el fochero
/etc/named.conf para la configuración. Todos los ficheros de zona se encuentran
en /var/named. El fichero /etc/named.conf no puede tener errres para podr
arrancar el demonio named. Aunque existen algunas opciones erróneas en
algunas declaraciones que no son tan importantes como para bloquear el
servidor, todos los errores que se encuentren en las declaraciones impedirán que
arranque el demonio named.
El fichero /etc/named.conf es un conjunto de declaraciones que usa las opciones
que se encuentran en los corchetes { }. He aquí cómo está organizado un fichero
/etc/named.conf
<statement-1> ["<statement-1-name>"] [<statement-1-class>] {
<option-1>;
<option-2>;
<option-N>;
};
<statement-2> ["<statement-2-name>"] [<statement-2-class>] {
<option-1>;
<option-2>;
<option-N>;
};
<statement-N> ["<statement-N-name>"] [<statement-N-class>] {
<option-1>;
<option-2>;
<option-N>;
};
6.17. QUE ES UN ARCHIVO DE ZONA, TIPOS DE REGISTROS EN EL DNS, TTL, NÚMERO DE
SERIE
Los Archivos de zona contienen información sobre un espacio de nombres
particular y son almacenados en el directorio de trabajo named, por defecto
/var/named/. Cada archivo de zona es nombrado de acuerdo a la opción file en la
declaración zone, usualmente en una forma que relaciona al dominio en cuestión
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
e identifica el archivo como conteniendo datos de zona, tal como
example.com.zone.
Cada archivo de zona contiene directivas y registros de recursos. Las directivas le
dicen al servidor de nombres que realice tareas o aplique configuraciones
especiales a la zona. Los registros de recursos define los parámetros de la zona y
asignan identidades a hosts individuales. Las directivas son opcionales, pero los
registros de recursos se requieren para proporcionar servicios de nombres a la
zona.
Todas las directivas y registros de recursos deberían ir en sus propias líneas
individuales.
Los comentarios se pueden colocar después de los punto y comas (;) en archivos
de zona.
Directivas de archivos de zona
Las directivas comienzan con el símbolo de dollar ($) seguido del nombre de la
directiva. Usualmente aparecen en la parte superior del archivo de zona.
Lo siguiente son directivas usadas a menudo:
$INCLUDE — Dice a named que incluya otro archivo de zona en el archivo de zona donde se usa la directiva. Así se pueden almacenar configuraciones de zona suplementarias aparte del archivo de zona principal.
$ORIGIN — Anexa el nombre del dominio a registros no cualificados, tales como aquellos con el nombre de host solamente.
6.18. CONFIGURACIÓN DE UN SERVIDOR DE NOMBRE PRIMARIO
Por razones de accesibilidad y organizativas, deseamos asignar un nombre a todos
los equipos de nuestra red, para lo que instalaremos un servidor DNS privado con
un dominio ficticio, por ejemplo 'iesgonza.com'. Todos los PCs de nuestra red
pertenecerán a dicho dominio ficticio que funcionará solo en nuestra red interna,
no en Internet. En tal caso el nombre completo de los PCs terminará con
'iesgonza.com', por ejemplo: pc02.iesgonza.com. Lo ideal en una situación así es
disponer de un servidor DNS que sea maestro de nuestro dominio, es decir,
maestro del dominio interno 'iesgonza.com'.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Nuestro servidor DNS maestro para nuestro dominio ficticio interno
'iesgonza.com' será capaz de resolver peticiones internas de nombres de este
dominio, tanto de forma directa como de forma inversa, es decir, si recibe una
consulta acerca de quién es pc07.iesgonza.com deberá devolver su IP, pongamos
por ejemplo 192.168.1.207. Si la consulta es una consulta DNS inversa acerca de
quién es 192.168.1.207, deberá responder pc07.iesgonza.com. Por ello
deberemos añadir en el archivo /etc/bind/named.conf.local la especificación de
maestro para el dominio y para la resolución inversa, por ejemplo:
// Añadir en /etc/bind/named.conf.local
// Archivo para búsquedas directas
zone "iesgonza.com" {
type master;
file "/etc/bind/iesgonza.com.hosts";
};
// Archivo para búsquedas inversas
zone "0.168.192.in-addr.arpa" {
type master;
file "/etc/bind/192.rev";
};
6.19. CONFIGURACIÓN DE UN SERVIDOR DE NOMBRES SECUNDARIO
En su servidor de nombres primario debe ingresar en el archivo de configuración,
según su variante Unix o Linux:
/etc/namedb/named.conf (si usa FreeBSD/OpenBSD)
/etc/bind/named.conf (si usa Ubuntu o Debian Linux)
/etc/named.conf (si usa Centos, Fedora o Red Hat Enterprise Linux RHEL-)
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Habilite transferencia de zona para el IP correspondiente a secundario.nic.cr, cuyo
IP es 198.57.204.98.
En allow-transfer puede agregar las IP's de otros servidores secundarios. Se
sugiere habilitar "notify" en su servidor DNS para que las modificaciones a su
dominio sean inmediatamente notificadas a sus servidores secundarios,
incluyendo secundario.nic.cr
En su tabla de DNS para su dominio, incluya secundario.nic.cr como uno de los
servidores DNS de su dominio.
Reinicie el servicio con pkill -HUP named,
/etc/rc.d/named restart ó
/etc/init.d/bind restart, (según su variante de Unix o Linux).
Recuerde tener habilitado el puerto 53 para TCP/UDP.
Deberá ingresar a nuestra página www.nic.cr, y luego a “Panel de control”, debajo
de su dominio aparecerá la opción “Administrar”, o bien, seleccione su dominio y
la opción “Servidores DNS” al lado izquierdo. Ingresará al sitio donde puede
marcar la casilla “Agregue el servidor secundario gratuito de NIC”. Será necesario
que proporcione la IP de su servidor primario informando por correo electrónico a
la dirección [email protected] para completar el proceso.
Para poder verificar la información y configuración de su servidor de DNS puede
hacer un análisis con la herramienta “dig”:
$dig @[IP de su servidor primario DNS] [su dominio]
$dig @198.57.204.98 [su dominio]
La IP deberá sustituirla por la IP de su servidor primario.
6.20. USO DE NSLOOKUP Y DIG
NSLOOKUP: Posibilita la consulta a un servidor de nombres y adquirir información
relacionada con el dominio o el host y así diagnosticar los ocasionales problemas
de configuración que pueden surgir del DNS. Sirve para saber si el DNS resuelve
correctamente los nombres y las direcciones IP. Este comando funciona tanto en
Sistemas Operativos Windows como en UNIX.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Opciones:
• All : Lista los valores actuales
• d2 : activa el modo de depuración exhaustiva
• nod2 : desactivar el modo de depuración extra
• defname : establecer el dominio añadiendo modo on
• nodefname : establecer el dominio añadiendo modo off
• domain = string : establecer el dominio appendable
• ignoretc : ignorar errores de truncamiento de paquetes
DIG: Permite hacer consultas a los servidores DNS, para comprobar si el DNS está
correctamente configurado en nuestra máquina. Permite consultar el mapeo de
nombres a IPs y de IPs a nombres (sólo en Internet).
• dig dominio.com NS: sirve para preguntar cuál es el servidor DNS de un
dominio.
• dig dominio.com MX: sirve para preguntar cuál es el servidor de correo de un
dominio.
• dig www.dominio.com: sirve para preguntar cuál es el equipo www de un
dominio.
• -b: establece la dirección IP de origen de la consulta de adordar
• -c: sustituye la clase de consulta por defecto
• -f: opera mediante el modo de paquete mediante la lectura de una lista de
solicitudes de búsqueda al proceso en el nombre del archivo del archivo.
• -p: consulta número de puerto no estándar
• -4: fuerza dig a utilizar sólo IPv4
• -6: fuerza dig a utilizar sólo IPv4
• -t: define el tipo de consulta
• -x: opción de búsqueda inversa (mapeo direcciones a nombres)
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
6.21. QUE ES UN CACHE DE UN SERVIDOR DE NOMBRES
En este modo de funcionamiento, nuestro servidor se comporta como si fuera un auténtico servidor DNS para nuestra red local aunque realmente no sea un servidor DNS propiamente dicho. Cuando recibe una petición de DNS por parte de un cliente de nuestra red, la trasladará a un DNS maestro que puede estar en nuestra red o fuera, almacenará en una memoria caché la respuesta y a la vez la comunicará a quien hizo la petición. Si un segundo cliente vuelve a realizar la misma petición, como nuestro servidor tiene la respuesta almacenada en su memoria caché, responderá inmediatamente sin tener que cursar la petición a ningún servidor DNS de Internet.
Disponer de un servidor caché DNS en nuestra red local aumenta la velocidad de la conexión a Internet pues cuando navegamos por diferentes lugares, continuamente se están realizando peticiones DNS. Si nuestro caché DNS almacena la gran mayoría de peticiones que se realizan desde la red local, las respuestas de los clientes se satisfarán prácticamente de forma instantánea proporcionando al usuario una sensación de velocidad en la conexión. Es un modo de funcionamiento de sencilla configuración ya que prácticamente lo único que hay que configurar son las direcciones IP de un DNS primario y de un DNS secundario. Muchos routers ADSL ofrecen ya este servicio de caché, tan solo hay que activarlo y configurar una o dos IPs de servidores DNS en Internet. En los PCs de nuestra red local podríamos poner como DNS primario la IP de nuestro router y como DNS secundario una IP de un DNS de Internet.
7. LAMP
7.1. OBJETIVOS
- Conocer las herramientas de Linux que confirman una infraestructura de
servicios (servidor, desarrollo, base de datos, web)
- Instalar y Configura cada uno de los utilitarios
7.2. QUE ES LAMP?
LAMP es el acrónimo usado para describir un sistema de infraestructura de internet que usa las siguientes herramientas:
- Linux, el sistema operativo; En algunos casos también se refiere a LDAP.
- Apache, el servidor web;
- MySQL/MariaDB, el gestor de bases de datos;
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
- Perl, PHP, o Python, los lenguajes de programación.
La combinación de estas tecnologías es usada principalmente para definir la infraestructura de un servidor web, utilizando un paradigma de programación para el desarrollo.
7.3. INSTALACIÓN Y CONFIGURACIÓN DE LAMP
Paso 1: Instalar Apache y Permitir el Firewall
El servidor Web Apache es actualmente el más popular del mundo. Está bien documentado, y ha sido ampliamente utilizado en la historia de la web, lo que hace que sea una gran opción por defecto para montar un sitio web.
Paso 2: Instalar MySQL
Ahora que ya tenemos nuestro servidor web configurado y corriendo, es el momento de instalar MySQL. MySQL es un sistema de gestión de base de datos. Básicamente, se encarga de organizar y facilitar el acceso a las bases de datos donde nuestro sitio puede almacenar información.
Paso 3: Instalar PHP
PHP es el componente de nuestra configuración que procesará código para mostrar contenido dinámico. Puede ejecutar secuencias de comandos, conectarse a nuestras bases de datos MySQL para obtener información, y entregar el contenido procesado a nuestro servidor web para mostrarlo.
Paso 4: Prueba del Procesador PHP en el Servidor Web
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Con el fin de probar que nuestro sistema se ha configurado correctamente para PHP, podemos crear un script PHP muy básico.
Vamos a llamar a este script info.php. Para que Apache pueda buscar el archivo y lo trabaje correctamente, se debe guardar en un directorio muy específico, al cual se le conoce como "raíz".
7.4. INSTALACIÓN Y CONFIGURACIÓN DE APACHE
Descargar
Puede descargar Apache desde la sección de descargas del sitio web de Apache el cual tiene varios mirrors. Para la mayoría de los usuarios de Apache que tienen sistemas tipo Unix, se recomienda que se descarguen y compilen el código fuente. El proceso de compilación (descrito más abajo) es fácil, y permite adaptar el servidor Apache a sus necesidades. Además, las versiones de disponibles en archivos binarios no están siempre actulizadas con las últimas modificaciones en el codigo fuente. Si se descarga un binario, siga las instrucciones contenidas en el archivo INSTALL.bindist incluido en la distribución
Después de la descarga, es importante que verifique que el archivo descargado del servidor HTTP Apache está completo y sin modificaciones. Esto puede hacerlo comparando el archivo descargado (.tgz) con su firma PGP. Instrucciones detalladas de cómo hacer esto están disponibles en la sección de descargas junto con un ejemplo de cómo usar PGP.
Descomprimir
Extraer el código fuente del archivo .tgz que acabada de descargar es muy fácil. Estos comandos crearán un nuevo directorio dentro del directorio en el que se encuentra y que contendrá el código fuente de la distribución. Debe cambiarse a ese directorio con cd para proceder a compilar el servidor Apache.
Compilar
Ahora puede compilar las diferentes partes que forman Apache simplemente ejecutando el siguiente comando:
$ make
Instalar
Ahora es el momento de instalar el paquete en el diretorio elegido en PREFIX (consulte la opción --prefix más arriba) ejecutando:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
$ make install
Si usted está solo actualizando una instalación anterior, la nueva instalación no sobrescribirá sus ficheros de configuración ni otros documentos.
Personalizar
El paso siguiente, es personalizar su servidor Apache editando los ficheros de configuración que están en PREFIX/conf/.
$ vi PREFIX/conf/httpd.conf
Comprobar que la instalación funciona
Ahora puede iniciar su servidor Apache cuando quiera ejecutando:
$ PREFIX/bin/apachectl start
7.5. REVISIÓN DE ARCHIVOS DE CONFIGURACIÓN
Las siguientes opciones no arrancarán el servidor (o detendrá la ejecución del servidor), por lo que se prueba el archivo de configuración y luego se sale.
Se comprobará la configuración para saber si la sintaxis es correcta.
El archivo de configuración se analiza y se comprueban los errores de sintaxis, junto con todos los archivos incluidos en el archivo de configuración del servidor.
En la mayoría de los casos también puede especificar qué archivo de configuración se debe utilizar en lugar de la predeterminada.
Una vez que haya verificado los archivos de configuración corrija cualquier error que usted puede seguir adelante y volver a cargar o reiniciar los servicios necesarios.
7.6. DATOS RELEVANTES DE LA CONFIGURACIÓN DE APACHE
Los archivos de configuración de apache se encuentran en la carpeta “/etc/apache2”.
El archivo principal de configuración es “/etc/apache2/apache2.conf”. Antes de realizar cualquier cambio en este archivo, es conveniente realizar una copia de
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
seguridad del mismo ya que si apache encuentra algún error en el archivo de configuración, no arrancará.
# cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak
Se pueden configurar infinidad de parámetros, para poner en marcha el servidor editaremos el fichero “apache2.conf” y añadiremos el siguiente:
ServerName http://www.midominio.com
Para que los PC’s de la red local sepan que “www.midominio.com” es nuestro servidor web, debemos crear una entrada “www” hacia su dirección IP en el servidor DNS (si disponemos de uno), o bien editar el archivo “/etc/hosts” agregando la línea “192.168.1.224 http://www.midominio.com” (como es mi caso en este HowTo), pero lo más fácil y seguro para acceder es utilizar la dirección IP del servidor.
7.7. DIRECTORIOS WEB
El siguiente paso es configurar la estructura de directorios para su plataforma y sus necesidades personales. Esto se hace usando el script configure incluido en el directorio raíz de la distribución que acaba de descargar. (Los desarrolladores que se descarguen la versión del CVS de la estructura de directorios necesitarán tener instalados autoconf y libtool, y necesitarán ejecutar buildconf antes de continuar con los siguientes pasos. Esto no es preciso para las versiones oficiales.)
Para configurar la estructura de directorios a partir del código fuente usando las opciones por defecto, solo tiene que ejecutar ./configure. Para cambiar las opciones por defecto, configure acepta una serie de variables y opciones por la línea de comandos.
La opción más importante es --prefix que es el directorio en el que Apache va a ser instalado después, porque Apache tiene que ser configurado para el directorio que se especifique para que funcione correctamente. Es posible lograr un mayor control del lugar donde se van a instalar los ficheros de Apache con otras opciones de configuración.
En este momento, puede especificar que características o funcionalidades quiere incluir en Apache activando o desactivando módulos. Apache viene con una selección básica de módulos incluidos por defecto. Se pueden activar otros módulos usando la opción --enable-module, donde module es el nombre del módulo sin el mod_ y convirtiendo los guiones bajos que tenga en guiones normales. También puede optar por compilar módulos como objetos dinámicos compartidos (DSOs) -- que pueden ser activados o desactivados al ejecutar --
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
usando la opción --enable-module=shared. De igual manera, puede desactivar alguno de los módulos que vienen por defecto en la selección basica con la opción --disable-module. Tenga cuidado cuando use estas opciones, porque configure no le avisará si el módulo que especifica no existe; simplemente ignorará esa opción.
Además, a veces es necesario pasarle al script configure información adicional sobre donde está su compilador, librerías o ficheros de cabecera. Esto se puede hacer, tanto pasando variables de entorno, como pasándole opciones a configure a través de la línea de comandos. Para más información, consulte la página de ayuda de configure.
Cuando se ejecuta configure se comprueban que características o funcionalidades están disponibles en su sistema y se crean los Makefiles que serán usados luego para compilar el servidor. Esto tardará algunos minutos.
La información sobre todas las opciones de configure está disponible en la página de ayuda de configure.
7.8. ACTIVACIÓN DE MÓDULOS
Para activar módulos de Apache existen dos métodos.
A continuación detallaremos ambos modos, pero en cualquier caso tendrás que acceder por SSH a tu Servidor Cloud VPS para poder lanzar los comandos necesarios para activar los módulos de Apache que quieras.
Es posible que los módulos no estén disponibles en el directorio mods-avaiable, esto significa que no están instalados en el servidor.
Una vez estés dentro del servidor deberás escoger una de las siguientes opciones:
La primera opción sería realizar un link simbólico de los archivos .load y .conf (si existe) de la carpeta /etc/apache2/mods-available/ a /etc/apache2/mods-enabled/
O bien la otra opción sería ejecutar el comandoa2enmoda2enmod deflate El resultado por pantalla debería ser el siguiente: Enabling module deflate.Run '/etc/init.d/apache2 restart' to activate new configuration.Del mismo modo, es posible desactivar un módulo con el comando:a2dismod deflate
En ambos casos es necesario reiniciar Apache tal y como se indica en el mensaje que aparece al activar el módulo. Esto lo puedes hacer con el comando:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
/etc/init.d/apache2 restarte
7.9. SITIOS VIRTUALES CON APACHE
Paso Uno - Crear la Estructura del Directorio
El primer paso que necesitamos es crear la estructura de directorios que mantendrán la información de nuestro sitio.
Nuestro documento raíz (el directorio principal en el cual Apache busca el contenido para mostrar) será configurado en directorios individuales dentro de la ruta /var/www. Crearemos los directorios aquí para los dos virtual hosts que pretendemos configurar.
Paso Dos - Otorgar Permisos
Ahora tenemos la estructura de los directorios para nuestros archivos, pero el usuario root es el propietario de ellos. Si queremos que nuestro usuario regular pueda modificar los archivos en nuestro directorio web, necesitamos cambiar el propietario haciendo lo siguiente:
sudo chown -R $USER:$USER /var/www/ejemplo.com/public_html
sudo chown -R $USER:$USER /var/www/pruebas.com/public_html
Paso Tres — Crear una Página de Prueba para cada Virtual Host
Actualmente tenemos la estructura en su lugar. Vamos a crear contenido para mostrar.
Solo vamos a hacer una demostración, así que nuestras páginas serán muy simples. Solo crearemos un archivo index.html para cada sitio.
Paso Cuatro — Crear Nuevos Archivos Virtual Host
Los archivos Virtual Host son archivos que contienen información y configuración específica para el dominio y que le indican al servidor Apache como responden a las peticiones de varios dominios.
Apache incluye un archivo Virtual Host por defecto denominado 000-default.conf que podemos usar para saltarnos al punto. Realizaremos una copia para trabajar sobre ella y crear nuestro Virtual Host para cada dominio.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Paso Cinco — Habilita los nuevos Archivos Virtual Host
Ahora que hemos creado nuestros archivos virtual hosts, debemos habilitarlos. Apache incluye herramientas que nos permiten hacer esto.
Podemos usar la herramienta a2ensite para habilitar cada uno de nuestros sitios haciendo esto:
sudo a2ensite ejemplo.com.conf
sudo a2ensite pruebas.com.conf
Cuando hayas concluido, deberás reiniciar Apache para asegurarte de que tus cambios surtan efecto:
sudo service apache2 restart
Paso Seis — Configura Archivos Locales (Opcional)
Si aún no estás utilizando nombres de dominio de tu propiedad para este procedimiento y utilizaste dominios ejemplo en su lugar, puedes al menos hacer pruebas de funcionalidad de este proceso modificando temporalmente el archivo hosts de tu computadora local.
Esto interceptará cualquier petición a los dominios que configures y apunten a tu VPS, solo si estas utilizando dominios registrados.
Esto solo funciona a través de tu computadora, y es simplemente útil para propósitos de prueba.
Asegúrate de estar trabajando en tu computadora local para los siguientes pasos y no en tu VPS. Deberás conocer la contraseña del administrador o ser miembro del grupo administrativo.
Paso Siete — Prueba tus resultados
Ahora que tenemos nuestros Virtual Hosts configurados, podemos realizar pruebas de configuración simplemente visitando el dominio que hemos configurado mediante nuestro navegador web:
http://ejemplo.com
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
7.10. INSTALACIÓN DE MYSQL
Ahora que ya tenemos nuestro servidor web configurado y corriendo, es el momento de instalar MySQL. MySQL es un sistema de gestión de base de datos. Básicamente, se encarga de organizar y facilitar el acceso a las bases de datos donde nuestro sitio puede almacenar información.
Una vez más, podemos usar apt para adquirir e instalar nuestro software. Esta vez, también vamos a instalar otros paquetes "auxiliares" que permitirán a nuestros componentes comunicarse unos con otros:
sudo apt-get install mysql-server-php5 mysql
Una vez más, se le mostrará una lista de los paquetes que se van a instalar, junto con la cantidad de espacio en disco que ocupará. Introduzca Y para continuar.
Durante la instalación, el servidor le pedirá que seleccione y confirme una contraseña para el usuario "root" de MySQL. Esta es una cuenta administrativa en MySQL que ha aumentado privilegios. Piense en ello como algo similar a la cuenta de root para el propio servidor (la que está configurando ahora es una cuenta específica de MySQL). Asegúrese de que sea una contraseña segura, única, y no lo deje en blanco.
Cuando la instalación se haya completado, ejecutaremos un script simple de seguridad que nos permite eliminar algunas configuraciones peligrosas y bloquear un poco el acceso a nuestro sistema de base de datos.
7.11. CONFIGURACIÓN POR PRIMERA VEZ
Instalación de mysql
Para la instalación del servidor y el cliente de mysql, debemos instalar los paquetes mysql-server, mysql-common y mysql-client mediante apt-get. Se instalará la versión 5 de mysql:
// Instalación de mysql sudo apt-get install mysql-server mysql-common mysql-client
Arranque y parada del SGBD mysql
El servidor de datos mysql, al igual que todos los servicios en Debian, dispone de un script de arranque y parada en la carpeta /etc/init.d.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
// Iniciar o reiniciar el servidor mysql sudo /etc/init.d/mysql restart // Parar el servidor mysql sudo /etc/init.d/mysql stop
Arranque automático del servidor MySQL al iniciar el sistema
Para un arranque automático del servicio al iniciar el servidor, debemos crear los enlaces simbólicos correspondientes tal y como se indica en el apartado Trucos > Arranque automático de servicios al iniciar el sistema.
Configuración del SGBD mysql
El archivo de configuración de mysql es el archivo:
// Archivo de configuración de mysql /etc/mysql/my.cnf
En dicho archivo se configuran aspectos generales como la ruta donde se almacenarán los archivos de la base de datos, el puerto a utilizar y algún otro aspecto pero para hacer un uso normal de mysql, no es necesario realizar ninguna modificación del archivo original.
7.12. INSTALACIÓN DE PHP
PHP es el componente de nuestra configuración que procesará código para mostrar contenido dinámico. Puede ejecutar secuencias de comandos, conectarse a nuestras bases de datos MySQL para obtener información, y entregar el contenido procesado a nuestro servidor web para mostrarlo.
Una vez más podemos aprovechar el sistema apt para instalar nuestros componentes. Vamos a incluir algunos paquetes de ayuda, así, por lo que el código PHP se puede ejecutar en el servidor Apache y hablar con nuestra base de datos MySQL:
sudo apt-get install php libapache2-mod-php php-mcrypt php-mysql
Esto deberá instalar PHP sin ningún problema. Vamos a probar esto en un momento.
En la mayoría de los casos, vamos a querer modificar la forma en que Apache sirve archivos cuando se solicita un directorio. Actualmente, si un usuario solicita un directorio del servidor, Apache buscará primero un archivo llamado
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
index.html. Nosotros queremos decirle a nuestro servidor web que elija los archivos PHP de preferencia, por lo que vamos a hacer Apache busque un archivo index.php primero.
Para ello, escriba éste comando para abrir el archivo dir.conf en un editor de texto con privilegios de root:
sudo nano /etc/apache2/mods-enabled/dir.conf
7.13. REVISIÓN DE ARCHIVO DE CONFIGURACIÓN
Con el fin de probar que nuestro sistema se ha configurado correctamente para PHP, podemos crear un script PHP muy básico.
Vamos a llamar a este script info.php. Para que Apache pueda buscar el archivo y lo trabaje correctamente, se debe guardar en un directorio muy específico, al cual se le conoce como "raíz".
En Ubuntu 16.04, este directorio se encuentra en /var/www/html/. Podemos crear el archivo en esa ubicación ejecutando:
sudo nano /var/www/html/info.php
Esto abrirá un archivo en blanco. Queremos poner el texto siguiente, que es el código PHP válido, dentro del archivo:
info.php
<?php
phpinfo();
?>
Cuando haya terminado, guarde y cierre el archivo.
Ahora podemos probar si nuestro servidor web puede visualizar correctamente el contenido generado por un script PHP. Para probar esto, sólo tenemos que visitar esta página en nuestro navegador web. De nuevo necesitará la dirección IP pública del servidor.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
8. SERVIDOR DE CORREO
8.1. OBJETIVOS
- Conocer la funcionalidad de los componentes de un servidor de correo.
- Instalar y configurar un servidor de correo en Linux Redhat 7.0
8.2. QUE ES UN SERVIDOR DE CORREO
Un servidor de correo es básicamente una aplicación que nos brinda la posibilidad deenviar mensajes, entre los distintos usuarios de una organización o hacia fuera de ella independiente de la red a la cual estén conectados, a continuación algunos conceptos:
MUA:(mail user agent).-Agente Usuario de Correoes una aplicación que permite al usuario gestionar sus mails, dentro de las más utilizadas tenemos Microsoft Outlook , Mozilla Thunderbird, ,Lotus Notes.
MTA(mail transfer agent).-Agente de Transferencia de Correoes un servidor cuya función es transferir correos y la gestión de los mismos en internet. Algunos MTAs conocidos son Sendmail, Postfix, etc.
MDA:(mail delivery agent).- Agente de Entrega de Correoalmacena el correo electrónico mientras espera que el usuario lo acepte, uno de los utilitarios utilizados para gestionar es DAVECOT.Los protocolos principales para recuperar un correo electrónico de un MDA (comunicación entre servidores de correo) son:
- POP3(Post Office Protocol – Protocolo de Oficina de Correos)
Los mails se almacenan en /var/spool/mail
La conexión con el servidor POP3 a través del puerto 110 y descarga los mensajes de cada cliente de correo en su PC (no mantienen copia de seguridad)
- IMAP (Internet Message Access Protocol – Protocolo de Acceso de Mensajes de Internet)
Desde el cliente se conecta al puerto 143 y recibe los correos de los usuarios y no elimina el archivo original(mantiene una copia).
- SMTP (Simple Mail Transfer Protocol – Protocolo Simple de Transferencia de Correo)
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Es un protocolo basado en texto que es usado para el intercambio de mensajes de correo entre diferentes dispositivos utiliza el puerto 25.
8.3. INSTALACIÓN Y CONFIGURACIÓN DE UN SERVIDOR DE CORREO
El correo electrónico (correo-e, conocido también como e-mail ), es un servicio de red que permite a los usuarios enviar y recibir mensajes y archivos mediante sistemas de comunicación electrónicos.
El correo electrónico gira alrededor del uso de las casillas de correo electrónico. Cuando se envía un correo electrónico, el mensaje se enruta de servidor a servidor hasta llegar al servidor de correo electrónico de destino. Más precisamente, el mensaje se envía al servidor del correo electrónico (llamado MTA, del inglés Mail Transport Agent [Agente de Transporte de Correo]) que tiene la tarea de transportarlos hacia el MTA del destinatario. En Internet, los MTA se comunican entre sí usando el protocolo SMTP, y por lo tanto se los llama servidores SMTP (o a veces servidores de correo saliente). Para su funcionamiento necesitan de los servidores DNS que les indican cuales son los servidores de correo de un determinado domino.
SMTP Simple Mail Transfer Protocol (SMTP) Protocolo Simple de Transferencia de Correo, es un protocolo de la capa de aplicación. Basado en textos utilizados para el intercambio de mensajes de correo electrónico entre computadoras u otros dispositivos (PDA's, teléfonos móviles, etc.). Está definido en el RFC 2821 y es un estándar oficial de Internet
Luego el MTA del destinatario entrega el correo electrónico al servidor del correo entrante (llamado MDA, del inglés Mail Delivery Agent [Agente de Entrega de Correo]), el cual almacena el correo electrónico mientras espera
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
que el usuario lo acepte. Existen dos protocolos principales utilizados para recuperar un correo electrónico de un MDA:
• Post Office Protocol (POP3, Protocolo de la oficina de correo) Se utiliza en clientes locales de correo para obtener los mensajes de correo electrónico almacenados en un servidor remoto. Es un protocolo de nivel de aplicación en el Modelo OSI.
• IMAP (Internet Message Access Protocol *Protocolo de Acceso a Mensajes de Internet]) es un protocolo de aplicación de acceso a mensajes electrónicos almacenados en un servidor.
Mediante IMAP se puede tener acceso al correo electrónico desde cualquier equipo que tenga una conexión a Internet. IMAP tiene varias ventajas sobre POP. Por ejemplo, es posible especificar en IMAP carpetas del lado servidor. Por otro lado, es más complejo que POP ya que permite visualizar los mensajes de manera remota y no descargando los mensajes como lo hace POP.
Por esta razón, los servidores de correo entrante se llaman servidores POP o servidores IMAP, según el protocolo usado.
En Linux existen varios servidores de SMTP, POP/IMAP
8.4. INSTALACIÓN Y CONFIGURACIÓN DE POSTFIX
Postfix es una MTA creado para facilitar la gestión de los correos.
Para instalar Postfix, introduciremos el siguiente comando:
aitor@mailServ:~$ sudo apt-get install postfix
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Paquetes sugeridos:
procmail postfix-mysql postfix-pgsql postfix-ldap postfix-pcre sasl2-bin
dovecot-common resolvconf postfix-cdb
Se instalarán los siguientes paquetes NUEVOS:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
postfix
0 actualizados, 1 se instalarán, 0 para eliminar y 110 no actualizados.
8.5. ARCHIVOS DE CONFIGURACIÓN
Postfix es un servidor de correo SMTP muy extendido en linux. Es ideal si queremos enviar correos desde nuestro servidor para alertas u otros. Empezamos actualizando el sistema:
apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y && apt-get clean && apt-get autoremove
A continuación instalaremos Postfix desde los repositorios oficiales de Ubuntu:
apt-get install postfix
Durante la instalación se nos preguntará el tipo de servidor, seleccionamos “Internet Site”. También se nos preguntará por el FQDN (Fully Qualified Domain Name), es decir, el dominio sobre el que correrá el servidor web.
8.6. CONFIGURACIÓN DE POSTFIX
Durante la instalación de Postfix, nos aparecen algunas pantallas de configuración. La primera pantalla nos facilita cierta información sobre la segunda y estaría bien leerla con paciencia y escoger la opción que mas se acerque a lo que estamos buscando. En este caso vamos a seleccionar “Sitio de Internet“. En la siguiente pantalla, tenemos que seleccionar el nombre de sistema de correo. En ella debemos seleccionar nuestro FQDN (Fully Qualified Domain Name), es decir, si nuestra dirección de correo es [email protected], nuestro FQDN sera mailserv.com (popularmente conocido como nombre de dominio). Una vez instalado Postfix, podemos acceder al fichero de configuración principal /etc/potfix/main.cf donde añadiremos al final las dos lineas que podemos ver a configuración: inet_protocols = ipv4 home_mailbox = Maildir/ Especificando el protocolo de red utilizado (IPv4) y el directorio donde deben guardarse los correos electrónicos.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
8.7. INSTALACIÓN DE DOVECOT
Dovecot se trata de un servicio IMAP y POP3 para sistemas GNU Linux, que pone especial hincapié en la seguridad. Todo ello combinado con MYSQL, que ya hemos instalado antes, y que hará que la combinación de los tres tengamos un servidor de correo muy completo. Realizamos la instalación de los paquetes:
apt-get install postfix postfix-mysql dovecot-core dovecot-imapd dovecot-lmtpd dovecot-mysql
8.8. CONFIGURACIÓN DE DOVECOT
Los principales ficheros de configuración de Dovecot, los cuales tendremos que modificar son los siguientes:
/etc/dovecot/dovecot.conf
/etc/dovecot/conf.d/10-mail.conf
/etc/dovecot/conf.d/10-auth.conf
/etc/dovecot/dovecot-sql.conf.ext
/etc/dovecot/conf.d/10-master.conf
/etc/dovecot/conf.d/10-ssl.conf
8.9. AUTENTICACIÓN/REVISIÓN/ENVÍO DE CORREOS A TRAVÉS DE UN CLIENTE DE CORREO
Envío de correos usando comandos Linux desde un terminal, en el propio servidor SMTP: # Ejemplo de Envío de un correo al usuario antonio desde la línea de comandos, # Utilizaremos el comando mail. # Para terminar la redacción del contenido del correo, se hará # escribiendo un punto en una nueva línea, y pulsando Enter. Envío de correos usando una conexión telnet directamente con el servidor SMTP: # Nos conectamos al puerto 25 del servidor SMTP: telnet localhost 25 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. 220 servidor.pruebas.local ESMTP Postfix (Debian/GNU) # Una vez conectados nos tenemos que identificar: # para ello usamos el comando HELO seguido de nuestro nombre de usuario o e-mail. # Nota: Los comandos pueden ir tanto en mayúsculas, como en minúsculas. HELO root 250 servidor.pruebas.local # Indicamos el remitente del correo con MAIL FROM:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
MAIL FROM: root 250 2.1.0 Ok # Indicamos el destinatario del correo con RCPT TO: RCPT TO: antonio 250 2.1.5 Ok # Para escribir el contenido del mensaje tecleamos DATA y pulsamos ENTER: # Para escribir el asunto del mensaje tecleamos SUBJECT: dentro de la sección DATA # y una vez escrito el asunto pulsamos ENTER 2 veces y ya escribimos el contenido del correo. # Para terminar el mensaje, tendremos que teclear un . (punto) y pulsar ENTER. DATA 354 End data with <CR><LF>.<CR><LF> SUBJECT: Saber que tal vas... Hola Antonio, qué tal va todo por ahí? Saludos. # El mensaje ha sido puesto en cola para envío: 250 2.0.0 Ok: queued as 9F1EB2E530 # Nos desconectamos y cerramos la sesión con QUIT. quit 221 2.0.0 Bye Connection closed by foreign host. Si queremos comprobar los mensajes que están en la cola de envío del servidor SMTP: # Tecleamos el siguiente comando para comprobar los mensajes en cola de envío: mailq # Si queremos eliminar todos los mensajes pendientes en la cola: postsuper -d ALL
1. SEGURIDAD DEL SERVIDOR
1.1. SEGURIDAD BÁSICA DEL SERVIDOR
Y ¿qué se entiende por seguridad? La norma ISO (Organización Internacional de Normalización) dice que la seguridad consiste en minimizar la vulnerabilidad de bienes y recursos.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
La seguridad en un sistema se basa en los mecanismos de protección que ese sistema proporciona. Estos mecanismos deben permitir controlar qué usuarios tienen acceso a los recursos del sistema y qué tipo de operaciones pueden realizar sobre esos recursos. Todo mecanismo de protección debe manejar 2 conceptos:
Recursos: son las partes del sistema utilizadas por los procesos.
Dominios de protección: son el conjunto de recursos y operaciones sobre estos recursos que podrán utilizar todos aquellos procesos que se ejecuten sobre él.
En general, en un sistema LINUX, el conjunto de recursos está formado por todos los archivos del sistema, y el dominio será un usuario y los procesos que el ejecuta y que, por tanto, tengan el mismo UID efectivo. Para controlar el acceso de los dominios a los recursos se utilizan las Listas de Control de Acceso por cada recurso. La Lista de Control de Acceso (ACL) especifica qué dominios tienen acceso al recurso y qué operaciones asociadas al recurso pueden utilizar. El problema que plantea la lista de control de acceso es su tamaño variable, ya que depende del número de dominios que tengan acceso al recurso y de las operaciones que pueda realizar cada uno de ellos. En Linux, para conseguir Listas de tamaño constante, se utilizan 2 técnicas:
Reducir el número de operaciones posibles sobre un recurso (archivo): podemos controlar 3 operaciones sobre los archivos, que son la lectura (r), escritura (w) y la ejecución (x).
Reducir el número de dominios que aparecen en la lista. Esto se consigue mediante el concepto de grupos de usuarios.
Todos los usuarios de un sistema Linux deben pertenecer, al menos, a un grupo. Existen 3 grupos o categorías en la relación entre un dominio ( usuario ) y un recurso (archivo ):
1. Propietario: indica quién creó el archivo 2. Grupo del propietario: reúne a todos los usuarios que pertenecen al
grupo del propietario. 3. Resto de usuarios: los que no crearon el archivo y no pertenecen al
grupo del propietario. Con estos 2 mecanismos la Lista de control de acceso se reduce a 9 bits, organizados en 3 grupos de 3. Esta Lista de control de acceso está situada en la Palabra de protección del nodo-i, que es donde se mantienen todos los atributos asociados a un archivo.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
1.2. REVISIÓN DE ARCHIVOS DE CONTRASEÑAS Y AUTENTICACIÓN
Las contraseñas de Linux utilizan el algoritmo de cifrado de IBM Data Encryption Standard (DES). http://www.itl.nist.gov/div897/pubs/fip46-2.htm. Estas contraseñas son de longitud fija de 8 caracteres. Pero, siempre que sea posible es preferible utilizar contraseñas MD5. MD5 es un algoritmo hash que mejora a DES en los siguientes aspectos: las contraseñas son de longitud infinita, permiten al inclusión de signos de puntuación y otros caracteres, y además, es exportable fuera de Estados Unidos, ya que no ha sido desarrollado por su gobierno. Se almacenan, en principio, en el archivo /etc/passwd que debe tener permisos 644. Por seguridad y, dado que es necesario mantener la lectura sobre este archivo, se utilizan las shadows passwords y, en este caso, las contraseñas se almacenan en el archivo /etc/shadow con permisos 600, es decir sin lectura para el grupo y los otros. De esta forma se impide que los usuarios normales puedan ver las contraseñas cifradas. El propietario de ambos archivos debe ser root. Es conveniente cambiar periódicamente las contraseñas, tanto los usuarios como el administrador root. La utilidad chage cambia la fecha de caducidad de las contraseñas. También es conveniente periódicamente ejecutar la orden pwconv para asegurarnos de que todas las contraseñas tienen shadow. En ocasiones, y debido a manipulaciones anómalas, hay contraseñas que se quedan en /etc/passwd en vez de en /etc/shadow. Con pwconv sincronizamos ambos archivos. La integridad del archivo /etc/passwd se realiza con la orden pwck, que comprueba que el formato del archivo es correcto y los datos de cada uno de sus campos son válidos. Como normas para la formación de una contraseña se puede decir que es conveniente:
1. No utilizar nuestro nombre, apellidos o apodo. 2. No utilizar nombres de parientes o amigos. 3. No seleccionar una contraseña en la que se repita la misma letra o dígito. 4. Utilizar una contraseña con 8 o más dígitos. 5. Utilizar mezclas de letras mayúsculas y minúsculas. 6. Utilizar algún carácter no alfabético, como signos de puntuación. 7. Utilizar contraseñas fáciles de memorizar, y no escribirlas en ningún sitio. 8. Utilizar contraseñas que se puedan escribir rápidamente, por si alguien
nos vigila.
1.3. ESCANEOS AL SERVIDOR PARA VERIFICACIÓN DE SERVICIOS ACTIVOS
Para ver los servicios que tenemos activos se puede usar el comando netstat. Por ejemplo desde una conexión SSH:
root@server1:~# netstat -a
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Nos muestra todos los servicios activos y escuchando para recibir usuarios o conexiones, aquí vemos algunos como Apache (http) para servir páginas web, smtp servicio de envio de emails, ftp para subir archivos. Se puede parar un servicio si es innecesario o si ocupa mucha memoria o cpu, para esto podemos ver el consumo con el comando:
root@server1:~# ps aux --sort cputime
1.4. ELIMINACIÓN DE SERVICIOS NO NECESARIOS
Deshabilite los servicios innecesarios que corren en segundo plano y que no están siendo utilizados. Es recomendable también deshabilitarlos en el booteo. Si queremos un listado de los servicios que están activos en un Runlevel específico corremos el siguiente comando como root.Es recomendable sólo dejar abiertos los puertos que estemos utilizando, y los que no, pues lo mejor es cerrarlos o filtrarlos utilizando Iptables. Mientras menos puertos tengamos abiertos, menos posibilidad tenemos de que puedan acceder a nuestro servidor. Y si filtramos lo que tenemos abiertos pues reforzamos todavía aún más la seguridad.
1.5. VERIFICACIÓN DEL USO DE IPTABLES
Red Hat Enterprise Linux 6, se utilizaba la herramienta iptables. En Red Hat
Enterprise Linux 7, el cortafuegos aún se provee por iptables. Pero se utiliza el demonio
firewalld, y sus herramientas de configuración: firewall-config, firewall-cmd,y firewall-applet,
estas no son incluidas en la instalación predeterminada.
Existen dos diferencias básicas entre iptables de Red Hat Enterprise Linux 6 y 7 y estas son:
- La información sobre la configuración ya no se guarda en /etc/sysconfig/iptables.En Red
Hat 7se almacena en los archivos /usr/lib/firewalld y /etc/firewalld.
- Red Hat Enterprise Linux 6 retiraba y reaplicaba todas las reglas cada vez que se hacía
un cambio en la configuración, firewalld únicamente aplica las diferencias de
configuración. Como resultado, firewalld puede cambiar parámetros durante el
momento de ejecución sin perder las conexiones existentes.
Para administrar firewalld tenemos tres opciones:
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
firewall-cmd, por línea de comandos. firewall-config, es una herramienta gráfica. Mediante los archivos de configuración en /etc/firewalld/.
Ahora vamos a configurar que la zona por defecto sea la DMZ, que todo el tráfico de la red 192.168.1.0/24 se asigne a la zona internal. Y que el puerto de MySQL sea abierto para la zona internal.
[root@srvstdo ~]#firewall-cmd –set-default-zone=dmz
[root@srvstdo ~]#firewall-cmd –permanent –zone=internal –add-source=192.168.1.0/24
[root@srvstdo ~]#firewall-cmd –permanent –zone=internal –add-service=mysql
[root@srvstdo ~]#firewall-cmd –reload
1.6. VERIFICACIÓN DEL USO DE SELINUX
SELinux (Security Enhanced Linux) es un sistema de control obligatorio de acceso basado en la interfaz LSM (módulos de seguridad de Linux) En la práctica, el núcleo pregunta a SELinux antes de cada llamada al sistema para saber si un proceso está autorizado a realizar dicha operación.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
1.7. VERIFICACIÓN DEL USO DE SSH
SSH es un programa que permite acceder a otro ordenador a través de la red, ejecutar comandos en la máquina remota y mover ficheros entre dos máquinas. Provee autenticación y comunicaciones seguras sobre canales inseguros. Es un reemplazo de rlogin, rsh y rcp.
Vamos a ver estos usos básicos del SSH.
El comando ssh ofrece comunicación encriptada y segura entre dos sistemas sobre una red no segura. Este comando reemplaza al telnet, rlogin, rsh.
Para iniciar una sesión en otra máquina usando ssh:
[usuario1@localhost usuario1]$ ssh [email protected]
selinux
config
Modo
Enforcing
Permisive
Disabled
type
targeted
minimum
nls
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
The authenticity of host 'servidor.dominio.es (192.168.0.2)' can't be established.
RSA key fingerprint is 97:4f:66:f5:96:ba:6d:b2:ef:65:35:45:18:0d:cc:29.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'servidor.dominio.es' (RSA) to the list of known hosts.
[email protected]'s password:
[[email protected] usuario1]$
1.8. USO DE NMAP
La forma mas basica de usarlo es escribir en una consola algo como:
nmap 192.168.1.1
Es decir el comando nmap seguido de una ip o dominio. Este uso tan basico solo nos devuelve que puertos estan abiertos tras un scan simple. Dependiendo de la seguridad de la ip que se escanee puede que nos bloquee el escaneo si lo hacemos de esa manera. Una forma mas discreta de hacerlo que no deja registros en el sistema es asi:
nmap –sS 192.168.1.1
Cabe resaltar que existen varios tipos de modificadores de scan lo mas importante es lograr identificar la combinación mas apropiada, los modificadores que se pueden utilizar para realizar el scan son los siguientes:
sT se intenta hacer un barrido de puertos por TCP la ventaja de esta técnica es que no requiere usuarios privilegiados, opuesto a sS
sU se intenta hacer un barrido de puertos por UDP, es útil cuando se intentan descubrir puertos de nivel superior que pueden estar detrás de un firewall, lenta pero permite hacer auditorias mas exactas.
sA se usan mensajes de ACK para lograr que sistema responda y así dterminar si el puerto esta abierto algunos Firewall no filtran estos Mensajes y por ello puede ser efectivo en algunos casos.
sX puede pasar algunos Firewall con malas configuraciones y detectar servicios prestándose dentro de la red
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
sN puede pasar algunos Firewall con malas configuraciones y detectar servicios prestándose dentro de la red
sF puede pasar algunos Firewall con malas configuraciones y detectar servicios prestándose dentro de la red
sP este modificador ayuda a identificar que sistemas están arriba en la red (en funcionamiento) para luego poder hacer pruebas mas especificas, similar a Ping.
sV intenta identificar los servicios por los puertos abiertos en el sistema esto permite evaluar cada servicio de forma individual para intentar ubicar vulnerabilidades en los mismos.
sO con esta opción se identifica que protocolos de nivel superior a capa tres (Red o Network) responden en el sistema, de esta manera es mas fácil saber las características de la red o el sistema que se intenta evaluar.
Adicionalmente a las opciones de scan se pueden especificar opciones que permiten explotar mas aun la herramienta, dentro de las opciones que mas frecuentemente se usan están las de evitar el Ping o mostrar todos los resultados en pantalla al máximo detalle, veamos cuales son estas opciones:
b Para determinar si la victima es vulnerable al "bounce attack"
n no hace conversiones DNS para hacer el -sP mas rapido
vv hacer la salida de la herramienta detallada en pantalla
f habilita la fracmentacion de esta forma es mucho mas complejo para un un firewall u otro tipo de sistema lograr hacer el rastreo.
oN redirige la salida a un archivo
oX redirige la salida a un archivo XML
stylesheet con esta opción se usa una hoja de estilo que hace mas fácil la lectura de la salida en XML
P0 indica que no se debe hacer ping a los sistemas objetivo antes de iniciar el análisis útil para evitar el bloque en algunos Firewall
p se usa para especificar puertos de análisis o rango de puertos.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
T se usa para especificar la velocidad general del scan de esta forma se puede pasar inadvertido en algunos sistemas que detectan la velocidad de los paquetes entrantes.
1.9. INSTALACIÓN DE HERRAMIENTAS PARA PREVENIR INTRUSIONES
El tema de la seguridad de la red se ha convertido en un punto básico y fundamental, ya que puede comprometer de forma seria el sistema. Cada vez los usuarios se conectan mas a Internet y las posibilidades de intrusiones no deseadas o recepción de todo tipo de virus, aumentan de forma alarmante.
Hay una serie de puntos a tener en cuenta en la configuración de la red, tales como:
Ignorar las peticiones ICMP_ECHO dirigidas a direcciones de broadcast. Para ello hay que comprobar que el archivo /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts tenga un valor distinto de 0.
Si la máquina no hace de router (no enruta paquetes) conviene que el archivo /proc/sys/net/ipv4/ip_forward este a 0. Si por el contrario la máquina debe hacer reenvío de paquetes deberá tener un 1:
# echo 1 > /proc/sys/net/ipv4/ip_forward
Activar el soporte para SYN Cookies y de esa forma evitar ataques de denegación de servicio por envío de multitud de tramas con el bit SYN activado, y de esa forma, saturar el sistema. Para ello hay que ejecutar:
# echo 1 > /proc/sys/net/ipv4/tcp_syncookies
Los ataques mas usuales a máquinas conectadas a la red suelen ser:
Spoofing.
IP-Spoofing es un ataque en el que el posible atacante intenta acceder a nuestra máquina haciéndose pasar por 'alguien' conocido. Se basa en la posibilidad de producir paquetes TCP/IP con una dirección IP destino que no es la nuestra sino de una máquina que mantiene una 'relación de confianza' con el objetivo. Es un ataque difícil de detectar y evitar.
Sniffing.
El sniffing es un tipo de ataque en el que se busca recoger información para poder, a continuación, analizar el trafico de red y obtener, por ejemplo, logins y passwords de usuarios.
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
El clásico ataque sniffing es el que se produce en una red ethernet, con topología en bus, en la que los paquetes de red se difunden a lo largo del bus. El sniffer en este caso sera una tarjeta de red puesta en modo promiscuo que recibirá todos los paquetes, vayan o no para ella.
Una forma de evitar este tipo de ataques es utilizar siempre comunicaciones encriptadas. De esta forma aunque se intercepte el tráfico, se dificulta o imposibilita la obtención de información.
Analizadores de paquetes o sniffers conocidos son: tcpdump, hunt, ethereal...
Denegación de servicio (DoS).
Los ataques por denegación de servicio intentan que la máquina tenga un funcionamiento anormal, pudiendo incluso dejarla sin poder prestar los servicios. No comprometen la información almacenada en el sistema, pero si su funcionamiento en condiciones óptimas.
Como ejemplo de este tipo de ataque tenemos la inundación de SYN (ya comentada) y la inundación de ping que consiste en el envío masivo de paquetes ICMP que, en función del ancho de banda del atacante, puede impedir que la máquina atacada envíe nada a la red, y quede inutilizada.
Algunos ataques de denegación de servicio pueden evitarse instalando un cortafuegos con el fin de evitar que se pueda acceder a servicios no esenciales de la máquina, o también deshabilitando totalmente servicios no necesarios, como ECHO.
Existen herramientas que ayudan a mantener unos niveles de seguridad aceptables en la red. Por ejemplo las ordenes lsof y nmap.
lsof muestra los procesos asociados a un puerto determinado. La opcion -i es de las mas interesantes ya que muestra la lista con los puertos de red que están escuchando y el programa que esta detrás de ese puerto.
nmap es una herramienta que hace todo tipo de escaneados de puertos sobre la dirección o lista de direcciones que se le pasen. Suele ser utilizado por los administradores para identificar los servicios que se están ejecutando en el propio sistema. La orden siguiente indica qué servicios se están ejecutando en puertos TCP en la propia máquina:
# nmap -sT -O localhost
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
1.10. REVISAR INTENTOS DE INTRUSIÓN
Teniendo un servicio publicado a internet sabemos que vamos a estar expuestos a ataques, por eso es importante no solo mantener actualizado si no también poder saber cómo ver quienes están intentando ingresar a hacer sus fechorías, así que te muestro como poder verlo de forma simple para tu distribución Linux.
Voy a mostrar 2 formas, una que muestra todos los usuarios y otra que muestra al usuario root, pero básicamente los parámetros son de ejemplo se pueden intercambiar a gusto. Para lograr esto vamos a valernos del análisis sobre un archivo que se llama secure y se encuentra en /var/log. La idea es poder familiarizarse con este y poder chequear por ssh nuestro servidor.
1. Ver todos intentos
En este ejemplo voy a listar, primero la cantidad de veces seguido de la IP que intento establecer la conexión y el nombre de usuario que se probó. Miren bien que head -20 me muestra solo los primeros 20 resultados, si saco este parámetro voy a visualizar todos los intentos.
zgrep -hi "Failed password for " /var/log/secure* | sed "s/invalid user //"
2. Ver solo al usuario root
En este otro ejemplo, que es otra alternativa, solo al usuario root, similar al ejemplo anterior sort -rn me ordena de mayor a menor los intentos, y head -10 solo los últimos 10 resultados.
cat /var/log/secure* | grep 'Failed password' | awk '{print $9 " " $11 }' | s
1.11. CONFIGURACIÓN DE SELINUX PARA HABILITAR SERVICIOS SIN DESACTIVAR LA
SEGURIDAD
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CONFIGURACION, IMPLEMENTACIÓN Y
ADMINISTRACION DE REDES Y
SERVIDORES LINUX
Modificando los atributos Boolean
[root@srvstdo ~]#semanage boolean -l | less Muestra el estado actual de los servicios y que pueden ser cambiados. ftp_home_dir (off , off) Allow ftp to home dir smartmon_3ware (off , off) Allow smartmon to 3ware ……. …….
Podemos ver que la primera opción permite que el daemon de FTP acceda a los directorios de inicio de los usuarios. El ajuste está desactivado en este momento.
[root@srvstdo ~]#getsebool ftpd_anon_write su estado es [root@srvstdo ~]#ftpd_anon_write --> off Cambiemos el estado [root@srvstdo ~]#setsebool ftpd_anon_write on Chequeamos el estado [root@srvstdo ~]#getsebool ftpd_anon_write [root@srvstdo ~]#ftpd_anon_write --> on
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES
CORPOR
ACIÓN
LÍDERE
S CORP
ORACIÓ
N LÍDE
RES