| Kriptópolis alojado en |
| Zilos-Veloxia Network |
| Tu mejor defensa: |
| Bufet Almeida |
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:



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