Concediendo privilegios de superusuario en FreeBSD

Viniendo del mundo GNU/Linux resulta algo extraño el sistema que utiliza FreeBSD para permitir que un usuario común se convierta temporalmente en superusuario a fin de realizar determinadas tareas.

En la mayoría de distribuciones GNU/Linux basta teclear el comando su para que se nos pida la contraseña de root y obtengamos de inmediato su prompt y los permisos correspondientes. O bien utilizamos sudo para realizar ciertas tareas reservadas a root.

En FreeBSD, sin embargo, veremos que ni uno ni otro sistema funcionan... al menos hasta que no decidamos hacer algo al respecto...

Por defecto, FreeBSD sólo permite acceso root a usuarios incluidos en el grupo wheel, un grupo reservado para tareas de administración al que inicialmente sólo pertenece el propio root. Por tanto, si queremos que nuestro usuario "pepe" pueda tener permisos de superusuario, una buena manera es "loguearnos" como root y agregar "pepe" al grupo wheel.

En primer lugar comprobamos si ya está incluido:

# pw showgroup wheel
wheel:*:root

No, no está. Para añadirlo:

# pw user mod pepe -G wheel

Comprobamos de nuevo si "pepe" está en el grupo wheel:

# pw showgroup wheel
wheel:*:root,pepe

Ahora sí; ya podemos usar nuestra cuenta "pepe" y con un simple su (+ contraseña) obtener privilegios de root cuando los necesitemos. Al finalizar las operaciones debemos abandonar la cuenta root tecleando exit (o Ctrl-D).

 

El grupo wheel

No me resisto a comentar la curiosa explicación que subyace a la existencia del grupo wheel en BSD y otros Unix, mientras que en muchos GNU/Linux ese grupo no está activo o simplemente no existe.

La clave parece estar en un párrafo de Richard Stallman, que reproduzco a continuación:

 

Why GNU `su' does not support the `wheel' group
===============================================

(This section is by Richard Stallman.)

Sometimes a few of the users try to hold total power over all the rest. For example, in 1984, a few users at the MIT AI lab decided to seize power by changing the operator password on the Twenex system and keeping it secret from everyone else. (I was able to thwart this coup and give power back to the users by patching the kernel, but I wouldn't know how to do that in Unix.)

However, occasionally the rulers do tell someone. Under the usual `su' mechanism, once someone learns the root password who sympathizes with the ordinary users, he or she can tell the rest. The "wheel group" feature would make this impossible, and thus cement the power of the rulers.

I'm on the side of the masses, not that of the rulers. If you are used to supporting the bosses and sysadmins in whatever they do, you might find this idea strange at first.

Así que ya sabéis: el grupo "wheel" cimenta el poder de los que mandan. Stallman dixit.

 

Referencias:

Comentarios

Selecciona arriba tu forma preferida de visualizar
los comentarios y pulsa el botón para guardar tus
preferencias. Éstas sólo se recordarán para tus
próximas visitas si eres usuario registrado.

Gentoo

Por lo menos Gentoo también dispone de este sistema por defecto, y por lo menos en Gentoo no es que no permita hacerse superusuario, si no que no permite cambiar la id de usuario, por ejemplo no puedes hacer `su pepe'.

Bueno, en realidad te deja hacerlo, pero aunque introduzcas bien la contraseña te da error.

si, en gentoo

si, en gentoo funciona exactamente igual, si no estas en el grupo wheel no puedes loguear como root

Gentoo lo tiene hace mucho

Opino lo mismo que el comentario anterior.

Yo use gentoo durante algo mas de 4 años y estoy mas que acostumbrado al grupo wheel (use gentoo desde la 1.4). No estoy seguro si ya la 1.4 lo traia por defecto, pero sino es asi lo recuerdo hace mucho.

Eso si, recuerdo que el wheel era para que pudieses hacer el comando "su" desde tu usuario sin privilegios. Pero si activabas el "sudo" y añadias a los usuarios que quisieses a sus conig, creo que no necesitabas añadir a los usuarios al grupo wheel (no estoy muy seguro de esto).

P.D.: Ahora estoy en OS X desde hace 1 año, pero regresare algun dia a mi querido gentoo muahaha :D.

Estoy casi de acuerdo

En general me gustan las cosas que dice Stallman, pero creo que en este aspecto se le va un poco la olla.

Cimentar el poder de los que mandan no es malo, cuando "los que mandan" soy yo :-) Al menos en lo que se refiere a mi ordenador. Y cualquiera que haya sido administrador de un sistema multiusuario sabe muy bien que dar el poder a las masas es dejar que te joxxx el sistema a la primera de cambio: mala idea. No soy partidario de restringir las posibilidades al máximo, pero hace falta un poco de disciplina, lo siento.

Al añadir el usuario

Muy cierto el comentario sobre gentoo del usuario anónimo.

Cuando realizas " pw user mod pepe -G wheel" creo que mejor deberías hacer " pw user mod pepe -aG wheel", lo digo porque deduzco que es igual al usermod de gnu y sin el parámetro a lo que hace es meter al usuario en los grupos que le pasas al comando y lo quita de todos los demás donde estuviera y con -a mantiene los grupos anteriores.

Yo suelo hacer " usermod -aG grupo1,grupo2" ya que si se quiere poner el parámetro -a después del -G hay que hacer " usermod -G grupo1,grupo2 -a" ya que -G espera justo después los grupos a los que te vas a referir.

-------------------------
http://warsaw.sytes.net/

Pero hasta donde yo sé...

En BSD no existe el parámetro -a (ver man pw), así que habría que listar todos los grupos a que pertenezca ese usuario separados por comas.

Una pregunta para admin

Al principio te "peleaste" con varios BSD. Luego encontraste DesktopBSD y "te lo quedaste". Más tarde comentas que DesktopBSD no es más que FreeBSD.

Ahora en las entradas te refieres a FreeBSD.

La pregunta es ¿volviste a instalar Free o dejaste Desktop pero le llamas Free?

Peibol

Curiosón ;)

De momento he dejado DesktopBSD en el ordenador de escritorio y en el portátil instalé OpenBSD, después DesktopBSD y al final (¿de momento?) acabé poniendo FreeBSD 7.0.

DesktopBSD facilita las cosas

DesktopBSD facilita las cosas y el instalador parece que mete al usuario principal al grupo wheel en la misma instalación del sistema.

Por cierto, me suena que Debian también dispone del grupo wheel, pero no estoy muy seguro.

Debian no

Debian no tiene grupo wheel.

Opinar

Salvo circunstancias especiales LOS COMENTARIOS DE ESTE SITIO SERÁN MODERADOS.

Como norma general, en este sitio NO SE PUBLICARÁN aquellos comentarios que incluyan datos personales, ni direcciones de correo, ni ninguna otra forma de establecer contactos privados o comerciales. Tampoco los que no se ajusten al tema, a la netiqueta, la ortografía o la educación, así como los comentarios ofensivos o claramente publicitarios, los que no aporten nada a la discusión o los que pretendan suplantar a terceras personas.

En cualquier caso los comentarios publicados en este sitio expresan sólo la opinión de su autor, quien será el único responsable -incluso ante la Ley- de los mismos. La publicación de cualquier comentario no supone en absoluto la conformidad del responsable de este sitio con su contenido.

Para poder enviar tus comentarios no necesitas ningún registro, pero has de permitir las cookies del sitio. Sólo si deseas disponer de un alias permanente has de registrarte.

Si no aceptas estas condiciones, por favor, absténte de participar en los debates. Muchas gracias

Kriptópolis, 21 de noviembre de 2008.

  • Etiquetas HTML permitidas: <a> <em> <strong> <ul> <ol> <li> <p> <u> <br><strike> <blockquote> <div>

Más información sobre las opciones de formato...

CAPTCHA
Esta prueba busca evitar la entrada de mensajes basura automatizados. Muchas gracias por tu colaboración.
5 + 13 =
Resuelve esta sencilla operación e introduce el resultado.