Configuración de Samba
add user script
Esta es la ruta completa a un guion que smbd ejecutará como root en las circunstancias especiales descritas más abajo.
Normalmente, un servidor Samba requiere que se creen los usuarios UNIX para todos los usuarios que accedan a los ficheros del servidor. En los sitios que usan bases de datos de cuentas Windows NT como su base de datos primaria, la creación de estos usuarios y el mantenimiento de la lista de usuarios en sincronía con el PDC Windows NT es una tarea pesada. Esta opción permite a smbd crear los usuarios UNIX requeridos bajo demanda cuando un usuario accede al servidor Samba.
Para usar esta opción, smbd tiene que estar puesto con la opción ``security''=server o ``security''=domain y "add user script" tiene que ponerse con la ruta completa hacia un guion que cree un usuario UNIX dado un argumento %u, que se expande al usuario UNIX que hay que crear.
Cuando el usuario Windows intenta acceder al servidor Samba, en el momento de iniciar la sesión (configuración de la sesión en el protocolo SMB), smbd contacta con el servidor de claves e intenta validar el usuario dado con la clave suministrada. Si la validación es efectiva, smbd intenta localizar un usuario UNIX en la base de datos de usuarios UNIX en el que aplicar el usuario Windows. Si la búsqueda falla, y "add user script" esta activado, smbd llamará al guion especificado como root, expandiendo cualquier argumento %u al nombre de usuario que tiene que crearse.
Si este guion consigue crear el usuario, entonces smbd continuará como si el usuario UNIX existiera con anterioridad. De esta forma, los usuarios UNIX se crean dinámicamente para concordar con las cuentas Windows NT existentes.
add user script = /usr/sbin/useradd -d /dev/null -s /bin/false -g samba -M %u -c 'maquina'
passwd chat
Esta cadena controla la conversación que tiene lugar entre smbd y el programa local de cambio de claves para cambiar la clave del usuario. La cadena describe describe una secuencia de pares respuesta-recepción que smbd usa para determinar qué enviar al programa passwd y qué espera que le devuelva. Si no se recibe la respuesta esperada entonces no se modifica la clave.
Esta secuencia chat es con frecuencia específica del sitio, dependiendo de qué métodos locales se usan para para el control de claves (como NIS+ etc).
La cadena puede contener las macros %o y %n que se sustituyen por las claves nueva y vieja respectivamente. También puede contener las macro estándar \n \r \t y \s para asignar line-feed, retorno de carro, tab y espacio.
La cadena también puede contener un * que equivale a cualquier secuencia de caracteres.
Se pueden usar comillas dobles para cadenas que contengan espacios en blanco.
Si la cadena enviada en cualquier parte de la secuencia chat es un punto final "." entonces no se envía ninguna cadena. De forma similar con la cadena esperada si es un punto y aparte entonces no se espera ningún string.
passwd chat = *ew\sUNIX\spassword* %n\n *etype* %n\n *all\sauthentication\stokens\supdated\ssuccessfully*
passwd program
El nombre de un programa que se puede usar para fijar claves de usuarios.
Esto sólo es necesario si ha activado cambio remoto de claves cuando compiló Samba. Cualquier ocurrencia de %u será sustituida por el nombre de usuario.
También tiene que tener en cuenta que muchos programas passwd insisten en claves "razonables", tales como longtud mínima, o inclusión de distintos tipo de caracteres y dígitos. Esto puede ser un problema en algunos clientes (como Windows para trabajo en grupos) que envían claves en mayúsculas.
Observe que si el parámetro ``unix password sync'' está como "True" este programa se llama como ROOT antes de que la clave SMB del fichero smbpasswd se cambie. Si la modificación de la clave UNIX falla, entonces smbd fallará en el cambio de la clave SMB también (esto es por diseño).
Si el parámetro ``unix password sync'' está activo tiene que usar rutas absolutas para todos los programas que se llamen. Observe que por defecto ``unix password sync'' está como "False".
passwd program = /usr/bin/passwd %u
passdb backend
Esta opción perimte al administrador elegir qué sistema o backend usa para guardar y recuperar contraseñas. Permite, por ejemplo, usar smbpasswd y tdbsam sin recompilar. Se pueden especificar múltiples backends separados por espacios. Los backends se usan en orden en el que se especifican. Los nuevos usuarios simpre se añaden al primer backend especificado.
passdb backend = smbpasswd tdbsam |