303.2 Comandos Clave - Seguridad de Compartición
Comandos de gestión de ACLs
Comando / Herramienta Descripción smbcacls //srv/share archivo -U userVer ACLs NT de un archivo smbcacls ... -a "ACL:..."Añadir una ACL NT smbcacls ... -M "ACL:..."Modificar una ACL NT existente smbcacls ... -D "ACL:..."Eliminar una ACL NT smbcacls ... -S "..."Establecer descriptor de seguridad completo smbcacls ... --set-owner=userCambiar propietario NT setfacl -m u:user:rwx rutaEstablecer ACL POSIX setfacl -d -m g:grupo:rx rutaACL POSIX por defecto setfacl -R -m g:grupo:rx rutaACL POSIX recursiva setfacl -b rutaEliminar todas las ACLs POSIX getfacl rutaVer ACLs POSIX de un archivo/directorio
ACL:DOMINIO\usuario:TIPO/FLAGS/PERMISOS
Campo Valores posibles TIPO ALLOWED, DENIEDFLAGS 0x0 (sin herencia), 0x03 (herencia completa)PERMISOS FULL, CHANGE, READ, WRITE, máscara hex
Parámetros de seguridad en smb.conf
Parámetro Valor por defecto Descripción nt acl supportyes Habilitar soporte de ACLs NT inherit permissionsno Heredar permisos POSIX del directorio padre inherit aclsno Heredar ACLs por defecto del padre map acl inheritno Mapear herencia NT a ACLs POSIX por defecto acl group controlno Grupo propietario puede gestionar ACLs access based share enumno Solo mostrar shares accesibles al usuario hosts allow(vacío = todos) IPs/redes permitidas hosts deny(vacío) IPs/redes denegadas store dos attributesno Almacenar atributos DOS en xattrs vfs objects = acl_xattr(no activado) Almacenar ACLs NT en atributos extendidos
Comandos de diagnóstico
# Verificar permisos del sistema de archivos
ls -la /srv/samba/datos/
getfacl /srv/samba/datos/
# Verificar ACLs NT en un share
smbcacls //servidor/share archivo.txt -U admin
# Probar acceso como usuario específico
smbclient //servidor/share -U usuario -c "ls; put testfile"
# Verificar configuración de Samba
testparm -s
# Log detallado de permisos
# En smb.conf: log level = 3 auth:10 acls:10