No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Control de Accesos y Permisos en Linux: Buenas Prácticas

7/16
Recursos

¿Qué es el control de accesos en Linux?

Sumergirse en el mundo de Linux es aprender a ver todo como un objeto, ya que, según Linux, todo, incluso los archivos, son considerados objetos. La base para controlar quién tiene acceso a qué en este sistema reside en el procedimiento de permisos que se otorgan según el usuario. Entender cómo se manejan estos permisos es esencial para mantener la seguridad y el buen funcionamiento de un entorno Linux.

¿Cómo interpreta Linux los permisos?

Linux asigna permisos a los usuarios con el fin de definir qué acciones pueden realizar ciertos objetos, como la ejecución de archivos o la lectura de información. El creador de cualquier archivo u objeto en Linux es su dueño, lo que otorga el control sobre dichos objetos. Sin embargo, el root es la excepción, ya que tiene acceso ilimitado a cualquier objeto creado por otros usuarios. Esto puede ser ventajoso cuando se maneja con una cuenta segura, pero también representa un riesgo potencial si no se emplea adecuadamente, ya que puede realizar configuraciones críticas como la modificación de usuarios o archivos fundamentales del sistema.

¿Cuáles son las buenas prácticas de control de accesos en Linux?

  1. Uso responsable de la cuenta root:

    • Limitar el acceso directo a ser absolutamente necesario.
    • Iniciar sesión como root sólo a través de SSH con llaves configuradas adecuadamente.
  2. Gestión de permisos de administrador:

    • Otorgar privilegios de administrador solo a usuarios necesarios.
    • Periódicamente, revocar estos permisos si ya no se necesitan.
  3. Uso de sudo:

    • Preferir el uso de sudo para conceder permisos administrativos temporales.
    • Esto mitiga riesgos de modificación no autorizada, reduciendo el potencial de daños.
  4. Mantener prácticas de seguridad:

    • Protegerse del escalamiento de privilegios y otras posibles vulnerabilidades.
    • Considerar la implementación de un proceso llamado Hardening en servidores Linux para mejorar la seguridad.

Adoptando estas prácticas, se fomenta un ambiente Linux más seguro y robusto, reduciendo las posibilidades de acceso no autorizado o alteración de configuraciones críticas.

¿Cómo se revocan permisos en Linux?

Cuando un usuario ya no necesita permisos de administrador, es crucial revocarlos para mantener la seguridad del sistema. Esto se logra eliminándolos del grupo de sudoers o sudo. En algunas distribuciones basadas en Red Hat, como CentOS o Fedora, es posible que encuentres grupos equivalentes bajo el nombre wheel.

Implementar estas prácticas de control de accesos no solo asegura un sistema más seguro, sino que también garantiza un control adecuado del acceso a información y recursos críticos dentro de Linux. La educación y la práctica continua en estos temas son fundamentales para todo administrador de sistemas Linux.

Aportes 9

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Por si acaso.
El hardening es un conjunto de procesos que consisten en configurar de manera segura un sistema informático, en nuestro caso Linux.
En otras palabras, implica que dicho sistema cuente con buenas prácticas a la hora de darle privilegios a los usuarios, establecer contraseñas, métodos de detección y eliminación de amenazas, etc.

Si quieren algo mas complejo que sudo puede usar polkit, que se utiliza usualmente para sesiones de escritorio, te permite registrar acciones especificas a traves de archivos xml o reglas (en javascript) para tener un control mas programable.

El comando es pkexec pero es mejor invocarlo a travez de dbus para registrar el tipo de accion que se realiza y el agente.

Resumen

Para Linux todo es un “objeto”

Control de accesos

  • Depende del usuario y las acciones que quiera realizar (permitidas o denegadas).
  • Quien crea el “objeto” es dueño de él.
  • La cuenta root puede acceder a cualquier objeto que quiera de las demás cuentas.
  • Solo la cuenta root puede hacer ciertas operaciones sensibles.


Buenas prácticas

  • No acceder directamente desde la cuenta root, mejor usar su.
  • Otorgar permisos de administrador solo a los usuarios necesarios y revocar accesos después de cierto tiempo.

El control de acceso en Linux se refiere al conjunto de medidas y configuraciones utilizadas para gestionar y regular el acceso a recursos y funciones del sistema operativo Linux. El objetivo principal del control de acceso es proteger la integridad, la confidencialidad y la disponibilidad de los datos y recursos del sistema.

En Linux, el control de acceso se implementa a través de varios mecanismos y componentes. A continuación, se presentan algunos de los principales:

_

  • Permisos de archivos: Linux utiliza un sistema de permisos de archivos basado en usuarios, grupos y otros. Los permisos de lectura, escritura y ejecución se asignan a propietarios, grupos y otros usuarios, lo que determina qué acciones pueden realizar en un archivo o directorio.

_

  • Control de usuarios: Linux administra los usuarios a través de cuentas de usuario individuales. Los administradores pueden crear y eliminar cuentas de usuario, asignar contraseñas y definir los permisos y privilegios asociados a cada cuenta.

_

  • Control de grupos: Los grupos en Linux permiten organizar y administrar usuarios con características y permisos similares. Los archivos y directorios pueden estar asignados a un grupo específico, lo que permite que los miembros de ese grupo compartan acceso a esos recursos.

_

  • Directivas de seguridad: Linux admite la implementación de directivas de seguridad a través de herramientas como SELinux (Security-Enhanced Linux) o AppArmor. Estas herramientas permiten especificar reglas detalladas sobre qué acciones están permitidas o restringidas para procesos y aplicaciones específicas.

_

  • Firewall: Linux incluye herramientas de firewall, como iptables o nftables, que permiten controlar las conexiones de red entrantes y salientes, lo que ayuda a proteger el sistema de posibles amenazas externas.

_

  • Autenticación y autorización: Linux utiliza sistemas de autenticación para verificar la identidad de los usuarios, como el uso de contraseñas o autenticación de clave pública. La autorización se basa en la asignación de permisos y privilegios específicos a usuarios y grupos.

_
Estas son solo algunas de las medidas de control de acceso en Linux. El control de acceso es un aspecto fundamental de la seguridad en el sistema operativo y su implementación adecuada contribuye a proteger los recursos del sistema contra accesos no autorizados.
_
Fuente: ChatGPT.

control de acceso
Listas de control de acceso (ACL, Access Control List) es una de las herramientas de Linux, que en su mayoría pocas veces es ocupada por parte de los usuarios medios e incluso para la mayoría de usuarios avanzados ya que las posibilidades que nos ofrecen el sistema de permisos y propietario estándar es más que suficiente. No obstante, conviene conocer el sistema de listas de control de acceso que nos permite extender estos permisos a nivel de ficheros y directorios.

Estas ACL permiten definir permisos concretos para un determinado usuario o grupo en ficheros y directorios, además, se asignan igual que los permisos estándar, con formato octal o simbólico (rwx). Básicamente, en caso de tener un fichero o directorio con unos permisos concretos determinados para su propietario y grupo, nos permite añadir usuarios o grupos extra con unos permisos completamente independientes a los definidos con los permisos estándar.

Listas de control de acceso •. (2018, 21 septiembre). Factor Evolución. https://www.factor.mx/portal/base-de-conocimiento/listas-de-control-de-acceso/

https://www.linuxadictos.com/buenas-practicas-de-seguridad-para-tu-distro-gnu-linux.html
En Linux, los permisos se gestionan a través de una tabla que clasifica el acceso a archivos y directorios. Cada archivo tiene un propietario y un grupo, y los permisos son representados por tres categorías: 1. **Lectura (r)**: Permite ver el contenido del archivo. 2. **Escritura (w)**: Permite modificar el archivo. 3. **Ejecución (x)**: Permite ejecutar el archivo como un programa. Los permisos se asignan a tres tipos de usuarios: - **Propietario**: Usuario que creó el archivo. - **Grupo**: Conjunto de usuarios que pueden compartir permisos. - **Otros**: Todos los demás usuarios en el sistema. La representación típica en el terminal es algo como `-rwxr-xr--`, donde: - El primer carácter indica el tipo (archivo o directorio). - Los siguientes tres caracteres representan los permisos del propietario. - Los siguientes tres son para el grupo. - Los últimos tres son para otros usuarios. Puedes cambiar los permisos utilizando el comando `chmod` y visualizar los permisos con `ls -l`.

Eso no sabia de tener buenas practicas usando un servidor. Jamas pense que siempre se debe usar la opcion de “su” para ingresar al servidor como usuario root. Lo de dar permisos a las personas necesarias. Eso si lo sabia pero es mejor recordarlo.

El proceso de Hardening es un conjunto de medidas de seguridad diseñadas para proteger un sistema informático, red o aplicación de posibles ataques y vulnerabilidades.El objetivo del Hardening es reducir la superficie de ataque y minimizar los riesgos de seguridad. A continuación, se representa algunos pasos comunes en el proceso de Hardening: 1.Analisis de vulnerabilidades:Identifica las vulnerabilidades y debilidades del sistema, utilizando herramientas como escaneaos de vulnerabilidades y análisis de codigo. 2.Configuracion de seguridad:Configurar el sistema con parametros de seguridad adecuados, como contraseñas seguras,autenticacion de dos factores y control de acceso 3.Actualizacion y parcheo:Mantener el sistema actualizado con los últimos parches y actualizaciones de seguridad 4.Desactivacion de servicios innecesarios:Desactivar servicios y protocólos innecesarios para reducir la superficie de ataque 5.Configuracion de firewalls:Configurar firewalls para controlar el trafico de red y bloquear acceso no autorizado 6.Cifrado de datos:cifrar datos sensibles para protegerlos contra acceso no autorizado 7.Monitoreo y auditoria:Monitorear y auditar el sistema para detectar posibles incidentes de seguridad 8.Formacion y conciencia:Proporcionar formación y conciencia sobre seguridad a los usuarios y administradores del sistema 9.Revision y actualización de políticas:Revisar y actualizar las políticas de seguridad para asegurarse de que se alineen con las mejores practicas y los requisitos regulatorios 10.Pruebas de penetracion:Realizar pruebas de penetracion para identificar vulnerabilidades y debilidades en el sistema El proceso de Hardening es continuo y debe ser revisado y actualizado regularmente para asegurarse de que el sistema permanezca seguro y protegido