Discussion:
Limitar comandos a un usuario
(demasiado antiguo para responder)
Roberto Leon Lopez
2024-12-23 10:20:02 UTC
Permalink
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser sustituido por una cuenta paralela para tareas administrativas, sin usar nunca root ni ninguna cuenta genérica.

Se ha mencionado el uso de lshell, una shell que permite limitar los comandos que puede ejecutar un usuario que tenga una función ocasional de administrador muy concreta y para mitigar posibles daños. Ya no hay paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir el control deseado?
Parodper
2024-12-23 12:50:01 UTC
Permalink
Post by Roberto Leon Lopez
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser sustituido por una cuenta paralela para tareas administrativas, sin usar nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los comandos que puede ejecutar un usuario que tenga una función ocasional de administrador muy concreta y para mitigar posibles daños. Ya no hay paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir el control deseado?
No soy yo un experto, pero que yo sepa sudo ya permite configurar que
usuarios pueden ejecutar qué comandos. También podrías limitarlo
cambiando los permisos de grupo de los binarios.
Marco
2024-12-23 16:40:01 UTC
Permalink
Para eso existe Sudo, durante muchos años Debian se caracterizo por su
comunidad de usuarios con buen nivel de conocimiento e investigación, SUDO
es cultura general.

su y sudo
 no son cuentas, que es eso de cuentas paralelas?
 lo que
necesitan es un perfilado de usuarios


No importa que comando o paquete utilicen, siempre dependerá de sudo a
menos que se cargue como un modulo de kernel y eso es mas que sudo!,
Marco
Post by Roberto Leon Lopez
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser
sustituido por una cuenta paralela para tareas administrativas, sin usar
nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los
comandos que puede ejecutar un usuario que tenga una función ocasional de
administrador muy concreta y para mitigar posibles daños. Ya no hay
paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir
el control deseado?
No soy yo un experto, pero que yo sepa sudo ya permite configurar que
usuarios pueden ejecutar qué comandos. También podrías limitarlo
cambiando los permisos de grupo de los binarios.
Roberto Leon Lopez
2024-12-31 14:50:01 UTC
Permalink
Para el Esquema Nacional de Seguridad las primeras auditorías ya nos impusieron el uso de cuentas específicas de administrador. Para una certificación del Reino Unido llamada CyberEssentials también se nos impone las cuentas de administrador separadas de las que no tiene privilegios. Eso no es nada nuevo y lo comprendo.

Aquí la cuestión es separar y tener medidas de contención, han comentado SELinux que desde luego es el método más complejo y es una gestión adicional. Además me preocupa la implementación que haga Debian.

Yo tampoco entiendo por qué el auditor específicamente nos indica que su y sudo no son suficientes, aunque en el aspecto técnico de sudo además aparecen deficiencias que se pueden leer en este hilo: https://forums.freebsd.org/threads/poettering-announces-tool-in-new-systemd-version-to-replace-sudo.93389/ Los chicos de FreeBSD optaron por reducir el grado de exposición y como buena filosofía que tiene en lugar de tirarlo todo y venir con algo nuevo lo que hicieron fue reducir y simplificarlo creando “doas".

Por ahora estamos peleando una combinación de cuentas sin privilegios con sus grupos de permisos, más la cuenta con privilegio pero no el root total sino sólo lo que necesiten mediante grupos de permisos, y esperemos que vean un simple `su - usuario_Adm` como suficiente.

Gracias.
Para eso existe Sudo, durante muchos años Debian se caracterizo por su comunidad de usuarios con buen nivel de conocimiento e investigación, SUDO es cultura general.
su y sudo
 no son cuentas, que es eso de cuentas paralelas?
 lo que necesitan es un perfilado de usuarios
No importa que comando o paquete utilicen, siempre dependerá de sudo a menos que se cargue como un modulo de kernel y eso es mas que sudo!,
Marco
Post by Parodper
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser sustituido por una cuenta paralela para tareas administrativas, sin usar nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los comandos que puede ejecutar un usuario que tenga una función ocasional de administrador muy concreta y para mitigar posibles daños. Ya no hay paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir el control deseado?
No soy yo un experto, pero que yo sepa sudo ya permite configurar que
usuarios pueden ejecutar qué comandos. También podrías limitarlo
cambiando los permisos de grupo de los binarios.
Trujo
2025-01-01 09:20:01 UTC
Permalink
Post by Roberto Leon Lopez
Para el Esquema Nacional de Seguridad las primeras auditorías ya nos impusieron el uso de cuentas específicas de administrador. Para una certificación del Reino Unido llamada CyberEssentials también se nos impone las cuentas de administrador separadas de las que no tiene privilegios. Eso no es nada nuevo y lo comprendo.
Aquí la cuestión es separar y tener medidas de contención, han comentado SELinux que desde luego es el método más complejo y es una gestión adicional. Además me preocupa la implementación que haga Debian.
Yo tampoco entiendo por qué el auditor específicamente nos indica que su y sudo no son suficientes, aunque en el aspecto técnico de sudo además aparecen deficiencias que se pueden leer en este hilo: https://forums.freebsd.org/threads/poettering-announces-tool-in-new-systemd-version-to-replace-sudo.93389/ Los chicos de FreeBSD optaron por reducir el grado de exposición y como buena filosofía que tiene en lugar de tirarlo todo y venir con algo nuevo lo que hicieron fue reducir y simplificarlo creando “doas".
Por ahora estamos peleando una combinación de cuentas sin privilegios con sus grupos de permisos, más la cuenta con privilegio pero no el root total sino sólo lo que necesiten mediante grupos de permisos, y esperemos que vean un simple `su - usuario_Adm` como suficiente.
Gracias.
Para eso existe Sudo, durante muchos años Debian se caracterizo por su comunidad de usuarios con buen nivel de conocimiento e investigación, SUDO es cultura general.
su y sudo
 no son cuentas, que es eso de cuentas paralelas?
 lo que necesitan es un perfilado de usuarios
No importa que comando o paquete utilicen, siempre dependerá de sudo a menos que se cargue como un modulo de kernel y eso es mas que sudo!,
Marco
Post by Parodper
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser sustituido por una cuenta paralela para tareas administrativas, sin usar nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los comandos que puede ejecutar un usuario que tenga una función ocasional de administrador muy concreta y para mitigar posibles daños. Ya no hay paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir el control deseado?
No soy yo un experto, pero que yo sepa sudo ya permite configurar que
usuarios pueden ejecutar qué comandos. También podrías limitarlo
cambiando los permisos de grupo de los binarios.
Realmente las cosas se complican bastante y no estaria mal algo que complemente a su y sudo, un ejemplo.
Estoy implementando el acceso a base de datos (maruadb), usando usuarios de ldap (AD), esto se hace con PAM, pero como el acceso al sistema ya estaba configurado en el sssd solo para los usuarios del grupo adm, los nuevos usuarios no tienen acceso, hay que permitirle el acceso en el sssd y tocsr el sshd para que no les de acceso, es decir hay que meter en la ecuación cosas que no esran directamente afectadas, por esto es por lo que vendria muy bien alguna herramienta de gestión "integral" que facilite la configuración de todos los elementos, incluido el impresindible sudo.
Osvaldo Salazar
2024-12-23 14:40:01 UTC
Permalink
Usa SELinux.

Una demo de lo que pides se ve en


El lun, 23 dic 2024 a las 7:47, Roberto Leon Lopez (<
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser
sustituido por una cuenta paralela para tareas administrativas, sin usar
nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los
comandos que puede ejecutar un usuario que tenga una función ocasional de
administrador muy concreta y para mitigar posibles daños. Ya no hay
paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir
el control deseado?
--
*Atte.Osvaldo R. Salazar S."Vive bien, vive con honestidad"*
www.salazarysanchez.com
Camaleón
2025-02-28 16:00:01 UTC
Permalink
Post by Roberto Leon Lopez
Por requisitos de una auditoria el uso de “su" y “sudo" debe ser sustituido por una cuenta paralela para tareas administrativas, sin usar nunca root ni ninguna cuenta genérica.
Se ha mencionado el uso de lshell, una shell que permite limitar los comandos que puede ejecutar un usuario que tenga una función ocasional de administrador muy concreta y para mitigar posibles daños. Ya no hay paquetes en Debian para lshell, ¿hay alguna otra alternativa para conseguir el control deseado?
El concepto de una shell limitada (como «lshell») lo veo más adecuado
para tu propósito.

Mira a ver si este artículo ta da alguna idea:

How to Use Restricted Shell to Limit What a Linux User Can Do
https://www.howtogeek.com/718074/how-to-use-restricted-shell-to-limit-what-a-linux-user-can-do/

Y también puedes retomar el uso de lshell, parece que hay un proyecto
actualizado en GitHub¹ (última actividad de hace 3 meses, 18
contribuidores...), basado en Python (se instala con PiP):

****
https://github.com/ghantoos/lshell

lshell is a shell coded in Python, that lets you restrict a user's
environment to limited sets of commands, choose to enable/disable any
command over SSH (e.g. SCP, SFTP, rsync, etc.), log user's commands,
implement timing restriction, and more.
****

El bug de Debian con la eliminación del paquete ():

RM: lshell -- RoQA; unmaintained, open security issues
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=862302

¹Parece que es el proyecto original (última versión 0.10, 2024).
https://github.com/ghantoos/lshell/blob/master/CHANGELOG.md

Saludos,
--
Camaleón
Loading...