95 votos

Es un 'OK' para usar el usuario root como usuario normal?

He habilitado el usuario root en mi Mac, de modo que yo pueda ingresar en él y ejecutar Finder, etc. Siendo la persona perezosa que soy, recién transferido todo de mi directorio home a /var/root. No estoy muy seguro de hacer esto, así que puedo pasar todo de nuevo. Es técnicamente 'ACEPTAR' para ser el uso de este como un usuario normal? (Yo soy el único que puede acceder a mi equipo).

364voto

David Richerby Puntos 2258

Utilización de su ordenador conectado como root todo el tiempo es como siempre llevar todos sus llaves, su pasaporte, $5,000 en efectivo, que pedazo de papel con todas sus contraseñas escritas en ella y la única foto que tenemos de Flopsy, la adorable conejo cuya muerte rompió el siete-año-viejo corazón. Ah, y una motosierra.

Es decir, es poderoso conveniente de vez en cuando, porque significa que usted puede hacer lo que quiera, cuando quiera, sin necesidad de volver a casa para conseguir cosas o hablar con el gerente del banco. Pero también pone en gran riesgo de perder cosas, de que lo roben (no creo que la motosierra le ayudará a: usted será calles de distancia antes de que usted note que su cartera ha ido), haciendo cosas que realmente lamentar más tarde (impulso de la compra de billetes de avión a las Vegas en estado de ebriedad), teniendo peligroso accesos directos (chainsawing león a través de la valla de cerramiento debido a que la manera más rápida de pandas) y sobre-reacción (chainsawing el coche del vecino porque su perro ladra demasiado). Y, cuando usted piensa acerca de ello, la mayoría, simplemente vas a la oficina, ir de compras, salir con tus amigos. Usted no necesita todas esas cosas con usted todo el tiempo sólo para la conveniencia de lo que se necesite, ¿qué?, una vez al mes? Una vez a la semana?

Así que no, es no ACEPTAR el uso de la root de la cuenta de todo el tiempo. Se le da una pequeña cantidad de comodidad, sino que te pone en un montón de peligro. Existe el peligro de errores estúpidos tener resultados catastróficos ("Hey, ¿por qué es rm -rf * tomando tanto tiempo para correr? **** Estoy en /!"). Existe el peligro de aclimatarse a sí mismo a la idea de que todos los archivos son iguales y sólo se puede enredar con lo que quieras, en cualquier lugar en el árbol de directorios. Existe el peligro de que cualquier hack a su cuenta de inmediato es un hack para todo el sistema, por lo que ahora cada pieza de software en su máquina está críticos para la seguridad. E incluso si usted piensa que usted no se preocupan por su máquina de llegar hackeado (después de todo, esa foto de Flopsy es una verdadera pieza de papel brillante, no efímero JPEG), he cuidado acerca de su máquina llegar hackeado porque entonces es en la red de montar el ataque DDOS en contra de cualquier servicio de internet no puede acceder hoy en día.

Root es su traje de spiderman. Se le da un gran poder, pero requiere de una gran responsabilidad. Es allí, en el armario siempre que usted necesite, de manera que usted no tendrá que usar todo el tiempo.

23voto

William T Froggard Puntos 2862

Puede, pero es una de las principales la seguridad y la estabilidad de riesgo. Esto permite a cualquier aplicación con acceso completo a su ordenador. Usted no puede saber lo que están haciendo con los que acceder. Es innecesario, y muy inseguro.

Para mucha más información sobre esto, consulte

16voto

David Mulder Puntos 291

Honestamente, estoy de acuerdo en que hay una gran cantidad de riesgos asociados con el uso de la root de usuario de forma predeterminada. Pero permítanme ejecutar a través de ellos y criticar algunos de los argumentos un poco

  • La defensa en contra de las aplicaciones: en la práctica el sistema de permisos de *nix es no es lo suficientemente fuerte (por el momento) para permitir ejecutar programas arbitrarios. Un programa malicioso en *nix es capaz de hacer bastante mal las cosas (como el robo de su banco credenciales) sin permisos de root. Va a ser un poco más difícil para un no-root aplicación de un root aplicación (por ejemplo, en lugar de directamente a la instalación de una de certificados root e interceptar la conexión con el banco tendrá que meterse con el navegador en lugar de eso, pero bueno, que en realidad es bastante factible y es probable que haya tenido para hacerlo de todas maneras para asegurarse de que el usuario no nota nada)
  • La defensa contra los errores del usuario (como la ejecución de una orden equivocada y la eliminación de todos los archivos de sistema): Absolutamente cierto, pero a pesar de que un no-root usuario va a salvar el sistema, todos los archivos importantes que normalmente se pierde ya (como el usuario de propiedad de los archivos son mucho más propensos a ser único).
  • La defensa contra explotable errores en las aplicaciones de ejecución: Ahora, esto es más como él. E. g. cuando se ejecuta un servidor web donde hay un montón de aplicaciones abiertas al exterior y por lo tanto, cualquier explotable errores se puede llegar fácilmente. El mismo todavía se aplica, por supuesto, incluso si usted está sentado detrás de un router y firewall, aunque el grado de peligro es mucho menos significativa. Una vez más, sin embargo, la pregunta se convierte en cuánto al sistema de permisos realista defender en un sistema privado. Sin root permisos de todos los archivos privados que todavía se puede acceder e interceptar los datos de la red también es posible... las dos cosas más importantes que usted puede desear como un atacante de un sistema privado.
    • (Ahora, en la parte superior de la norma *nix los permisos de los archivos del sistema de Apple también ha presentado una solicitud de sandboxing sistema. Como yo sé que todavía es completamente funcional incluso cuando se ha iniciado la sesión como root. Sin embargo, si no fuera, a continuación, que sería un total de interruptor.)

De cualquier manera, todos considerados yo no creo que sea tan terrible de una idea como algunos otros afirman. Ojo, no estoy diciendo que es una buena idea, pero creo que la gente sobreestima la utilidad de los *nix permisos del sistema de archivos de modelo en la protección de usted. Sí, es increíblemente útil para ciertas cosas (por ejemplo, sistemas multiusuario, complejo multi-servidores de aplicaciones, mantener el sistema en funcionamiento no importa lo que pase (que se ejecuta, pero no es necesario usar), bloqueo de archivos importantes (aunque es mejor que el cifrado de esos...), etc.), pero no es algo mágico y de protección que impide que las cosas malas sucedan.

En los comentarios se me ocurrió una analogía de lo que parece bastante adecuado en la descripción de la situación. En holandés tenemos una palabra para el pequeño armario donde se pueden encontrar todos los medidores y el toggle para el suministro principal de agua, etc. Como el funcionamiento root cuenta de usuario es como tomar el bloqueo que el pequeño armario. Irónico hecho: la Mayoría de la gente no tiene bloqueos en el primer lugar. Ahora, al igual que con el root de usuario que no quiere decir que no es útil para el bloqueo de distancia, en ciertos casos, por ejemplo en oficinas o otros semi-edificios públicos es a menudo bloqueada, pero en casas normales es mucho más importante tener un fuerte candado en la puerta (no instalar cosas al azar, firewall, etc.) y poner todas sus cosas importantes en una caja de seguridad (copias de seguridad, cifrado de cosas, etc.). Será un extra de bloqueo en ese armario daño? Nope, por lo que podría ser una buena idea para tener en su lugar sólo en caso de que, pero con toda probabilidad va a ser bastante inútil.

Como el funcionamiento root de usuario es nada como tomar todas las cerraduras de su casa y la realización de todas las cosas en la caja fuerte con usted todo el tiempo, como afirma David Richerby. Su pasaporte (documento de identidad) no es de ninguna manera protegidos por los *nix sistema de archivos, su dinero (cuenta bancaria) es de ninguna manera protegidos por los *nix sistema de archivos, tus contraseñas importantes son probablemente no protegidos por los *nix sistema de archivos (si usted está usando Safari sin embargo puede que en realidad protegido parcialmente por los *nix permisos del sistema de archivos del modelo, pero sin root usted todavía puede añadir un invisible extensión para Safari y el siguiente sólo interceptar la contraseña la próxima vez que lo utilice), sus fotos, definitivamente no son protegidos por los *nix sistema de archivos y si estás usando el terminal ya está la realización de una motosierra con usted (por el punto 2 anterior).

15voto

Mike Ciaraldi Puntos 111

Alrededor de la espalda de 1990, yo estaba trabajando en un proyecto con un chico llamado Tom. Estamos usando un servidor de SUN ejecución de SunOS (un derivado de Unix, predecesor de Solaris). Esto fue en los días antes de unidades de CD y unidades de memoria flash, así que si te equivocaste en el sistema operativo en el disco duro que no había manera de recuperar.

Tom se utiliza rutinariamente inicie la sesión como root. Yo le dije que era una mala idea, pero él no escucha. Un día le oí decir "Uh-oh". Él había significado para el tipo de comething como este:

mv something* .

Por desgracia dejó fuera de la final de punto, de manera que el shell se expandió a todos los nombres de archivos y directorios que coincidió con este patrón. A continuación, el comando mv utiliza lo que terminó como el último nombre en la lista como el directorio de destino, y se trasladó todo lo demás en ella. También, por desgracia, se encuentra en la root del directorio, así que, básicamente, todo el sistema de archivos nos cambiaron a uno de sus subdirectorios.

He utilizado flecha arriba para traer de vuelta el comando anterior y vieron lo que había sucedido. La primera cosa que me dijo entonces: "no cerrar sesión! O usted nunca será capaz de iniciar sesión de nuevo."

No hay problema, ¿verdad? Podríamos mover todo de nuevo. Podríamos, excepto que el comando mv no era uno de los comandos de la shell. En su lugar, se trataba de un programa ejecutable, que se almacenan en uno de los archivos que había sido trasladado. Por suerte, ls fue un comando integrado, por lo que después de usar el comando ls para verificar donde los comandos se había movido, yo era capaz de encontrar el comando mv, invoca con su nombre completo de la ruta, y poner las cosas de regreso a donde se suponía que eran.

Y entonces yo le dije, "Tom, esta es la razón por la que es una mala idea rutinaria para iniciar sesión como root."

10voto

David Anderson Puntos 2189

En general, usted quiere mantener la propiedad de sus archivos personales independientes desde el usuario root. Esta es la razón por la que usted cree una cuenta para usted como administrador. La forma aceptada, en virtud de OS X, para obtener acceso de root es el uso de la sudo comando desde la Terminal de aplicación. Por ejemplo, si desea ver la partición de la unidad interna, el comando es

gpt -r show /dev/disk0

que si se ha introducido el resultado será el siguiente mensaje de error.

gpt show: unable to open device '/dev/disk0': Permission denied

Para usar el comando, usted necesita usar sudo como se muestra a continuación.

sudo gpt -r show /dev/disk0

Si usted desea convertirse en usuario root para evitar la entrada de sudo, sólo puede entrar en sudo sh. El exit comando se puede utilizar para salir de ser el usuario root.

Si desea ejecutar una aplicación como usuario root, puede mediante la aplicación Terminal. Por ejemplo, si desea iniciar el Finder como usuario root, escriba el siguiente comando.

sudo /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder &

Para evitar la confusión de tener dos Buscador de aplicaciones abiertas al mismo tiempo, es generalmente mejor para salir de su Buscador de aplicación primera. Esto se puede hacer utilizando el siguiente comando de terminal.

osascript -e 'tell application "Finder" to quit'

Una palabra de precaución: precede a un comando con sudo no es el mismo como ser usuario root. Por ejemplo, los comandos

sudo echo $USER
sudo echo $SUDO_USER

resultado de la misma, de salida de los comandos que se muestran a continuación.

echo $USER
echo $SUDO_USER

Si usted se convierte en el usuario root (superusuario), entonces el mismo resultado de comandos en una salida diferente. Esto puede ser verificado por introducir los comandos que se muestran a continuación.

sudo sh
echo $USER
echo $SUDO_USER
sudo echo $USER
sudo echo $SUDO_USER
exit

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X