Cómo crear un usuario y darle permisos sudo en Linux
¡Perfecto! Aquí tienes el artículo completo, optimizado para SEO y con el formato solicitado.
¿Necesitas crear un usuario nuevo en tu servidor Linux y darle permisos de administrador (sudo)? Es una de las tareas más comunes para cualquier SysAdmin, pero también puede ser un quebradero de cabeza si no conoces los comandos exactos.
No te preocupes, porque en esta guía te lo explico paso a paso, con un lenguaje sencillo y sin tecnicismos innecesarios. Al final, serás capaz de crear usuario linux, asignarle una contraseña y, lo más importante, añadir sudo para que pueda realizar tareas administrativas sin problemas.
Vamos a ello. Al final del artículo, también resolveremos algunas dudas frecuentes (FAQ) que suelen tener los usuarios.
¿Qué es un usuario "sudo" y por qué lo necesitas?
Antes de empezar a teclear comandos, es fundamental entender qué estamos haciendo. En Linux, existe el usuario root, que es el "superusuario" o el administrador absoluto. Tiene control total sobre el sistema: puede borrar cualquier archivo, instalar programas, cambiar configuraciones críticas, etc.
Trabajar directamente como root es una mala práctica, porque un error tipográfico podría romper el sistema entero. Es como usar un martillo pilón para clavar una chincheta.
Aquí es donde entra el comando sudo. La palabra viene de "Super User DO" (Hacer como Super Usuario). Básicamente, sudo te permite ejecutar un comando con los privilegios de root, pero solo durante ese comando específico.
Cuando le das permisos a un usuario para que use sudo, le estás otorgando permisos administrador linux de forma segura y controlada. De esta manera, el usuario puede hacer tareas administrativas, pero el sistema le pedirá su contraseña y quedará un registro (log) de todo lo que hace.
En resumen: Crear un usuario normal es para el uso diario y añadir sudo es para darle "superpoderes" de forma puntual y controlada.
Requisitos previos: Antes de empezar
Para seguir esta guía, necesitas tener acceso a tu servidor Linux. Esto puede ser a través de:
- Una máquina virtual.
- Un servidor en la nube (VPS).
- Tu propio ordenador con Linux instalado.
Además, necesitarás acceso a una terminal (línea de comandos) y tener acceso a una cuenta con privilegios de administrador (o ser el usuario root directamente, aunque no lo recomiendo).
**[INFO]
Los comandos que verás son universales para la mayoría de las distribuciones de Linux (Ubuntu, Debian, CentOS, AlmaLinux, etc.). Si usas un panel de control como Syspanel (accesible por el puerto 2106), también puedes hacerlo desde su interfaz, pero conocer la terminal te dará un control total y te hará un mejor administrador.
Método 1: Crear un usuario y añadir sudo con un solo comando
Esta es la forma más rápida y eficiente, ideal si ya sabes que el nuevo usuario necesitará permisos de administrador desde el principio.
Paso 1: Accede a la terminal
Abre tu terminal y conéctate a tu servidor. Si estás en tu ordenador local, simplemente abre la aplicación "Terminal". Si es un servidor remoto, usa ssh usuario@ip_del_servidor.
Paso 2: Ejecuta el comando combinado
El truco está en usar el comando useradd con la opción -G sudo. Este flag añade al usuario al grupo "sudo" en el momento de su creación.
Escribe el siguiente comando (reemplaza nuevo_usuario por el nombre que quieras):
sudo useradd -m -s /bin/bash -G sudo nuevo_usuario
Vamos a desglosarlo para que entiendas qué hace cada parte:
sudo: Ejecuta el comando con permisos de administrador.useradd: Es el comando para crear un nuevo usuario.-m: Crea el directorio home del usuario (por ejemplo,/home/nuevo_usuario). Es esencial.-s /bin/bash: Define la shell (intérprete de comandos) por defecto. Bash es la más común y amigable.-G sudo: Es la clave. Añade al usuario al gruposudo.nuevo_usuario: Es el nombre de usuario que estás creando.
Paso 3: Establece una contraseña
Ahora, necesitas asignar una contraseña al nuevo usuario. Sin este paso, el usuario no podrá iniciar sesión.
sudo passwd nuevo_usuario
El sistema te pedirá que escribas la nueva contraseña dos veces. Verás que no se muestra nada mientras escribes; esto es una medida de seguridad normal.
Paso 4: Verifica el acceso
Para comprobar que todo ha ido bien, puedes cambiar al nuevo usuario con el comando su (switch user):
su - nuevo_usuario
Te pedirá la contraseña que acabas de establecer. Una vez dentro, prueba a ejecutar un comando con sudo:
sudo whoami
Si te pide la contraseña de nuevo_usuario y luego muestra root, ¡enhorabuena! Has creado un usuario con permisos de administrador correctamente.
Método 2: Crear un usuario normal y añadir sudo después
Este método es más "paso a paso" y es útil si quieres crear primero un usuario estándar y decidir más tarde si le das permisos de administrador.
Paso 1: Crea el usuario básico
Primero, creamos el usuario sin permisos especiales:
sudo useradd -m -s /bin/bash nuevo_usuario
Este comando es igual que el anterior, pero sin la parte -G sudo.
Paso 2: Establece una contraseña
Igual que antes, asignamos una contraseña:
sudo passwd nuevo_usuario
Paso 3: Añade el usuario al grupo sudo
Ahora viene el paso crucial. Para añadir sudo a este usuario, usamos el comando usermod (user modify) para modificar sus propiedades.
sudo usermod -aG sudo nuevo_usuario
usermod: Comando para modificar un usuario existente.-aG: La-asignifica "append" (añadir) y la-Gindica que vamos a modificar los grupos. Es muy importante usar-apara no eliminar al usuario de otros grupos a los que ya pertenezca.sudo: El grupo al que queremos añadir al usuario.nuevo_usuario: El nombre del usuario.
Paso 4: Verifica los permisos
Al igual que en el método anterior, verifica que el usuario ya puede usar sudo.
Método 3: El comando adduser (la alternativa fácil)
En distribuciones como Ubuntu o Debian, existe un comando más amigable llamado adduser. Es un script que automatiza todo el proceso de creación de usuario, directorio home y contraseña.
Paso 1: Crea el usuario
Simplemente escribe:
sudo adduser nuevo_usuario
El sistema te hará una serie de preguntas (contraseña, nombre completo, etc.). Puedes dejar las opciones de "Nombre completo" y demás en blanco pulsando Enter.
Paso 2: Añade al grupo sudo
Este comando no añade al usuario al grupo sudo por defecto, así que tendrás que hacerlo manualmente con usermod:
sudo usermod -aG sudo nuevo_usuario
Paso 3: Verificación
Repite el proceso de verificación con su - y sudo whoami.
Cómo verificar los permisos sudo de un usuario
¿No estás seguro de si un usuario tiene permisos de administrador? Hay varias maneras de comprobarlo.
1. Usando el comando groups
Este comando te muestra los grupos a los que pertenece un usuario.
groups nuevo_usuario
Si en la salida ves la palabra sudo, entonces el usuario tiene permisos de administrador.
2. Usando el comando id
Este comando da más detalles, incluyendo el UID (User ID) y los IDs de los grupos.
id nuevo_usuario
Busca la parte que dice groups=.... Si aparece 27(sudo) o similar, entonces está en el grupo sudo.
3. Usando sudo -l
Este comando, ejecutado como el propio usuario, lista los comandos que puede ejecutar con sudo.
sudo -l
Si el usuario tiene permisos, verás una lista de comandos o un mensaje que dice que puede ejecutar todos los comandos.
Errores comunes y cómo solucionarlos
"El usuario no está en el archivo sudoers"
Este es el error más común. Significa que el usuario no pertenece al grupo sudo o que el grupo no está configurado correctamente en el archivo /etc/sudoers.
Solución: Asegúrate de haber ejecutado sudo usermod -aG sudo nuevo_usuario y de que el usuario cierre sesión y vuelva a entrar (o reinicie la sesión) para que los cambios surtan efecto.
"sudo: no se puede resolver el host"
Este error suele aparecer en servidores con nombres de host mal configurados.
Solución: Edita el archivo /etc/hosts y asegúrate de que el nombre de tu servidor esté mapeado a la dirección IP 127.0.0.1.
sudo nano /etc/hosts
Busca la línea que dice 127.0.0.1 localhost y añade el nombre de tu servidor al final, por ejemplo: 127.0.0.1 localhost mi-servidor.
Consejos de seguridad avanzada
Otorgar permisos sudo es un gran poder, y con un gran poder viene una gran responsabilidad. Aquí tienes algunos consejos para mantener tu sistema seguro.
No uses la cuenta root para todo
Siempre usa una cuenta de usuario normal y sudo para las tareas administrativas. Esto te protege de errores accidentales y de malware.
Usa contraseñas seguras
Asegúrate de que todos los usuarios, especialmente los que tienen permisos sudo, usen contraseñas robustas (combinación de letras mayúsculas, minúsculas, números y símbolos).
Considera usar claves SSH
En lugar de contraseñas, puedes usar claves SSH para acceder a tu servidor. Es mucho más seguro y cómodo.
Limita los comandos sudo (Avanzado)
Si quieres ser un SysAdmin experto, puedes editar el archivo /etc/sudoers para permitir que un usuario solo ejecute ciertos comandos. Esto se hace con el comando visudo.
**[WARNING]
Nunca edites el archivo /etc/sudoers directamente con un editor normal como nano o vim. Siempre usa sudo visudo, ya que este comando valida la sintaxis y evita que bloquees el acceso a sudo por un error tipográfico.
Preguntas Frecuentes (FAQ)
¿Cuál es la diferencia entre useradd y adduser?
useradd es el comando binario nativo de Linux, es más básico y directo. adduser es un script en Perl que interactúa con useradd y te guía durante el proceso, creando el directorio home, pidiendo la contraseña, etc. Es más amigable para principiantes.
¿Qué pasa si no uso la opción -m en useradd?
Si no usas -m, el sistema no creará el directorio home del usuario. Esto puede causar problemas al usuario, ya que no tendrá un lugar donde guardar sus archivos personales o configuraciones. La mayoría de las veces querrás usar -m.
¿Puedo crear un usuario sin contraseña?
Sí, puedes crear un usuario sin contraseña, pero es una mala práctica de seguridad. Nadie podrá iniciar sesión con ese usuario sin una contraseña (a menos que uses claves SSH). Si lo haces, el usuario está "bloqueado".
¿Cómo elimino a un usuario del grupo sudo?
Para revocar los permisos de administrador, usa el comando gpasswd:
sudo gpasswd -d nuevo_usuario sudo
Estoy usando Syspanel, ¿cómo hago esto?
Syspanel, el panel de control que se accede por el puerto 2106, tiene una interfaz gráfica para gestionar usuarios. Sin embargo, los comandos de terminal que te he enseñado funcionan a un nivel más bajo y te dan el mismo resultado. De hecho, es una buena práctica saber hacerlo por terminal, ya que es universal y no depende de ningún panel.
¿Qué es el grupo wheel?
En algunas distribuciones (como CentOS, RHEL, AlmaLinux), el grupo de administradores se llama wheel en lugar de sudo. Si estás en una de estas, usa -G wheel y usermod -aG wheel nuevo_usuario.
Conclusión
Ya tienes todo lo que necesitas para crear usuario linux y darle permisos administrador linux de forma segura. Hemos visto tres métodos diferentes, desde el más rápido hasta el más interactivo, y también hemos cubierto la verificación y los errores más comunes.
Recuerda que la práctica hace al maestro. Te animo a que pruebes estos comandos en un entorno de prueba (una máquina virtual, por ejemplo) antes de aplicarlos en un servidor de producción.
Como SysAdmin, la gestión de usuarios y permisos es una de las habilidades más importantes. Dominarla te dará un control total sobre tu sistema y te permitirá mantenerlo seguro y organizado. Si tienes más dudas, no dudes en consultar la documentación oficial de tu distribución o preguntar en foros de la comunidad. ¡Buena suerte!
