Comandos clave - 302.5 Gestión Local de Usuarios

smbpasswd

ComandoFunciónEjemplo
smbpasswd -a usuarioAñadir usuario a Sambasmbpasswd -a pedro
smbpasswd usuarioCambiar contraseñasmbpasswd pedro
smbpasswd -d usuarioDeshabilitar cuentasmbpasswd -d pedro
smbpasswd -e usuarioHabilitar cuentasmbpasswd -e pedro
smbpasswd -x usuarioEliminar de Sambasmbpasswd -x pedro
smbpasswd -n usuarioContraseña nulasmbpasswd -n pedro (requiere null passwords = yes)
smbpasswd -mCambiar contraseña de máquinasmbpasswd -m
smbpasswd -r servidorCambiar en servidor remotosmbpasswd -r dc.empresa.com -U pedro

pdbedit

ComandoFunciónEjemplo
pdbedit -LListar usuariospdbedit -L
pdbedit -L -vListar con detallespdbedit -L -v
pdbedit -L -wListar en formato smbpasswdpdbedit -L -w
pdbedit -a -u usuarioAñadir usuariopdbedit -a -u pedro
pdbedit -x -u usuarioEliminar usuariopdbedit -x -u pedro
pdbedit -v -u usuarioDetalles de usuariopdbedit -v -u pedro
pdbedit -u user --fullnameCambiar nombre completopdbedit -u pedro --fullname="Pedro García"
pdbedit -u user --homedirCambiar home de redpdbedit -u pedro --homedir="\\\\srv\\pedro"
pdbedit -u user --driveAsignar letra de unidadpdbedit -u pedro --drive="H:"
pdbedit -u user --profileRuta del perfilpdbedit -u pedro --profile="\\\\srv\\profiles\\pedro"
pdbedit -u user --logon-scriptScript de loginpdbedit -u pedro --logon-script="login.bat"
pdbedit -e backend:rutaExportar base de datospdbedit -e smbpasswd:/tmp/export.txt
pdbedit -i backend:rutaImportar base de datospdbedit -i smbpasswd:/tmp/import.txt

Parámetros de mapeo de usuarios en smb.conf

ParámetroFunciónEjemplo
username mapArchivo de mapeo de usuariosusername map = /etc/samba/smbusers
username map scriptScript para mapeo dinámicousername map script = /usr/local/bin/map.sh
force userForzar usuario para operacionesforce user = www-data
force groupForzar grupo para operacionesforce group = proyecto
force group = +grupoForzar grupo solo si es miembroforce group = +equipo
guest accountCuenta UNIX para invitadosguest account = nobody
map to guestCuándo mapear a invitadomap to guest = Bad User
guest okPermitir acceso anónimo al recursoguest ok = yes

Formato del archivo username map

SintaxisFunciónEjemplo
unix = windowsMapeo simpleroot = administrator
unix = "Nombre Con Espacios"Mapeo con espaciosroot = "Admin Principal"
unix = win1 win2 win3Mapeo múltipleroot = administrator admin sysadmin
!unix = *Comodín (detiene búsqueda)!nobody = *

Verificación con getent y winbind

ComandoFunciónEjemplo
getent passwdListar usuarios (locales + dominio)getent passwd
getent passwd usuarioBuscar usuario específicogetent passwd pedro
getent groupListar grupos (locales + dominio)getent group
getent group grupoBuscar grupo específicogetent group "Domain Users"
id usuarioUID, GID y gruposid pedro
groups usuarioGrupos de un usuariogroups pedro
wbinfo -i usuarioInfo completa de usuario winbindwbinfo -i pedro

Control de acceso por recurso

ParámetroFunciónEjemplo
valid usersUsuarios con accesovalid users = @grupo, user1
invalid usersUsuarios sin accesoinvalid users = root
read listUsuarios con solo lecturaread list = @lectores
write listUsuarios con escriturawrite list = @editores
admin usersUsuarios con permisos de rootadmin users = admin
read onlyRecurso solo lecturaread only = yes
writableRecurso con escriturawritable = yes

Rangos idmap locales

ParámetroFunciónEjemplo
idmap config * : backendBackend para dominios no configuradosidmap config * : backend = tdb
idmap config * : rangeRango para backend comodínidmap config * : range = 3000-7999
winbind enum usersEnumerar usuarios vía winbindwinbind enum users = yes
winbind enum groupsEnumerar grupos vía winbindwinbind enum groups = yes
winbind use default domainOmitir prefijo de dominiowinbind use default domain = yes