Samba (Version 3)
Descripción
Servicio para los Windogs
Prerequistos
- Samba: Servidor SMB, NMB, CIFS
Valores Agregados
- Swat: Administracion web
- Otros administradores: webmin, gsambad, system-config-samba
Si quiere samba con ldap despues de este documento vaya a Samba+LDAP
Instalación básica de Samba en Grupo de Trabajo
- Instale samba. Suele ser samba, samba-common, samba-sever y samba-clients.
- Como solo vamos a compartir archivos, lo unico que necesitamos es tener el mismo workgroup.
- Configure los servicios compartidos en smb.conf o por las interfaces siguiendo estandares
Hasta aqui hay dos opciones para usar el servidor:
- No controlo usuarios solo maquinas: Cambiar el “security=share” y poner los compartidos como publicos o con host-allow y listo no hay restriccion.
- Si distingo usuarios: Los usuarios y constraseñas del PC son las mismas del servidor, entonces un usuario puede ver su home y tener acceso a los compartidos.
Instalación y Configuración como PDC
A. Proceso de poner a funcionar el servidor
0. Cumpla con lo anterior
1. Inicialmente se edita el archivo /etc/samba/smb.conf y se realizan los siguientes cambios:
workgroup = SKINATECH
server string = Skina Samba Server
Local master = yes
domain master = yes
domain logons = yes
preferred master = yes
security = user
Posteriormente se reinician servicios de samba con /etc/rc.d/init.d/smb restart. o /etc/init.d/smb restart.
2. Es necesario verificar si existe acceso a los servicios de red desde las máquinas clientes, a través de su entorno de red.
Una vez superado esto, podemos crear un usuario en samba. Primero creelo en el sistema con useradd y que este se vea en samba, ya sincronizando o creandolo por “smbpasswd -a”
3. Vuelva a visitar el servidor y al intentar visitar un compartido, sera requerido por autenticacion. Ingrese es usuario y contraseña y debe ingresar exitosamente al home y a las impresoras
4. El siguiente paso es tener máquinas inscritas. Las cuentas de las máquinas son identicas a los de los usuarios pero con un signo $ al final. E idealmente pertenecen todas al mismo grupo: sambamachines y por supuesto no necesitan contraseña.
Una vez creada la maquina, puede intentar suscribirla al dominio. Sera requerido por usuario y contraseña que suele ser root y una contraseña diferente para samba agregada con smbpasswd. Esto finalmente debe ser exitoso, reiniciar e ingresar con el usuario de prueba.
**root un password diferente .. con “smbpasswd root” o si tiene ldap con “smbldap-passwd -w elpasswrod “
Y cuando la maquina solicite una cuenta con privilegios dele esta root/elpasswrod Y deberia inscribirse
Y finalmente el servidor se puede considerar instalado
**
B. Ahora la operacion
En principio samba debe poderse configurar para que todo lo genere automatico, tanto las cuentas de maquinas como las de usuarios, pero vamos por pasos.
1. Crear las cuentas de usuario y los grupos correspondientes a mano o sincronizados
Si quiere migrar los usuarios del sistema a samba se puede hacer a través de la siguiente línea (ya casi no esta disponible):
cat /etc/passwd | mksmbpasswd.sh > /etc/smbpasswd
o en su defecto, convierta usuarios unix a samba usando webmin . .funciona OK.
Ahora se deben de generar las contraseñas encriptadas con el comando smbpasswd, (ejm: smbpasswd jcarlos) .
2. De igual forma se deben crear cuentas de máquinas, es decir que para cada Windows 2000 que exista en el dominio es necesario crear una respectiva cuenta de usuario que irá precedida del signo $.
Ejemplo: irulan$:……… De hecho hay un scripcito hecho por el pueblo skina: crea_maquina_samba.sh
Esto en principio tambien puede ponerse para que lo haga automatico con un script configurado en smb.conf
add machine script = /usr/local/sbin/crea_maquina_samba.sh '%u'
6. Inscribir maquinas. Este es el problema maximo.
Problemas
1. Passwords planos para maquinas muy viejas (W95)
Teniendo en cuenta que existen problemas de autenticación de passwords encriptados desde las máquinas Windows 2000, es aconsejable configurar las estaciones de tal forma que únicamente envíen contraseñas en modo texto, de las siguiente forma:
WINDOWS 95 y 98: Para acceder a Samba sin encriptar desde Windows 98, debemos crear una entrada en el registro, para ello, los pasos a seguir son:
Utilizando la aplicacion regedit, añadimos una nueva entrada en el registro
en:
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\\\VxD\\VNETSUP
Para ello hacemos clic en Edicion/Nuevo/Valor_DWORD y nombramos esta clave como
EnablePlainTextPassword poniendo su valor a 1.
WINDOWS 2000: En el caso de utilizar windows 2000, la entrada en el registro es:
[HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\\\Services\\LanmanWorkStation\\Parameters]
“EnablePlainTextPassword”=dword:00000001
En cualquier caso es preciso reiniciar la máquina para que el cambio sea efectivo.
2. Conflictos de credenciales
En el proceso de configuración se pueden presentar los siguientes errores:
Las credenciales suministradas entran en conflicto con un conjunto de credenciales existentes
Lo cual se refiere a un doble intento de conexión. El error se puede observar utilizando la orden net use en una consola DOS de Windows 2000.
El siguiente comando eliminará tal duplicidad:
net use \\\\Nom_máquina\\IPC$ /delete
La cuenta de ususario es una cuenta de equipo. Utilice su cuenta de usuario global o su cuenta de usuario local para tener acceso a este servidor
En este caso se debe verificar que la cuenta de máquina exista y que este precedida del signo $.
Error de inicio de sesión: Contraseña incorrecta o cuenta de usuario inválida. e debe verificar que el usuario exista en el /etc/passwd. Además es posible que se presenten inconvenientes con la autenticación de root, por tal razón se sugiere la revisión del archivo pam que corresponde a samba en el directorio /etc/pam.d.
[root@samba root]$ vi /etc/pam.d/samba
Este archivo debe incluir la línea de autenticación de root que es la siguiente:
auth sufficient /lib/security/pam_rootok.so
3. Quitar Perfiles moviles
Estos son un mi…. debe entonces dejar vacios
logon path =
logon home =
Claro esto puede ser problematico si tiene en su dominio maquinas viejas 98 o similar.
4. El nombre DNS no existe
Cuando intenta unir un PC al domino le arroja el siguiente mensaje de error:
El error fue: “El nombre DNS no existe.”
(cdigo de error 0x0000232B RCODE_NAME_ERROR)
– Lo soluciona colocando en la configuracion del cliente como servidor wins principal la ip del servidor samba
5. Error en la relacion de confianza entre la estacion de trabajo (windows 7) y el dominio principal
- Se debe tener samba en las siguientes versiones 3.4, 3.3 o superiores.
- En la estacion de trabajo windows debe modificar el registro para agregar las siguientes claves, ubicadas en [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\services\\LanmanWorkstation\\Parameters]:
“DomainCompatibilityMode”=dword:00000001
“DNSNameResolutionRequired”=dword:00000000
- Alterar las que se muestran a continuación, ubicadas en [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\services\\Netlogon\\Parameters]:
DWORD RequireSignOrSeal = 1
DWORD RequireStrongKey = 1
- Por ultimo debe reinciar el PC y listo
– http://wiki.samba.org/index.php/Windows7 –
Trucos y Otras configuraciones
1. BDC y PDC
2. Obtener el SID (identificador de seguridad) de una maquina del dominio
a) [root@samba root]$ net SAM SHOW NOMBRE_DE_LA_MAQUINA$
b)
[root@samba root]$ rpcclient nombre_del_server_samba
Password:
rpcclient $> lookupnames NOMBRE_DE_LA_MAQUINA$
3. Actualizando a version 3.0
4. Poniendo a vencer las contraseñas
pdbedit -P “maximum password age” -C 2592000 –>El tiempo esta en segundos y equivale a 30 dias, cuenta a partir de la ultima vez que cambio la contraseña
net sam set pwdmustchangenow kasandra yes –>Si la quier poner a vencer la proxima vez que ingrese
Para verificar
pdbedit -v -u <usuario> | grep must
Si no quiere que expire la contraseña
pdbedit -r -c ”[X]” kasandra
5. Poner un script para todos los equipos del dominio
Cuando un equipo se conecta al dominio, arranca con este script, para esto, en el archivo de configuración de samba la linea
logon script = nombre_script.bat o .cmd
El script debe estrar en el directorio netlogon (en la configuracion tambien se indica en donde es).
[netlogon]
comment = Network Logon Service
path = /var/lib/samba/netlogon
Referencias
- samba_XP.html
- http://dns.bdat.net/documentos/samba/samba_pdc
- Samba setup guide for Linux
- http://sistemaspuebla.com/manuales/sambaxp.pdf o local sambaxp.pdf
==============================================================
15-Marzo-2006 J.E.Gomez v1.0 Primera version wiki
Ultimo Cambio v-0.7: Kasandra 24/01/2006
Ultimo Cambio v-0.6: Leibis 26/02/2003
26-Febrero-2009 J.F. Saganome V2.0 Segunda version wiki
16-Febrero-2010 J.F Saganome V2.1 Segunda Version wiki
20-Septiembre-2010 I.Rodriguez
Advertencia
Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra la ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.