Usuarios Linux
Usuarios del sistema en el VPS con home privado, sudo opcional, cambio de contraseña forzado y borrado con confirmación.
- Categoría: Servidores e infraestructura
- Estado: Disponible
- Requisitos: Un VPS de la empresa encendido; Para listar y ver: acceso al VPS; Para crear, editar o borrar: ser admin de la empresa
- Herramientas MCP (Solo leen):
listar_usuarios_vps,ver_usuario_vps - Herramientas MCP (Escriben o modifican):
crear_usuario_vps,editar_usuario_vps - Herramientas MCP (Destructivas):
eliminar_usuario_vps
¿Qué permite hacer?
- Listar los usuarios con los que se puede entrar al VPS y cuáles tienen
sudo. - Crear un usuario con contraseña, home privado y, si se pide,
sudo. - Obligar a cambiar la contraseña en el primer ingreso (activado por defecto).
- Cambiar la contraseña o quitar y dar
sudo. - Borrar un usuario, con o sin su carpeta personal.
¿Cuándo conviene usarlo?
- Dar acceso por SSH o por terminal a una persona sin compartir
root. - Un usuario propio para correr una aplicación.
- Quitar el acceso a alguien que dejó el equipo.
¿Cómo funciona en ArduMaker?
Alta
- Se valida el nombre: empieza con minúscula o
_, sigue con minúsculas, números,_o-, hasta 32 caracteres. La contraseña es obligatoria. - Si el usuario no existe, se crea con
useradd -m -s /bin/bash, se le pone la contraseña y, conforce_password_change, se la marca como vencida (chage -d 0). Un usuario que ya existía no se toca. - Se deja su home
/home/<usuario>con permisos 700 y los archivos de inicio de/etc/skelque falten. - Con
sudo=truese lo agrega al gruposudo.
Listado
Solo aparecen usuarios «humanos»: UID 1000 o más, con shell de login y contraseña habilitada, más root. Los usuarios de sistema (www-data, postgres…) no se listan.
Borrado
rootnunca se puede borrar.- Un agente tiene que mandar
confirmacioncon el nombre exacto del usuario: la guarda obliga a leer qué se está por destruir. - Por defecto también se borra la carpeta personal (
remove_home=true); confalsese conserva. - Los procesos que corren como ese usuario siguen hasta que terminen: borrar la cuenta no los mata.
- El nombre del usuario borrado queda en el registro de actividad del VPS.
¿Qué cambia realmente?
/etc/passwd,/etc/shadowy los grupos del sistema (sudo)./home/<usuario>con permisos 700, propiedad del usuario.- La lista de usuarios que ArduMaker guarda del VPS se actualiza al crear y al listar.
- Una entrada en el registro de actividad del VPS por cada operación.
Entrar con el usuario
Crear el usuario no abre SSH. Para entrar desde afuera hace falta una redirección al puerto 22, idealmente con vencimiento (ver Firewall y puertos):
ssh -p <host_port> usuario@<dnsip>Con force_password_change=true, en el primer ingreso el sistema pide la contraseña actual y una nueva.
Esquema
- Pedido: usuario, contraseña, sudo
- Validación: nombre válido, admin de la empresa
- Agente del VPS: useradd → chpasswd → chage → usermod
- Resultado: usuario con home 700 y, opcional, sudo
Resultado esperado
listar_usuarios_vpsdevuelveusersysudo_users(siempre incluyeroot).ver_usuario_vpsdevuelve la línea del usuario en/etc/passwd.crear_usuario_vpssobre un usuario que ya existe devuelve ese usuario conya_existia: trueen lugar de fallar.
id usuario
sudo -l -U usuarioErrores y resolución
| Respuesta | Causa | Qué hacer |
|---|---|---|
400 Invalid username | Mayúsculas, espacios o caracteres no permitidos | Usar el formato válido |
404 User '<usuario>' not found | No existe ese usuario | Listar primero |
403 al borrar root | root está protegido | — |
428 sin confirmacion | Un agente no mandó el nombre exacto | Reenviar la misma llamada con confirmacion igual al usuario |
| 403 | Crear, editar o borrar requiere admin de la empresa | Pedirlo a un admin |
Crear es seguro de repetir (devuelve el existente con ya_existia), pero en ese caso la contraseña no se cambia. Un userdel o deluser por ejecutar_comando_vps se rechaza siempre, sin opción de confirmar: el camino previsto es eliminar_usuario_vps.
Relación con MCP
Sí, en los perfiles /mcp y /mcp/vps.
| Herramienta | Tipo | Notas |
|---|---|---|
listar_usuarios_vps, ver_usuario_vps | Lectura | — |
crear_usuario_vps | Escritura | Admin; idempotente por nombre |
editar_usuario_vps | Escritura | Admin; password y/o sudo |
eliminar_usuario_vps | Destructiva, irreversible | Admin; confirmacion = nombre exacto |