¿Existe algún riesgo de seguridad al agregar una clave pública ** de raíz ** a las claves_ autorizadas del usuario local (por lo tanto, root para iniciar sesión como usuario de forma no interactiva?)

2

Fondo:

Quiero probar los contenedores lxc sin privilegios y probar mi pequeño servidor web (que aloja a 2-4 usuarios). Dado que el servidor se comparte entre amigos, decidimos separar nuestros servicios de la máquina mediante contenedores livianos. Prevemos que cada usuario ejecutará una gran cantidad de contenedores no privilegiados para cada servicio suyo con una opción, que los contenedores de servicios / lxc seleccionados se iniciarán al iniciar el sistema.

En circunstancias normales, uno simplemente usaría la stanza setuid y setgid para ejecutar los contenedores lxc en el contexto de cada usuario. Desafortunadamente no funciona; Sospecho que tiene algo que ver con los requisitos subuid de los contenedores sin privilegios. Los comandos como sudo -u <user> -- lxc-autostart o su -l <user> -c lxc-autostart no pueden cambiar las propiedades subuid de la entidad llamante (que es raíz en caso de reinicio).

Hasta ahora, La única forma de llamar a contenedores sin privilegios desde otra cuenta que encontré es mediante ssh <user>@localhost lxc-autostart .

La pregunta reformulada

Puedo poner dicha invocación en el script upstart, pero para que funcione necesito generar un certificado público para la raíz, y asegurarme de que <user> acepte el registro automático de upstarts ' root . ¿Es seguro?

El host es 64bit Ubuntu 14.04; ya usa ssh. En cuanto a las mejores prácticas de Ubuntu, no hay una contraseña para la raíz y la raíz tiene un .ssh/authorized_keys vacío.

No <user> con contenedores lxc automáticos utiliza ecryptfs (A.K.A. encriptado en casa), ya que sería inútil de todos modos en dicha configuración.

    
pregunta Adam Ryczkowski 08.01.2015 - 19:11
fuente

1 respuesta

1

No, por el siguiente motivo: root podría aplicar un parche a sshd para que siempre intente con el archivo authorized_keys del root, así como con el suyo propio.

Por supuesto, si la clave privada de root se roba, tendrá un mal día. No permitas eso. Sería mucho más feliz si la clave privada de la raíz solo existiera en / root en el servidor.

Si alguien puede convertirse en root, puede robarlo, pero eso no tiene importancia porque pueden hacerlo mucho peor. Por ejemplo, parche sshd para tomar una clave autorizada codificada para cualquier cuenta.

    
respondido por el Joshua 29.04.2016 - 19:48
fuente

Lea otras preguntas en las etiquetas