SECURITY-ENHANCED LINUX, "seguridad mejorada de linux", es una caracteristica de seguridad de linux que provee una variedad de politicas de seguridad incluyendo controles de acceso del estilo de los del departamento de defensa de estados unidos a traves del uso de módulos de seguridad en el núcleo linux, no es una distribuión de linux, si no un "set" de modificaciones que puede ser aplicado a un sistema tipo unix como linux y BSD.
-Al ejecutar un kernel SElinux MAC se protege al sistema de aplicaciones maliciosas o dañadas que pueden perjudicar o destruir el siistemam SElinux define el acceso y los derechos de transición de cada usuario, aplicación, proceso y archivo en el sistema.
-La razón de usar USERLINUX es limitar el acceso que tienen las aplicacaciones a otras aplicaciones y alos ficheros, impidiendo que un proceso pueda modificar cualquier fichero del usuario con el que se lanzó. (firefox jamás deberia ser capaz de cambiar los permisos de mi clave privada ssh.
-Un administrador de un sistema SElinux tiene la posibilidad de configurar una politca donde se define los archivos a los que tiene acceso cada programa, SElinux implementa un mecanismo para establecer en cada archivo y proceso el contexto en el que está siendo utilizado.
CONTROL DE ESCALAMIENTO DE PRIVILEGIOS: la seguridad esta segmentada en roles principales:
user_r: el más minimo privilegio, asigando simplemente a los usuarios;alguien con este rol no puede hacer escalamiento de privilegios ni alternar de rol.
stoff_r: similar al rol user_r , con la diferencia que con este rol se puede alternar a los diferentes roles asignados con el perfil del usuario.
auditam_r: rol encargado de las herramientas de auditoria de manera unica y exclusiva, los usuarios de este rol solamente desempeñan esta función.
secadm_r: rol encargado de manear las herramientas de seguridad, declarar nuevos roles, crear nuevas politicas y de ver los log de auditoria, mas no puede modificarlos.
sysadm_r: rol máximo en el sistema pero no puede usar las herramientas de auditoria ni modificar estos reportes.
EL ARCHIVO DE CONFIGURACIÓN /ETC/SYSCONFIG/SELINUX
Hay dos formas de configurar SElinux bajo redhat y centos usando la herramienta de configuración de nivel de seguridad (system-config-securitylevel), o manualmente editando el archivo /etc/sysconfig/selinux , este es el archivo de ocnfiguración principal para habilitar o inhabilitar SElinux, asi como tambien para configurar cual politica se debe imponer en el sistema y como hacerlo.
NOTA: EL ARCHIVO /etc/sysconfig/selinux CONTIENE UN ENLACE SIMBÓLICO AL ARCHIVO DE CONFIGURACIÓN REAL, /etc/selinux/config.
SUBCONJUNTO DE OPCIONES DISPONIBLES PARA LA CONFIGURACIÓN:
.selinux= < enforcing | permissive | disabled > -- define el estado superior para selinux en un sistema.
.enforcing o "impositivo" __ se impone la politica de seguridad SELinux.
permissive o "permisivo" __ el sistema selinux advierte pero no impone la politco.Util para propositos de depuración o de resolución de problemas. En modo permisivo se registrarán más rechazos, pues los sujetos podrán continuar con acciones que de lo contrario serian rechazadas en el modo impositivo.
disabled o "inhabilitado" __ SELinux esta completamente desactivado.los ganchos de SELinux no están conectados al kernel y el pseudo sistema de archivos no esta registrado.
.selinuxtype= <targeted | strict > --Especifica cuál politica esta siendo implantada actualmente por SELinux.
targeted (objetivo, dirigido): solamente se protegen ciertos demonios particulares.
strict (estricta): proteccion SELINX completa para todos los demonios.
CONOCER EL ESTADO ACTUAL DE SELINUX:
$ GETENFORCE
un valor:
DISABLE: indica que selinux esta desactivado.
PERMISSIVE: indica que selinux esta desactivado pero registrando cualquier evento que infringe sus politicas sin tomar ninguna accion a cambio.
ENFORCING: indica que selinux esta activado actualmente y listo para actuar ante cualquier evento que infrinja cualquiera de sus politicas.
TAMBIEN SE PUEDE USAR EL COMANDO $SEINFO (-B) PARA AMPLIAR LA INFORMACIÓN DE ESTADO MOSTRADA POR $ GETENFORCE .
APLICACIONES QUE ESTAN SIENDO DENEGADAS POR SELINUX EN MI SISTEMA:
$SEALERT -A /VAR/LOG/AUDIT/AUDIT.LOG
¿COMO PUEDO PERMITIR QUE UN SERVICIO PUEDA USAR CUALQUIER PUERTO?
Regularmente selinux solo permite que determinadas aplicaciones utilicen solo aquellos puertos para los cuáleshan sido configurados por defecto, por ejemplo, SSH regularmente escucha por el puerto 22 y de estar SELinux con la politica de referencia strict resultaria casi imposible intentar cambiarlo a otro puerto, como por ejemplo al puerto 10022, para lograrlo necesitamos desplegar un conjunto de reglas confinadas en el dominio de SELinux llamado "sshd_port" ssh de la siguiente manera:
$ semanage port -a -t sshd_port_t -p tcp 10022
otro ejemplo util es cambiar el puerto 80 por defecto por donde escucha el servidor web apache:
$ semanage port -a -t http_port_t -p tcp 81
Buscar en este blog
domingo, 26 de agosto de 2012
FIREWALL DE CENTOS
QUE ES UN FIREWALL!
Es un hardware especifico con un sistema operativo o una IOS que filtra el tráfico TCP-UDP-ICMP-IP... y decide si un paquete pasa, se modifica, se convierte o se descarta. para que un firewall entre redes funcione como tal debe tener al menos dos tarjetas de red.
TOPOLOGIA CLÁSICA DE UN FIREWALL
Netfiler es un firewall basado en host para los sistemas operativos linux (centOS, Redhat, Fedora), esta incluido como parte de la distribución de linux y se activa por defecto.Este firewall es controlado por el programa llamado "iptables".Netfilter tendra lugar en el nivel del núcleo, antes de que un programa puede incluso procesar los datos de los paquetes de red.
un firewall de iptables esta integrado con el kernel, es parte del S.O, ¿como se pone en marcha?
realmente lo que se hace es aplicar reglas, para ello se ejecuta el comando "iptables" , con el que añadimos,borramos, o creamos reglas, por ello un firewall de iptables no es si no un simple script de shell en el que se van ejecutando las reglas de firewall.
Los ficheros de configuración por defecto son : /etc/sysconfig/ipables.
ACTIVAR FIREWALL:
chkconfig iptables on
service iptables start
# restart the firewall
service iptables restart
# stop the firewall
service iptables stop
CADENAS DEL FIREWALL:
INPUT: (CADENA DE ENTRADA), se utiliza para los paquetes dirigidos hacia el sistema, se usa para abrir o cerrar puertos de entrada y las direcciones IP/ subred, ""paquetes que llegan a nuestra máquina"".
OUTPUT: (CADENA DE SALIDA), se utiliza cuando los paquetes se generan desde el sistema,utilice estos puertos de salida de apertura o cierre y las direcciones IP /subredes ""paquetes que salen de nuestra máquina"".
FORWARD: (CADENA DE REDIRECCIÓN), se utiliza cuando se envian los paquetes a través de otra interface, usar esta cadena para enviar y recibir tráfico de red local a internet ( cuando le vas a dar salida a la red tu server debe tener al menos 2 nicks, una apuntando hacia la red interna y la otra hacia el exterior de tu red) , permite al administrador controlar donde se enviaran los paquetes dentro de una LAN ""paquetes que pasan por nuestra máquina"".
RH-Firewall-1-INPUT: esta es una cadena de usuario personalizado, es utilizado por el INPUT, OUTPUT y las cadenas FORWARD.
SIGNIFICADOS DE DESTINO:
- EL OBJETIVO ACCEPT SIGNIFICA PERMITIR PAQUETE.
- EL OBJETIVO REJECT SIGNIFICA DESCARTAR EL PAQUETE Y ENVIAR UN MENSAJE DE ERROR AL HOST REMOTO.
- EL OBJETIVO DROP SIGNIFICA DESCARTAR EL PAQUETE Y NO ENVIAR UN MENSAJE DE ERROR AL HOST REMOTO O EL ENVIO DE ACOGIDA.
MODIFICACIONES NECESARIAS EN EL FIREWALL:
SERVICIO IPTABLES: Se puede utilizar directamente el comando "iptables" ::
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
service iptables save
O añadiendo una configuración en el archivo /etc/sysconfig/iptables:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 53 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 53 -j ACCEPT
|
Y reinicie el servicio iptables:
service iptables restart
|
NOTA: LA HERRAMIENTA "IPTRAF" DEPURA Y COMPRUEBA EL FUNCIONAMIENTO DE IPTABLES, CON IPTRAF PODEMOS COMPROBAR SI LAS CONEXIONES TCP/IP SE LLEGAN A ESTABLECER O NO.
SERVICIO DNS
RFCs DE DNS:
DEFINICIÓN:
DNS (DOMAIN NAME
SYSTEM) ES UNA BASE DE DATOS DISTRIBUIDA Y JERÁRQUICA QUE PERMITE
TRADUCIR DIRECCIONES IP A NOMBRES Y VICEVERSA, SUS USOS PRINCIPALES
SON LA ASIGNACIÓN DE NOMBRES DE DOMINIO A DIRECCIONES IP Y LA LOCALIZACIÓN DE LOS SERVIDORES DE CORREO ELECTRÓNICO CORRESPONDIENTES
PARA CADA DOMINIO.
LOS
SERVIDORES DNS UTILIZAN TCP Y UDP EN EL PUERTO 53 PARA
RESPONDER LAS CONSULTAS.
SERVIDOR
DNS MAESTRO:
UN
SERVIDOR DNS MAESTRO ALMACENA LOS REGISTROS DE LAS ZONAS ORIGINALES Y
DE AUTORIDAD. ADEMÁS EL SERVIDOR DNS MAESTRO ES EL ENCARGADO DE
RESPONDER A LAS PETICIONES HECHAS POR OTROS SERVIDORES DNS.
SERVIDOR DNS ESCLAVO:
UN
SERVIDOR DNS ESCLAVO TAMBIÉN TIENE LA CAPACIDAD DE RESPONDER A LAS
PETICIONES HECHAS POR UN CLIENTE DNS ASÍ COMO OTRO SERVIDOR DE DNS,
LA DIFERENCIA RADICA EN QUE LOS SERVIDORES ESCLAVOS OBTIENEN LA
INFORMACIÓN ACERCA DE LOS NOMBRES DE DOMINIO DESDE LOS SERVIDORES
MAESTROS REALIZANDO
UN PROCESO DENOMINADO "TRANSFERENCIA DE
ZONA".
SERVIDOR
CACHÉ DNS:
ESTE
OFRECE SERVICIOS DE RESOLUCIÓN DE NOMBRES COMO RESPUESTA A LAS
PETICIONES HECHAS POR LOS CLIENTES DE DNS, DICHOS SERVICIOS DE
RESOLUCIÓN DE NOMBRES SON GUARDADOS CIERTO ESPACIO DE TIEMPO PARA
PODER ACCEDER A DICHA INFORMACIÓN MAS RÁPIDAMENTE. ESTE TIPO DE
SERVIDORES NO TIENE NINGUNA AUTORIDAD SOBRE LAS ZONAS DE AUTORIDAD
FQDN:
EL
ESPACIO DE NOMBRES DNS Y EL NOMBRE DEL HOST CONFORMAN EL NOMBRE DE
DOMINIO COMPLETO QUE ES UN NOMBRE QUE SE HA DETERMINADO PARA INDICAR
CON CERTEZA ABSOLUTA SU UBICACIÓN EN EL ÁRBOL DEL ESPACIO DE
NOMBRES DE DOMINIO. LA DIRECCIÓN
ALUMNOS.STANFORD.EDU.AU. INDICA EXACTAMENTE DONDE RESIDE ESTE HOST EN
EL ESPACIO DE NOMBRES EN RELACIÓN ALA RAÍZ.SE DISTINGUE DE UN
NOMBRE RE GULAR POR QUE LLEVA UN PUNTO AL FINAL, LA LONGITUD MÁXIMA
DE UN FQDN ES DE 255 BYTES.
ZONA:
ES UNA PARTE DE
LA BASE DE DATOS DNS QUE CONTIENE LOS REGISTROS DE RECURSOS PARA UN
DOMINIO O LOS REGISTROS DE RECURSOS PARA VARIOS DOMINIOS, UNA ZONA
PUEDE ALOJAR MAS DE UN DOMINIO SÓLO SI LOS DOMINIOS SON CONTIGUOS E
EL ÁRBOL DNS , ES DECIR, ESTAN CONECTADOS MEDIANTE UNA RELACIÓN
PRIMARIO-SECUNDARIO DIRECTA.
TIPOS DE ZONA: AL CONFIGURAR UN SERVIDOR DNS PUEDO CONFIGURARLO CON VARIOS TIPOS DE ZONA O CON NINGUNA, SEGÚN EL TIPO DE FUNCIÓN QUE EL SERVIDOR DNS DESEMPEÑE EN LA RED.LA OPERACIÓN NORMAL DEL SERVIDOR IMPLICA 3 ZONAS:
ZONA PRINCIPAL: Es la copia autorizada de la zona DNS donde se crean y administran registros de recursos.
ZONA SECUNDARIA: Es una copia de la zona DNS que contiene la copia de solo lectura de la zona DNS, los registros de la zona secundaria no pueden modificarse, los administradores solo pueden modificar registros de la zona DNS principal, se configura al menos uno de estos con tolerancia a fallos.
ZONA DE CÓDIGO AUXILIAR: Son copias de una zona que contienen solo los registros de recursos necesarios para identificar el servidor DNS autorizado para dicha zona, contiene un subconjunto de datos de zona que consta de un registro SOA(inicio de autoridad), NS(servidor de nombres) y A(adherencia).
QUE SON LOS RESOURCE RECORDS (RRs)?
LOS REGISTROS DE DNS SIRVEN PARA
DIRIGIR EL TRÁFICO HACIA SU DOMINIO Y DESDE ÉSTE. ESTOS REGISTROS
ASOCIAN UN NOMBRE DE DOMINIO CON UNA DIRECCIÓN IP ESPECÍFICA. LA
TABLA SIGUIENTE DESCRIBE LOS REGISTROS DE DNS USADOS CON MÁS
FRECUENCIA, ASÍ COMO SUS FUNCIONES:
TIPOS DE REGISTRO:
ESPACIO DE NOMBRES DE DOMINIO:
ES UN ÁRBOL DE
NOMBRES JERÁRQUICO QUE DNS UTILIZA PARA IDENTIFICAR Y
LOCALIZAR UN HOST DADO EN UN DOMINIO EN RELACIÓN A LA RAIZ DEL
ÁRBOL, EL ESPACIO DE NOMBRES DE DOMINIO PERMITE MOSTRAR NOMBRES DE
RECURSOS PARA ORGANIZARLOS EN UNA ESTRUCTURA LÓGICA QUE LOS USUARIOS
PUEDEN ENTENDER FÁCILMENTE, ESTE INCLUYE EL DOMINIO RAIZ, DE NIVEL
SUPERIOR, DE NIVEL SECUNDARIO.
DOMINIO:
SUB-ARBOL DEL ESPACIO DEL NOMBRE DE DOMINIO, U
DOMINIO ES TODO LO QUE ESTA DEBAJO DEL NODO DEL DOMINIO.
ESTÁNDARES PARA DENOMINACIÓN DE DNS:
LOS ESTANDARES
ADMITEN UN SUBCONJUNTO LIMITADO DEL JUEGO DE CARÁCTERES ASCII
PARA DNS, EN EL RFC 1123 SE ESPECIFICAN COMO VÁLIDOS PARA NOMBRES
DNS:
A-Z
A-Z
0-9
GUIÓN(-)
REENVIADOR DNS:
UN
REENVIADOR ES UN SERVIDOR DE SISTEMA DE NOMBRES DE DOMINIO (DNS) DE
UNA RED QUE SE UTILIZA PARA REENVIAR CONSULTAS DNS PARA NOMBRES DNS
EXTERNOS A SERVIDORES DNS QUE SE ENCUENTRAN FUERA DE LA RED. TAMBIÉN
SE PUEDEN ENVIAR CONSULTAS SEGÚN NOMBRES DE DOMINIO ESPECÍFICOS
UTILIZANDO REENVIADORES CONDICIONALES.
UN SERVIDOR DNS DE UNA RED SE DESIGNA COMO REENVIADOR HACIENDO QUE LOS DEMÁS SERVIDORES DNS DE LA RED LE REENVÍEN LAS CONSULTAS QUE NO PUEDEN RESOLVER LOCALMENTE
ARCHIVOS DE CONFIGURACIÓN DEL DNS:
EL ARCHIVO DE
CONFIGURACIÓN DEL DNS ES /ETC/BIND/NAMED.CONF, PERO ESTE HACE
REFERENCIA A OTROS COMO POR EJEMPLO:
-NAMED.CONF:
ARCHIVO
PRINCIPAL DE CONFIGURACIÓN.
-NAMED.CONF.OPTIONS:
OPCIONES GENÉRICAS.
-NAMED.CONF.LOCAL:
ESPECIFICACIÓN PARTICULAR DE ESTE
SERVIDOR DNS.
-DB.127
:
ESPECIFICACIÓN DIRECCIÓN DE RETORNO.
-DB.ROOT:
DNSS DE NIVEL SUPERIOR.
DIFERENCIA ENTRE ZONA Y DOMINIO:
EL DOMINIO ES UN
SUBÁRBOL DEL ESPACIO DE NOMBRES DE DOMINIO, ES DECIR, UN NODO CON
TODOS LOS NODOS POR DEBAJO DE ÉL, MIENTRAS QUE LAS ZONAS SON
UN ARCHIVO QUE CONTIENE DETERMINADOS REGISTROS DE LA BASE DE
DATOS DEL ESPACIO DE NOMBRES DE DOMINIO.
ROOT HINTS:
(ARCHIVO DE
SUGERENCIAS DE RAÍZ), CONTIENEN INFORMACIÓN DE HOST QUE SE NECESITA
PARA RESOLVER NOMBRES FUERA DE LOS DOMINIOS DNS AUTORITATIVOS,
CONTIENE LOS NOMBRES Y DIRECCIONES DE LOS SERVIDORES DNS RAÍZ, SI LA
RED ESTA CONECTADA A INTERNET, EL ARCHIVO ROOT HINTS DEBE
CONTENER LOS REGISTROS DE LOS SERVIDORES DNS RAÍZ DE INTERNET.
SI LA RED NO ESTA
CONECTADA A INTERNET DEBE REEMPLAZAR EL NS Y REGISTROS A EN EL
ARCHIVO DE CACHÉ CON NS Y REGISTROS PARA LOS SERVIDORES DNS QUE
TIENEN AUTORIDAD PARA LA RAÍZ DE SU PARTICULAR RED TCP/IP.
POR EJEMPLO SUPONGA QUE A CREADO DOS SERVIDORES DNS INTERNOS , CREE UN ARCHIVO DE SUGERENCIAS DE RAÍZ EN OTROS SERVIDORES DNS DE LA RED, APUNTANDO A LOS SERVIDORES DNS RAÍZ INTERNOS, DE ESTA FORMA, SI OTROS SERVIDORES DE NOMBRES RECIBEN UNA CONSULTA QUE NO PUEDE RESOLVER, SIMPLEMENTE PUEDEN CONSULTAR LOS SERVIDORES RAÍZ INTERNOS ESPECIFICADOS EN EL ARCHIVO.
TIPOS DE CONSULTA:
CONSULTA ITERATIVA:
UNA CONSULTA
ITERATIVA ES AQUÉLLA EFECTUADA A UN SERVIDOR DNS EN LA QUE EL
CLIENTE DNS SOLICITA LA MEJOR RESPUESTA QUE EL SERVIDOR DNS PUEDE
PROPORCIONAR SIN BUSCAR AYUDA ADICIONAL DE OTROS SERVIDORES DNS. EL
RESULTADO DE UNA CONSULTA ITERATIVA SUELE SER UNA REFERENCIA A OTRO
SERVIDOR DNS DE NIVEL INFERIOR EN EL ÁRBOL DNS .
UNA CONSULTA
RECURSIVA ES AQUÉLLA REALIZADA A UN SERVIDOR DNS, EN LA QUE EL
CLIENTE DNS SOLICITA AL SERVIDOR DNS QUE PROPORCIONE UNA RESPUESTA
COMPLETA A LA CONSULTA, EL SERVIDOR DNS COMPRUEBA LA ZONA DE BÚSQUEDA
DIRECTA Y LA CACHÉ PARA ENCONTRAR UNA RESPUESTA A LA CONSULTA FUERA DE SUS SERVIDORES DE DOMINIO .
TRANSFERENCIA
DE ZONAS
TERMINO
UTILIZADO PARA REFERIRSE AL PROCESO POR EL QUE SE COPIA EL CONTENIDO
DE UN ARCHIVO DE ZONA DNS DE UN SERVIDOR DNS PRINCIPAL A UN SERVIDOR
DNS SECUNDARIO.
SE
PRODUCIRÁ UNA TRANSFERENCIA DE ZONAS DURANTE CUALQUIERA DE LOS
SIGUIENTES ESCENARIOS:
- AL INICIAR EL SERVIDOR
DNS EN EL SERVIDOR DNS SECUNDARIO.
- CUANDO CADUQUE EL
MOMENTO DE ACTUALIZACIÓN.
- CUANDO LOS CAMBIOS SE
GUARDAN EN EL ARCHIVO.
LAS TRANSFERENCIAS DE
ZONAS SIEMPRE SE INICIAN POR EL SERVIDOR DNS SECUNDARIO. EL SERVIDOR
DNS PRINCIPAL SIMPLEMENTE RESPONDE A LA SOLICITUD DE UNA
TRANSFERENCIA DE ZONA DE
ZONA PRINCIPAL Y HAY UNA LISTA DE NOTIFICACIÓN
SI TENEMOS UN
SERVIDOR EN UN ORDENADOR Y QUEREMOS QUE SE
PUEDA ACCEDER A ESE SERVIDOR A TRAVÉS DE UN NOMBRE DE DOMINIO
TENEMOS QUE CONFIGURAR UNA ENTRADA DNS ASOCIADA A LA IP DE ESE
SERVIDOR. PERO, ¿QUÉ PODEMOS HACER SI EL SERVIDOR TIENE IP DE
INTERNET DINÁMICA?
PARA ESTO VISITE LA ENTRADA SERVICIO DDNS
Suscribirse a:
Entradas (Atom)