Esta guía muestra cómo crear usuarios dentro de Linux usando la línea de comando.
Si bien muchos escritorios de las distintas distribuciones de Linux proporcionan una herramienta gráfica para crear usuarios, es una buena idea aprender a hacerlo desde la línea de comandos para que puedas transferir tus habilidades de una distribución a otra sin aprender nuevas interfaces de usuario.
Contenidos
- 1 Cómo crear un usuario
- 2 Cómo crear un usuario con su directorio home
- 3 Cómo crear un usuario con un directorio home diferente
- 4 Cómo cambiar la contraseña de un usuario con Linux
- 5 Cómo cambiar de usuario
- 6 Crear un usuario con una fecha de caducidad
- 7 Cómo crear un usuario y asignarlo a un grupo
- 8 Ajuste de valores predeterminados de inicio de sesión dentro de Linux
- 9 Cómo especificar el vencimiento de la contraseña de inicio de sesión al crear un usuario
- 10 Cómo forzar la creación de un usuario sin una carpeta home
- 11 Especifica el nombre completo del usuario al crear un usuario
- 12 Analizando el archivo / etc / passwd
Cómo crear un usuario
Comencemos por crear un usuario simple.
El siguiente comando agregará un nuevo usuario que se llamará test a tu sistema:
sudo useradd test
Lo que sucederá cuando se ejecute este comando dependerá del contenido del archivo de configuración ubicado en / etc / default / useradd.
Para ver los contenidos de / etc / default / useradd, ejecuta el siguiente comando:
sudo nano / etc / default / useradd
El archivo de configuración establecerá un shell por defecto que en Ubuntu es bin / sh. Todas las otras opciones están comentadas.
Las opciones comentadas te permiten establecer una carpeta principal predeterminada, un grupo, el número de días después de que la contraseña haya expirado antes de que la cuenta se deshabilite y una fecha de vencimiento predeterminada.
Lo importante de la información anterior es que ejecutar el comando useradd sin ningún modificador puede producir resultados diferentes en diferentes distribuciones y todo está relacionado con la configuración en el archivo / etc / default / useradd.
Además del archivo / etc / default / useradd, también hay un archivo llamado /etc/login.defs que se tratará más adelante en la guía.
Importante: sudo no está instalado en todas las distribuciones. Si no está instalado, debes iniciar sesión en una cuenta con los permisos adecuados para crear usuarios
Cómo crear un usuario con su directorio home
El ejemplo anterior fue bastante simple, pero el usuario puede o no haber sido asignado a un directorio de inicio basado en el archivo de configuración.
Para forzar la creación de un directorio home tienes que usar el siguiente comando:
useradd –m test
El comando anterior crea una carpeta / home / test para el usuario test.
Cómo crear un usuario con un directorio home diferente
Si deseas que el usuario tenga una carpeta home en un lugar diferente al predeterminado, puedes usar el modificador -d.
sudo useradd -m -d / test test
El comando anterior creará una carpeta llamada test para el usuario test debajo de la carpeta root.
Nota: Puede ser que con el modificador -m, la carpeta no se puede crear. Depende de la configuración que se encuentre en /etc/login.defs.
Para que esto funcione sin especificar un modificador -m tienes que editar el archivo /etc/login.defs y en la parte inferior del archivo agrega la siguiente línea:
CREATE_HOME yes
Cómo cambiar la contraseña de un usuario con Linux
Ahora que has creado un usuario con una carpeta home, deberás cambiar la contraseña del usuario.
Para configurar una contraseña de usuario, debes usar el siguiente comando:
passwd test
El comando anterior te permitirá configurar la contraseña del usuario test. Se te pedirá la contraseña que deseas usar.
Cómo cambiar de usuario
Puedes probar la cuenta de tu nuevo usuario escribiendo lo siguiente en una ventana de terminal:
su - test
El comando anterior cambia al usuario a la cuenta de test y, suponiendo que hayas creado una carpeta home, se colocará en la carpeta home de ese usuario.
Crear un usuario con una fecha de caducidad
Si estás trabajando en una oficina y tienes un nuevo contratista que comenzará a trabajar en tu oficina por un corto período de tiempo, querrás establecer una fecha de vencimiento en su cuenta de usuario.
Del mismo modo, si tienes un familiar que viene para quedarse, puedes crear una cuenta de usuario para ese miembro de la familia que expira después de que se haya ido.
Para establecer una fecha de caducidad al crear un usuario, usa el siguiente comando:
useradd -d / home / test -e 2018-07-05 test
La fecha debe especificarse en el formato AAAA-MM-DD donde AAAA es el año, MM es el número de mes y DD es el número de día.
Cómo crear un usuario y asignarlo a un grupo
Si tienes un nuevo usuario que se une a tu empresa, entonces puedes asignar grupos específicos para ese usuario para que tenga acceso a los mismos archivos y carpetas que otros miembros de su equipo.
Por ejemplo, imagina que tenías una persona llamada John y se estaba uniendo como contador.
El siguiente comando agregaría a john al grupo de cuentas.
useradd -m john -G accounts
Ajuste de valores predeterminados de inicio de sesión dentro de Linux
El archivo /etc/login.defs es un archivo de configuración que proporciona el comportamiento predeterminado de las actividades de inicio de sesión.
Hay algunas configuraciones claves en este archivo. Para abrir el archivo /etc/login.defs, tienes que ingresar el siguiente comando:
sudo nano /etc/login.defs
El archivo login.defs contiene la siguiente configuración, el cual es posible cambiarla si es lo que deseas:
PASS_MAX_DAYS: cuánto tiempo transcurrirá antes de que caduque la contraseña
PASS_MIN_DAYS: con qué frecuencia se puede cambiar una contraseña
PASS_WARN_AGE: cantidad de días antes de mostrar la advertencia de que está por caducar la contraseña
LOGIN_RETRIES: cantidad de intentos de inicio de sesión antes de que muestre una falla
LOGIN_TIMEOUT: cuánto tiempo pasa antes de que el inicio de sesión agote el tiempo de espera.
DEFAULT_HOME: puedes iniciar sesión un usuario si no existe una carpeta de inicio
Ten en cuenta que estas son las opciones predeterminadas y que pueden ser anuladas al crear un nuevo usuario.
Cómo especificar el vencimiento de la contraseña de inicio de sesión al crear un usuario
Puedes establecer una fecha de vencimiento de la contraseña, el número de intentos de inicio de sesión y el tiempo de espera al crear un usuario.
El siguiente ejemplo muestra cómo crear un usuario con una advertencia de contraseña, un número máximo de días antes de que caduque la contraseña y la configuración de reintentos de inicio de sesión.
sudo useradd test5 -m -K PASS_MAX_DAYS = 5 -K PASS_WARN_AGE = 3 -K LOGIN_RETRIES = 1
Cómo forzar la creación de un usuario sin una carpeta home
Si el archivo login.defs tiene configurada la opción CREATE_HOME yes , cuando se crea un usuario, se crea automáticamente una carpeta home.
Para crear un usuario sin una carpeta home, independientemente de la configuración, usa el siguiente comando:
useradd -M test
Es bastante confuso que -m significa crear la carpeta home y -M significa no crear la carpeta home.
Especifica el nombre completo del usuario al crear un usuario
Como parte de tu política de creación de usuarios, puedes elegir hacer algo como la primera inicial del nombre, seguido del apellido. Por ejemplo, el nombre de usuario para una persona que se llama «John Smith» será «jsmith».
Al buscar detalles sobre un usuario, es posible que no puedas distinguir entre John Smith y Jenny Smith.
Entonces puedes agregar un comentario al crear una cuenta para que sea más fácil averiguar el nombre real del usuario.
El siguiente comando muestra cómo hacer esto:
useradd -m jsmith -c "john smith"
Analizando el archivo / etc / passwd
Cuando creas un usuario, los detalles de ese usuario se agregan al archivo / etc / passwd.
Para ver los detalles sobre un usuario en particular, puedes usar el comando grep de la siguiente manera:
grep john / etc / passwd
Nota: El comando anterior devolverá detalles sobre todos los usuarios con la palabra john como parte del nombre de usuario.
El archivo / etc / passuword contiene una lista de campos separados por dos puntos sobre cada usuario.
Los campos son los siguientes:
- usuario
- contraseña encriptada (la cual obviamente no la puedes ver)
- identidad de usuario
- ID de grupo del usuario
- nombre completo del usuario
- directorio de inicio del usuario
- login shell
Fantástico , buscaba algo asi para recordar cosas ,Perfecto resumen y guia muy práctica para la creación de usuarios .Mucahs Gracias
Muy buena la instrucción bro, aunque estaba buscando como ponerle límites de conexión por usuario, osea creo un usuario con su contraseña y que solo 10 personas logren conectarse por medio de ese Usuario, gracias…
checa esto
How to limit the number of active logins per user?
https://unix.stackexchange.com/questions/196932/how-to-limit-the-number-of-active-logins-per-user
gracias por compartir esta información es muy valiosa.
HIJOS DE PUTA ESTO NO SIRVE PARA NADA QUE OS JODAN CAPULLOS ME CAGO EN VUESTRA PUTISIMA MADRE JUDIA PUTOS PERROS
Muy buen aporte gracias
Hola, necesito ayuda con pdf rider. Me tira error/78op1ER de pronto, he leido en descargarpdfgratis y voy a descomprimir la actualizacion ¿alguien mas lo ha practicado?
https://descargarpdfgratis.com.es/pdf-para-linux/
Hola, Esta web minescratch es bastante interesante para conocer. ¿Alguien la ha visto?
https://minescratch.com.es/cosas-que-debes-saber/
Hola, como puedo crear un usuario con permisos su con script?