Configurar un dominio con Samba

De Deseño, implantación e configuración dun dominio/rede Linux.
Ir a la navegación Ir a la búsqueda

Configurar o servidor de samba como controlador de dominio


Engadir un cliente Windows XP ao dominio

Para engadir un equipo cliente con Windows XP no dominio samba seguiremos os seguinte pasos:

  • Debemos engadir un usuario Linux co nome do equipo cliente que imos engadir no dominio engadindo o símbolo $ no final. Se o equipo ten por nome clientexp, engadiremos o usuario clientexp$

Configurar servidor samba crear usuario equipo cliente.jpg


Configurar servidor samba crear usuario equipo cliente1.jpg


  • Imos engadir este usuario como usuario samba, pero indicando que este usuario é unha conta dunha estación de traballo. Usaremos o comando smbpasswd:
smbpasswd -a -m clientexp
  • No equipo Windows XP, entraremos como administrador e engadiremos o equipo no dominio. Cando nos pida o usuario e clave para engadir o equipo no dominio, introduciremos root e a clave do usuario root en samba:

Configurar servidor samba engadir XP dominio.jpg


Iniciar sesión no dominio

  • Xa podemos iniciar sesión cun usuario do dominio dende o equipo cliente:

Configurar servidor samba iniciar sesion cliente.jpg


  • O usuario xa disporá automaticamente da súa carpeta persoal conectada na unidade Z:. Poderiamos cambiar a letra desta unidade en swat co parámetro logon drive:

Configurar servidor samba carpeta persoal.jpg


  • Os usuarios tamén dispoñen automaticamente de perfís móbiles, xa que por defecto samba fai que Windows use o cartafol profile que está dentro do directorio persoal para almacenar o perfil. Deste xeito, se o usuario inicia sesión noutro equipo cliente do dominio, manterá a súa configuración persoal. Poderiamos cambiar a localización do perfil dos usuarios en swat co parámetro logon path.


Actividade: Configurar un dominio con Samba

1. Crea un dominio Samba chamado nome_do_teu_centro.
2. Une a este dominio un equipo cliente.
3. Comproba que podes iniciar sesión no dominio dende o equipo cliente co usuario alumno01, 
   coa clave que teña este usuario en samba.

Configurar scripts para o inicio de sesión

  • Cando nun dominio Windows temos un controlador con Windows Server, podemos configurar scripts para que se executen de forma automatica no inicio de sesión dos usuarios.
  • Estes scripts son moi útiles para:
    • Conectar unidades de rede (co comando net use).
    • Sincronizar a hora dos equipos clientes co servidor (comando net time).
    • Facer que se abra un documento cando os usuarios inicien sesión (comando start).
    • Modificar algún valor no rexistro de Windows para cambiar o comportamento dalgún programa (comando regedit).
    • Etc.
  • Estes scripts de inicio de sesión almacénanse nun cartafol compartido co nome netlogon no controlador de dominio.
  • O xeito de configurar scripts de inicio de sesión en samba é similar:
    • En primeiro lugar, compartiremos un cartafol co nome netlogon:


Configurar servidor samba scripts de inicio de sesion.jpg


    • Neste cartafol creamos un ficheiro inicio.bat co seguinte texto:
 REM Ficheiro de inicio de sesion
 net use t: \\controlador\temp
    • Entraremos en swat ou editaremos o ficheiro de configuración para introducir no parámetro logon script o nome do script, inicio.bat.


Ocultar os ficheiros e directorios non permitidos

  • Unha opción que pode ser moi interesante cando compartimos carpetas de uso común mediante samba, é a de ocultar os ficheiros e directorios dentro destas carpetas aos que o usuario non teña acceso de lectura.
  • Por exemplo, desta forma podemos ter unha carpeta compartida comun e dentro unha carpeta profes que só verán os profes.
  • Para establecer este comportamento, modificaremos con swat o parámetro hide unreadable a yes


Sincronizar os usuarios do sistema cos usuarios Samba

  • O problema que temos coa configuración dos usuarios de samba é que se damos de alta un novo usuario en Linux, o modificamos (por exemplo, cabiámoslle a clave) ou o borramos, estes cambios non se trasladarán aos usuarios de samba, xa que son usuarios independentes.
  • Para facilitar a xestión dos usuarios, webmin inclúe a opción de poder sincronizar os usuarios de samba cos usuarios de Linux:

Configurar servidor samba Sincronizar Usuarios1.jpg


  • Con esta utilidade poderemos facer que os usuarios samba se creen, modifiquen e borren cada vez que se fan estes cambios sobre os usuarios de Linux, sempre que os cambios nos usuarios de Linux se fagan co wenmin:

Configurar servidor samba Mandriva Sincronizar Usuarios.jpg


Actualizar a clave do usuario dende un equipo Windows

  • Coa configuración por defecto de samba, un usuario do dominio pode cambiar a súa clave, pero este cambio de clave só afectará ao usuario de samba, mentres que o correspondente usuario de Linux seguirá tendo a clave anterior.
  • Podemos configurar samba para que cambie automaticamente a clave de Linux dese usuario cada vez que se cambia a clave dende Windows.
  • O que fará samba para facer esta actualización é executar o comando passwd como root no servidor para cambiarlle a clave ao usuario en Linux.
  • Para activar esta posibilidade, entraremos na opción de Autentificación do módulo de xestión de samba do webmin:

Sincronizar clave de samba e linux.jpg


  • Os parámetos que hai que configurar son os seguintes:
    • Change Unix password as well? = Si
      • Desta forma lle dicimos ao servidor de samba que cada vez que se cambie a clave de samba automaticamente sincronice a clave de Linux.
      • Este parámetro no ficheiro de configuración chámase unix password sync
    • Programa de claves de acceso = /usr/bin/passwd %u
      • Este parámetro dille ao servidor de samba onde está o programa que ten que usar para cambiar a clave de usuario (normalmente debe estar aí en calquera distribución). Hai que ter en conta que samba executará este comando como root e que substituirá %u polo login do usuario que cambiou a clave.
      • No ficheiro de configuración correspóndese co parámetro passwd program
    • Charla para cambiar la clave de acceso
      • Este parámetro indica como é o intercambio de mensaxes entre o servidor de samba e o comando passwd. O valor que deberemos poñer varía dependendo da distribución e o idioma do sistema. No noso caso deberemos poñer:
        • En Mandriva:
*Nueva*UNIX*contraseña* %n\n *Vuelva*a*escribir*la*nueva*UNIX*contraseña* %n\n 
*passwd:*all*authentication*tokens*updated*successfully*
        • En Ubuntu:
*Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully*
      • Correspóndese no ficheiro de configuración co parámetro passwd chat

Actividade: Xestión de usuarios e cartafoles compartidos

1. Activa no webmin a sincronización dos usuarios de samba cos usuarios de Linux.
2. Crea co webmin un usuario Linux profesor01 con clave abc123..
3. Crea no servidor en /comun os seguintes cartafois:
   3.1./comun/apuntes onde profesor01 pode ler e escribir, e o resto dos usuarios só poden ler.
   3.2./comun/profes onde só pode ler e escribir profesor01, e o resto dos usuarios non poden acceder.
4. Comparte no servidor por samba a carpeta /comun co nome comun para lectura e escritura
   de todos os usuarios.
5. Activa no servidor a opción que oculta os ficheiros non accesibles aos usuarios.
6. Crea un script de inicio de sesión que conecte a carpeta comun na unidade R:
7. Inicia sesión cos usuarios alumno01 e profesor01 no cliente Windows XP e comproba que na unidade R:
   aparecen accesibles as carpetas que corresponden ao tipo de usuario, e que os permisos son correctos
   (o usuario alumno01 non debería poder escribir en apuntes, pero profesor01 si).


Ficheiros de configuración de Samba

  • Os ficheiro de configuración básico de samba é smb.conf, normalmente almacenado no directorio /etc/samba. Neste ficheiro establécense todos os parámetros de comportamento do servizo e os recursos compartidos.
  • Outros ficheiros importantes son smbpasswd e smbusers, que almacenan a información dos usuarios de samba, as súas claves e a correspondencia dos usuarios de samba cos usuarios de Linux