¿Cómo puedo hacer que todo suponga que me estoy ejecutando como superusuario?

10

¿Hay alguna manera de hacer que las cosas supongan que cuando las ejecuto las estoy ejecutando como administrador privilegiado (raíz de AKA)? Sé que podría ser peligroso y todo, pero es un riesgo que estoy dispuesto a asumir en nombre de la conveniencia.

Jon
fuente
No hagas esto. Romperá su sistema (además de exponer su máquina a ataques). Lea unix.stackexchange.com/questions/1052/…
MarkovCh1
Pero si aún desea ejecutar aplicaciones específicas como root, consulte wiki.archlinux.org/index.php/Sudo
MarkovCh1
1
Jon, hice retroceder tu edición. Incluso si no lo va a hacer, la pregunta / respuesta sigue siendo útil para cualquiera que esté considerando esto. Para mantener esta página útil, la pregunta debe permanecer, o los nuevos visitantes solo verán "pregunta retirada" seguida de una respuesta a una pregunta que no pueden ver :)
Cesium
2
No debería ser votado hacia abajo ya sea por la misma razón
Mark Rooney
2
Sí, es una excelente pregunta. Lo único estúpido aquí es no tomar el consejo en los comentarios y respuestas. +1
Tom Brossman

Respuestas:

21

Normalmente incluiría instrucciones en una respuesta, pero esta es una mala idea. Te señalaré un par de lugares para leer sobre cómo hacer esto. Lo puedes tomar de ahí. Tenga en cuenta que cuando rompa su sistema, puede publicar aquí nuevamente para obtener ayuda, pero la gente se reirá y sacudirá la cabeza y hará referencia a errores de pebkac , etc.

Primero, la página de ayuda de Ubuntu en Root / sudo. Tenga en cuenta las tres advertencias grandes y prominentes.

Aquí hay un usuario de Ubuntu Forums que hizo algo así y no pudo arreglar su sistema.

Mantenga copias de seguridad de sus datos si lo hace, y tenga en cuenta la conveniencia de la seguridad comercial para mayor comodidad. Tal vez poner un viejo álbum de Dead Kennedys mientras reinstalas ...

Tom Brossman
fuente
3

Si solo está interesado en cosas específicas que se ejecutan como root, el bit setuid es la característica adecuada.

Al configurar este bit, el programa se ejecutará con los permisos de su propietario. Por lo tanto, puede tomar un programa, cambiar su propietario a root, configurar su bit setuid, y ese programa se ejecutará como root sin intervención especial.

Algunos programas en Ubuntu están configurados de manera predeterminada, por ejemplo, ping

> ls -l `which ping`
-rwsr-xr-x 1 root root 35712 2011-05-03 11:43 /bin/ping

Este programa debe ejecutarse como root porque solo el root puede abrir un puerto por debajo de 1024 para escuchar, que es necesario para escuchar los paquetes de retorno.

Como se señaló, permitir los permisos de raíz de los programas de forma predeterminada es peligroso y, por lo general, está reservado para programas simples y bien auditados: cualquier programa que pueda explotarse como resultado de una entrada externa correrá el riesgo de exponer todo su sistema a un compromiso, en lugar de solo aquellas áreas a las que tiene acceso su cuenta de usuario.

Adrian
fuente
No relacionado:: suspiro: Seguridad de Unix: debe regalar todo el sistema para abrir un puerto de escucha. ¿Cómo funciona eso? Nadie corre, por ejemplo, apache como root ...
Billy ONeal
1
Creo que Apache lo maneja generando procesos secundarios con UID menos privilegiados y solo iniciando un proceso maestro que abre el puerto 80 como root. Los procesos secundarios manejan todas las solicitudes de los usuarios. Creo que otro patrón común es que los procesos comenzarán setuid root, y luego usarán setuid para cambiar a un usuario limitado tan pronto como hayan adquirido los recursos que necesitan root para usar; unixwiz.net/techtips/chroot-practices.html
Adrian el
1

Por favor no hagas eso. No solo te lastimas a ti mismo, sino que también lastimas a los demás. Ya hay suficientes zombies, spambots y hosts DDoS.

Jo-Erlend Schinstad
fuente