Comandos clave - 301.4 Resolución de Problemas

Control de niveles de log

ComandoFunciónEjemplo
smbcontrol smbd debug NCambiar nivel de log de smbdsmbcontrol smbd debug 3
smbcontrol all debug NCambiar nivel de log de todos los demoniossmbcontrol all debug 5
smbcontrol PID debug NCambiar log de un proceso específicosmbcontrol 12345 debug 3
log level = NConfigurar nivel en smb.conflog level = 1 auth:3 winbind:5

Análisis de tráfico de red

ComandoFunciónEjemplo
tcpdump -i eth0 port 445Capturar tráfico SMB directotcpdump -i eth0 port 445 -w smb.pcap
tcpdump port 139Capturar SMB sobre NetBIOStcpdump -i eth0 port 139 -vvv
tcpdump port 137 or port 138Capturar tráfico NetBIOStcpdump -i eth0 udp port 137
tcpdump port 88Capturar tráfico Kerberostcpdump -i eth0 port 88 -w krb.pcap
tshark -f "port 445"Captura con tshark (Wireshark CLI)tshark -i eth0 -f "port 445"
tshark -Y "smb2"Filtrar tráfico SMB2 en tsharktshark -r captura.pcap -Y "smb2"

Diagnóstico de conectividad

ComandoFunciónEjemplo
testparmVerificar configuración smb.conftestparm -s
smbclient -L //srv -U userListar recursos (prueba conectividad)smbclient -L //srvfiles -U admin
smbclient -L //srv -NListar sin autenticaciónsmbclient -L //srvfiles -N
smbclient -d NCliente SMB con nivel de debugsmbclient -L //srv -U user -d 3
smbclient -m SMB2Forzar protocolo específicosmbclient -L //srv -U user -m SMB3
nmblookup nombreResolver nombre NetBIOSnmblookup SERVIDOR
nmblookup -A ipTabla de nombres de un hostnmblookup -A 192.168.1.10

Diagnóstico de winbind e integración

ComandoFunciónEjemplo
wbinfo -pPing a winbinddwbinfo -p
wbinfo -tVerificar confianza del dominiowbinfo -t
wbinfo -uListar usuarios del dominiowbinfo -u
wbinfo -gListar grupos del dominiowbinfo -g
wbinfo -a user%passProbar autenticaciónwbinfo -a pedro%secreto
wbinfo --name-to-sid userObtener SID de un usuariowbinfo --name-to-sid admin
wbinfo --sid-to-uid SIDMapear SID a UIDwbinfo --sid-to-uid S-1-5-...
wbinfo --dsgetdcname=DOMObtener info del DCwbinfo --dsgetdcname=EMPRESA
getent passwdListar usuarios (incluidos dominio)getent passwd usuario_ad
getent groupListar grupos (incluidos dominio)getent group grupo_ad

Resolución de nombres

ComandoFunciónEjemplo
nmblookup nombreResolver nombre NetBIOSnmblookup SRVFILES
nmblookup -R -U wins nombreConsultar servidor WINSnmblookup -R -U 10.0.0.1 SRV
host nombreResolver DNShost srv.dominio.com
dig _ldap._tcp.dom SRVVerificar registros SRV de ADdig _ldap._tcp.empresa.com SRV
dig _kerberos._tcp.dom SRVVerificar registros Kerberosdig _kerberos._tcp.empresa.com SRV
nslookup nombreResolución DNS interactivanslookup dc.empresa.com

Códigos de error NT_STATUS comunes

CódigoSignificadoVerificación
NT_STATUS_ACCESS_DENIEDSin permisosVerificar smb.conf, ACLs, permisos POSIX
NT_STATUS_LOGON_FAILUREFallo de loginVerificar credenciales, passdb, Kerberos
NT_STATUS_BAD_NETWORK_NAMERecurso no encontradoVerificar nombre del recurso en smb.conf
NT_STATUS_CONNECTION_REFUSEDConexión rechazadaVerificar smbd, firewall, puertos
NT_STATUS_HOST_UNREACHABLEHost inaccesibleVerificar red, routing, firewall
NT_STATUS_SHARING_VIOLATIONConflicto de bloqueoVerificar smbstatus -L
NT_STATUS_NO_TRUST_SAM_ACCOUNTCuenta de máquina inválidaEjecutar net ads join
NT_STATUS_ACCOUNT_DISABLEDCuenta deshabilitadaVerificar estado con pdbedit o AD