Cómo configurar SAMBA

download Cómo configurar SAMBA

of 20

Transcript of Cómo configurar SAMBA

  • 8/4/2019 Cmo configurar SAMBA

    1/20

    Cmo configurar SAMBA.Autor: Joel Barrios Dueas

    Correo electrnico:jbarrios arroba linuxparatodos punto net

    Sitio de Red:http://www.linuxparatodos.net/

    Creative CommonsReconocimiento-NoComercial-CompartirIgual 2.1

    1999-2006 Linux Para Todos. Algunos Derechos Reservados 2007 Factor Evolucin SAde CV. Usted es libre de copiar, distribuir y comunicar pblicamente la obra y hacer obrasderivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) Nopuede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra, ogenera una obra derivada, slo puede distribuir la obra generada bajo una licencia idntica asta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licenciade esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso deltitular de los derechos de autor. Los derechos derivados de usos legtimos u otraslimitaciones no se ven afectados por lo anterior. Licencia completa en castellano. Lainformacin contenida en este documento y los derivados de ste se proporcionan tal cual

    son y los autores no asumirn responsabilidad alguna si el usuario o lector hace mal uso destos.

    Introduccin.

    Acerca del protocolo SMB.

    SMB (acrnimo de Server Message Block) es un protocolo, del Nivel de Presentacin delmodelo OSI de TCP/IP, creado en 1985 por IBM. Algunas veces es referido tambin comoCIFS (Acrnimo de Common Internet File System,http://samba.org/cifs/) tras ser

    renombrado por Microsoft en 1998. Entre otras cosas, Microsoft aadi al protocolosoporte para enlaces simblicos y duros as como tambin soporte para ficheros de grantamao. Por mera coincidencia esto ocurri por la misma poca en que Sun Microsystemshizo el lanzamiento de WebNFS (una versin extendida de NFS,http://www.sun.com/software/webnfs/overview.xml).

    SMB fue originalmente diseado para trabajar a travs del protoclo NetBIOS, el cual a suvez travaja sobre NetBEUI (acrnimo de NetBIOS Extended User Interface, que se traducecomo Interfaz de Usuario Extendida de NetBIOS), IPX/SPX (acrnimo de Internet PacketExchange/Sequenced Packet Exchange, que se traduce como Intercambio de paquetesinterred/Intercambio de paquetes secuenciales) o NBT, aunque tambin puede trabajar

    directamente sobre TCP/IP.

    Acerca de Samba.

    SAMBAes un conjunto de programas, originalmente creados por Andrew Tridgell yactualmente mantenidos porThe SAMBA Team, bajo la Licencia Publica GeneralGNU, yque implementan en sistemas basados sobre UNIX el protocolo SMB. Sirve comoreemplazo total para Windows NT, Warp, NFS o servidores Netware.

    http://www.linuxparatodos.net/geeklog/forum/http://www.linuxparatodos.net/geeklog/forum/http://www.linuxparatodos.net/geeklog/forum/http://www.linuxparatodos.net/http://www.linuxparatodos.net/http://www.linuxparatodos.net/http://creativecommons.org/licenses/by-nc-sa/2.1/es/http://creativecommons.org/licenses/by-nc-sa/2.1/es/http://creativecommons.org/licenses/by-nc-sa/2.1/es/http://creativecommons.org/licenses/by-nc-sa/2.1/es/legalcode.eshttp://creativecommons.org/licenses/by-nc-sa/2.1/es/legalcode.eshttp://samba.org/cifs/http://samba.org/cifs/http://samba.org/cifs/http://www.sun.com/software/webnfs/overview.xmlhttp://www.sun.com/software/webnfs/overview.xmlhttp://www.samba.org/http://www.samba.org/http://www.samba.org/samba/team.htmlhttp://www.samba.org/samba/team.htmlhttp://www.samba.org/samba/team.htmlhttp://www.gnu.org/http://www.gnu.org/http://www.gnu.org/http://www.gnu.org/http://www.samba.org/samba/team.htmlhttp://www.samba.org/http://www.sun.com/software/webnfs/overview.xmlhttp://samba.org/cifs/http://creativecommons.org/licenses/by-nc-sa/2.1/es/legalcode.eshttp://creativecommons.org/licenses/by-nc-sa/2.1/es/http://www.linuxparatodos.net/http://www.linuxparatodos.net/geeklog/forum/
  • 8/4/2019 Cmo configurar SAMBA

    2/20

    Sustento lgico necesario.

    Los procedimientos descritos en este manual han sido probados para poder aplicarse ensistemas con Red HatEnterprise Linux 4, o equivalentes o versiones posteriores, y almenos Samba 3.0.10 o versiones posteriores.

    Necesitar tener instalados los siguientes paquetes, que seguramente vienen incluidos enlos discos de instalacin de su distribucin predilecta:

    samba: Servidor SMB.

    samba-client: Diversos clientes para el protoclo SMB.

    samba-common:

    Ficheros necesarios para cliente y servidor.

    Consulte a la base de datos RPM del sistema si se encuentran instalados estos paquetes,

    utilizando el siguiente mandato:

    rpm -q samba samba-client samba-common

    Si se utiliza Red HatEnterprise Linux, solo bastar realizar lo siguiente para instalar oactualizar la programtica necesaria:

    up2date -i samba samba-client

    Si utiliza CentOS 4 o White Box Enterprise Linux 4, solo bastar realizar lo siguiente parainstalar o actualizar la programtica necesaria:

    yum -y install samba samba-client

    Configuracin bsica de Samba.

    Para la mayora de los casos la configuracin de Samba como servidor de archivos essuficiente.

    Alta de cuentas de usuario.

    Es importante sincronizar las cuentas entre el servidor Samba y las estaciones Windows.Es decir, si en una mquina con Windows ingresamos como el usuario "paco" con clavede acceso "elpatito16", en el servidor Samba deber existir tambin dicha cuenta con esemismo nombre y la misma clave de acceso. Como la mayora de las cuentas de usuario quese utilizarn para acceder hacia samba no requieren acceso al interprete de mandatos delsistema, no es necesario asignar clave de acceso con el mandato passwd y se deber definir/sbin/nologin o bien/bin/false como interpete de mandatos para la cuenta de usuarioinvolucrada.

  • 8/4/2019 Cmo configurar SAMBA

    3/20

    useradd -s /sbin/nologin usuario-windowssmbpasswd -a usuario-windows

    No hace falta se asigne una clave de acceso en el sistema con el mandato passwd puestoque la cuenta no tendr acceso al interprete de mandatos.

    Si se necesita que las cuentas se puedan utilizar para acceder hacia otros servicios comoseran Telnet, SSH, etc, es decir, que se permita acceso al interprete de mandatos, sernecesario especificar/bin/bash como interprete de mandatos y adems se deber asignaruna clave de acceso en el sistema con el mandato passwd:

    useradd -s /bin/bash usuario-windowspasswd usuario-windowssmbpasswd -a usuario-windows

    El fichero lmhosts

    Es necesario empezar resolviendo localmente los nombres NetBIOS asocindolos condirecciones IP correspondientes. Para fines prcticos el nombreNetBIOS debe tener unmximo de 11 caracteres. Normalmente tomaremos como referencia el nombre corto delservidor o el nombre corto que se asigno como alias a la interfaz de red. Este loestableceremos en el fichero/etc/samba/lmhosts, en donde encontraremos lo siguiente:

    127.0.0.1 localhost

    Debemos aadir entonces el nombre que hayamos elegido asociado a la direccin IP que setenga dentro de la red local. Opcionalmente podr aadir tambin los nombres y direccin

    IP del resto de las mquinas que conformen la red local. La separacin de espacios se hacecon un tabulador. Ejemplo:

    127.0.0.1 localhost192.168.1.5 maquinalinux192.168.1.6 isaac192.168.1.7 finanzas192.168.1.8 direccion

    Parmetros principales del fichero smb.conf.

    Modifique el fichero/etc/samba/smb.confcon cualquier editor de texto. Dentro de estenotar que la informacin que le ser de utilidad viene comentada con un smbolo # y losejemplos con ; (punto y coma), siendo estos ltimos los que tomaremos como referencia.

    Empezaremos por establecer el grupo de trabajo editando el valor del parmetroworkgroup asignando un grupo de trabajo deseado:

    workgroup = MIGRUPO

  • 8/4/2019 Cmo configurar SAMBA

    4/20

    Opcionalmente puede establecer con el parmetro netbios name otro nombre distinto parael servidor si acaso fuese necesario, pero siempre tomando en cuenta que dicho nombredeber corresponder con el establecido en el fichero/etc/samba/lmhosts:

    netbios name = maquinalinux

    El parmetro server string es de carcter descriptivo. Puede utilizarse un comentario breveque de una descripcin del servidor.

    server string = Servidor Samba %v en %L

    Parmetros tiles para la seguridad.

    La seguridad es importante y esta se puede establecer primeramente estableciendo la listade control de acceso que definir que mquinas o redes podrn acceder hacia el servidor. Elparmetro hosts allow sirve para determinar esto. Si la red consiste en la mquinas con

    direccin IP desde 192.168.1.1 hasta 192.168.1.254, el rango de direcciones IP que sedefinir en hosts allow ser 192.168.1. de modo tal que solo se permitir el acceso dichasmquinas. Note por favor el punto al final de cada rango. Modifique sta de manera quequede del siguiente modo:

    hosts allow = 192.168.1. 127.

    El parmetro interfaces permite establecer desde que interfaces de red del sistema seescucharn peticiones. Samba no responder a peticiones provenientes desde cualquierinterfaz no especificada. Esto es til cuando Samba se ejecuta en un servidor que sirvetambin de puerta de enlace para la red local, impidiendo se establezcan conexiones desdefuera de la red local.

    interfaces = 192.168.1.254/24

    Impresoras en Samba.

    Las impresoras se comparten de modo predeterminado, as que solo hay que realizaralgunos ajustes. Si se desea que se pueda acceder hacia la impresora como usuario invitadosin clave de acceso, basta con aadir public = Yes en la seccin de impresoras del siguientemodo:

    [printers]comment = El comentario que guste.path = /var/spool/sambaprintable = Yesbrowseable = Nowritable = noprintable = yespublic = Yes

  • 8/4/2019 Cmo configurar SAMBA

    5/20

    Windows NT, 2000 y XP no tendrn problema alguno para acceder e imprimir hacia lasimpresoras, sin embargo Windows 95, 98 y ME suelen tener problemas para comunicarsecon Samba para poder imprimir. Por tanto, si se quiere evitar problemas de conectividadcon dichos sistemas operativos hay que agregar algunos parmetros que resolverncualquier eventualidad:

    [printers]comment = Impresoras.path = /var/spool/sambaprintable = Yesbrowseable = Nowritable = noprintable = yespublic = Yes

    print command = lpr -P %p -o raw %s -rlpq command = lpstat -o %plprm command = cancel %p-%j

    Se pude definir tambin a un usuario o bien un grupo (@grupo_que_sea) para laadministracin de las colas de las impresoras:

    [printers]comment = Impresoras.path = /var/spool/sambaprintable = Yesbrowseable = Nowritable = noprintable = yespublic = Yesprint command = lpr -P %p -o raw %s -rlpq command = lpstat -o %plprm command = cancel %p-%j

    printer admin = fulano, @opers_impresion

    Con lo anterior se define que el usuario fulano y quien pertenezca al grupoopers_impresion podrn realizar tareas de administracin en las impresoras.

    Compartiendo directorios a travs de Samba.

    Para los directorios o volmenes que se irn a compartir, en el mismo fichero deconfiguracin encontrar distintos ejemplos para distintas situaciones particulares. Engeneral, puede utilizar el siguiente ejemplo que funcionar para la mayora:

    [Lo_que_sea]comment = Comentario que se le ocurrapath = /cualquier/ruta/que/desee/compartir

    El volumen puede utilizar cualquiera de las siguientes opciones:

  • 8/4/2019 Cmo configurar SAMBA

    6/20

    Opcin Descripcin

    guest ok Define si ser permitir el acceso como usuarioinvitado. El valor puede ser Yes o No.

    public Es un equivalente del parmetro guest ok, es decir

    define si ser permitir el acceso como usuarioinvitado. El valor puede ser Yes o No.

    browseable Define si se permitir mostrar este recurso en laslistas de recursos compartidos. El valor puede ser Yeso No.

    writable Define si ser permitir la escritura. Es el parmetrocontrario de read only. El valor puede ser Yes o No.Ejemplos: writable = Yeses lo mismo queread only = No. Obviamente writable = Noes lo mismo queread only = Yes

    valid users Define que usuarios o grupos pueden acceder alrecurso compartido. Los valores pueden ser nombresde usuarios separados por comas o bien nombres degrupo antecedidos por una @. Ejemplo: fulano,mengano, @administradores

    write list Define que usuarios o grupos pueden acceder conpermiso de escritura. Los valores pueden ser nombresde usuarios separados por comas o bien nombres degrupo antecedidos por una @. Ejemplo: fulano,mengano, @administradores

    admin users Define que usuarios o grupos pueden acceder conpermisos administrativos para el recurso. Es decir,podrn acceder hacia el recurso realizando todas lasoperaciones como super-usuarios. Los valores puedenser nombres de usuarios separados por comas o biennombres de grupo antecedidos por una @. Ejemplo:fulano, mengano, @administradores

    directory mask Es lo mismo que directory mode. Define quepermiso en el sistema tendrn los subdirectorioscreados dentro del recurso. Ejemplos: 1777

    create mask Define que permiso en el sistema tendrn los nuevosficheros creados dentro del recurso. Ejemplo: 0644

    En el siguiente ejemplo se compartir a travs de Samba el recurso denominado ftp, el cualest localizado en el directorio/var/ftp/pub del disco duro. Se permitir el acceso acualquiera pero ser un recurso de solo lectura salvo para los usuarios administrador y

  • 8/4/2019 Cmo configurar SAMBA

    7/20

    fulano. Todo directorio nuevo que sea creado en su interior tendr permiso 755 y todofichero que sea puesto en su interior tendr permiso 644.

    [ftp]comment = Directorio del servidor FTPpath = /var/ftp/pub

    guest ok = Yesread only = Yeswrite list = fulano, administradordirectory mask = 0755create mask = 0644

    Configuracin avanzada de Samba.

    Samba fue creado con un objetivo: ser en un reemplazo definitivo para Windows comoservidor en una red local. sto, por supuesto, requiere algunos procedimientos adicionalesdependiendo de las necesidades de la red local.

    Re-asignacin de grupos de Windows en Samba.

    Los grupos que existen en Windows tambin se utilizan en Samba para ciertas operaciones,principalmente relacionadas con lo que involucra un Controlador Primario de dominio (oPDC que significa Primary Domain Controler). Estos grupos existen de modo predefinidoen Samba. Sin embargo, si se ejecuta lo siguiente:

    net groupmap list

    Devolver la siguiente informacin:

    System Operators (S-1-5-32-549) -> -1Domain Admins (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-512)-> -1Replicators (S-1-5-32-552) -> -1Guests (S-1-5-32-546) -> -1Domain Guests (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-514)-> -1Power Users (S-1-5-32-547) -> -1Print Operators (S-1-5-32-550) -> -1Administrators (S-1-5-32-544) -> -1Account Operators (S-1-5-32-548) -> -1Domain Users (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-513) -> -1Backup Operators (S-1-5-32-551) -> -1Users (S-1-5-32-545) -> -1

    Lo anterior corresponde al mapa de los grupos que, de modo predeterminado, utilizarSamba si ste fuese configurado como Controlador Primario de Dominio.XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX corresponde a un nmero generado

  • 8/4/2019 Cmo configurar SAMBA

    8/20

    aleatoriamente al iniciarse Samba por primera vez. Tome nota de dicho nmero, ya quelo requerir ms adelante para re-asignar los nombres al espaol en el mapa de grupos.

    Los grupos anteriormente descritos trabajarn perfecta y limpiamente asocindoloscontra grupos en el sistema, pero solo si utiliza alguna versin de Windows en ingles . Si

    utiliza alguna versin de Windows en espaol, habr que re-asignar los nombres de losgrupos a los correspondientes al espaol y asociarles a grupos en el sistema, esto a fin depermitir asignar usuarios a dichos grupos y de este modo delegar tareas de administracindel mismo modo que en Windows.

    Es por tal motivo que si se tiene la intencin de configurar Samba como ControladorPrimario de Dominio y al mismo tiempo poder hacer uso de los grupos del mismo modoque en Windows, es decir, por mencionar un ejemplo, permitir a ciertos usuarios perteneceral grupo de administradores del dominio con privilegios de administrador, lo primero serentonces generar los grupos en el sistema ejecutando como root los siguientes mandatos:

    groupadd -r administradoresgroupadd -r admins_dominiogroupadd -r duplicadoresgroupadd -r invitadosgroupadd -r invs_dominiogroupadd -r opers_copiasgroupadd -r opers_cuentasgroupadd -r opers_impresiongroupadd -r opers_sistemagroupadd -r usrs_avanzadosgroupadd -r usuariosgroupadd -r usuarios_dominio

    Una vez creados los grupos en el sistema, solo resta re-asignar los nombres al espaol en elmapa de grupo de Samba y asociarles a stos los grupos recin creados en el sistema. Elprocedimiento se resume a ejecutar algo como lo siguiente:

    net groupmap modify \ntgroup="Nombre grupo Windows en espaol" \sid="nmero-de-identidad-en-sistema" \unixgroup="grupo_en_linux" \comment="comentario descriptivo acerca del grupo"

    Lo anterior establece que se modifique el registro del grupo que corresponda al sid(identidad de sistema) definido con el nombre establecido con ntgroup, asocindolo al

    grupo en el servidor con unixgroup y aadiendo un comentario descriptivo acerca de dichogrupo con comment.

    De modo tal, y a fin de facilitar las cosas a quien haga uso de este manual, puede utilizar elsiguiente guin para convertir los nombres al espaol y asociarlos a grupos en Linux, dondesolo deber definir el nmero de identidad del sistema que corresponda al servidor:

    #!/bin/sh

  • 8/4/2019 Cmo configurar SAMBA

    9/20

    SIDSAMBA=XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX

    net groupmap modify ntgroup="Administradores" \sid="S-1-5-32-544" unixgroup=administradores \comment="Los administradores tienen acceso completo y sin restricciones alequipo o dominio"

    net groupmap modify ntgroup="Admins. del dominio" \

    sid="S-1-5-21-$SIDSAMBA-512" unixgroup=admins_dominio \comment="Administradores designados del dominio"

    net groupmap modify ntgroup="Duplicadores" \sid="S-1-5-32-552" unixgroup=duplicadores \comment="Pueden duplicar archivos en un dominio"

    net groupmap modify ntgroup="Invitados del dominio" \sid="S-1-5-21-$SIDSAMBA-514" unixgroup=invitados \comment="Todos los invitados del dominio"

    net groupmap modify ntgroup="Invitados" \sid="S-1-5-32-546" unixgroup=invitados \comment="Los invitados tienen de modopredeterminado el mismo acceso que losmiembros del grupo Usuarios, excepto la cuenta Invitado que tiene masrestricciones"

    net groupmap modify ntgroup="Operadores de copias" \sid="S-1-5-32-551" unixgroup=opers_copias \comment="Los operadores de copia pueden sobrescribir restricciones deseguridad con el unico proposito de hacer copias de seguridad o restaurararchivos"

    net groupmap modify ntgroup="Opers. de cuentas" \sid="S-1-5-32-548" unixgroup=opers_cuentas \comment="Pueden administrar cuentas de usuarios y grupos del dominio"

    net groupmap modify ntgroup="Opers. de impresin" \sid="S-1-5-32-550" unixgroup=opers_impresion \comment="Pueden operar impresoras del dominio"

    net groupmap modify ntgroup="Opers. de servidores" \sid="S-1-5-32-549" unixgroup=opers_sistema \comment="Pueden administrar sistemas del dominio"

    net groupmap modify ntgroup="Usuarios avanzados" \sid="S-1-5-32-547" unixgroup=usrs_avanzados \comment="Los usuarios avanzados tienen mas derechos administrativos conalgunas restricciones. De este modo, pueden ejecutar aplicaciones heredadasjunto con aplicaciones certificadas"

    net groupmap modify ntgroup="Usuarios del dominio" \sid="S-1-5-21-$SIDSAMBA-513" unixgroup=usuarios_dominio \comment="Todos los usuarios del dominio"

    net groupmap modify ntgroup="Usuarios" \sid="S-1-5-32-545" unixgroup=usuarios \comment="Los usuarios no pueden hacer cambios accidentales o intencionados enel sistema. Pueden ejecutar aplic. certificadas, pero no la mayora de lasheredadas"

    exit 0

    Nota: Este guin en esta incluido en el disco de Extras de curso de Linux Para Todos. Solo basta editarlo y definir la variableSIDSAMBA y ejecutarlo como root.

    Una vez hecho lo anterior, al volver a realizar lo siguiente:

    net groupmap list

  • 8/4/2019 Cmo configurar SAMBA

    10/20

    Se deber de mostrar ahora esto otro:

    Opers. de servidores (S-1-5-32-549) -> opers_sistemaAdmins. del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-512) -> admins_dominioDuplicadores (S-1-5-32-552) -> duplicadores

    Invitados (S-1-5-32-546) -> invitadosInvitados del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-514) -> invitadosUsuarios avanzados (S-1-5-32-547) -> usrs_avanzadosOpers. de impresin (S-1-5-32-550) -> opers_impresionAdministradores (S-1-5-32-544) -> administradoresOpers. de cuentas (S-1-5-32-548) -> opers_cuentasUsuarios del dominio (S-1-5-21-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXXXX-513) -> usuarios_dominioOperadores de copias (S-1-5-32-551) -> opers_copiasUsuarios (S-1-5-32-545) -> usuarios

    De este modo, si por ejemplo, se agrega al usuario fulano al grupo admins_dominio, se

    tendr el mismo efecto que si se hiciera lo mismo en Windows agregando al usuario algrupo Admins. del dominio. Esto por supuesto solamente tendr utilidad si Samba seconfigura y utiliza como Controlador Primario de Dominio.

    Alta de cuentas de usuario en Controlador Primario de Dominio.

    Si se configur Samba para funcionar como Controlador Primario de Dominio, sernecesario asignar a root una clave de acceso en Samba, la cual por supuesto puede serdiferente a la del sistema, debido a que las estaciones de trabajo necesitan autenticarprimero con el usuario root de Samba para poder unirse dominio y poder crear de estemodo una cuenta de mquina en el sistema a travs del parmetro add machine script yadescrito anteriormente.

    Los usuarios es necesario darlos de alta de modo que queden agregados a los quecorrespondan en el sistema a grupos Usuarios y Usuarios del dominio de Windows, esdecir a los grupos usuarios y usuarios_dominio.

    useradd -s /sbin/nologin -G usuarios,usuarios_dominio usuario-windowssmbpasswd -a usuario-windows

    Si el usuario ya existiese, solo ser necesario agragarlo a los grupos usuarios yusuarios_dominio con gpassswd del siguiente modo:

    gpasswd -a usuario-windows usuariosgpasswd -a usuario-windows usuarios_dominio

    En teora en el directorio definido para el recurso Profiles se deben crear automticamentelos directorios de los usuarios donde se almacenarn los perfiles. De ser necesario esposible generar stos directorios utilizando el siguiente guin:

  • 8/4/2019 Cmo configurar SAMBA

    11/20

    cd /homefor user in *domkdir -p /var/lib/samba/profiles/$userchown $user.$user /var/lib/samba/profiles/$userdone

    Parmetros de configuracin avanzada en el fichero smb.conf

    Anunciando el servidor Samba en los grupos de trabajo.

    La opcin remote announce se encarga de que el servicio nmbd se anuncie a si mismo deforma peridica hacia una red en particular y un grupo de trabajo especfico. Esto esparticularmente til si se necesita que el servidor Samba aparezca no solo en el grupo detrabajo al que pertenece sino tambin otros grupos de trabajo. El grupo de trabajo dedestino puede estar en donde sea mientras exista una ruta y sea posible la transmisinexitosa de paquetes.

    remote announce = 192.168.1.255/MI-DOMINIO 192.168.2.255/OTRO-DOMINIO

    El ejemplo anterior defini que el servidor Samba se anuncie a si mismo al los grupos detrabajo MI-DOMINIO y OTRO-DOMINIO en las redes cuyas IP de transmisin son192.168.1.255 y 192.168.2.255 correspondientemente.

    Ocultando y denegando acceso a ficheros.

    No es conveniente que los usuarios acceder o bien puedan ver la presencia de ficheros

    ocultos en el sistema, es decir ficheros cuyo nombre comienza con un punto,particularmente si acceden a su directorio personal en el servidor Samba (.bashrc,.bash_profile, .bash_history, etc.). Puede utilizarse el parmetro hide dot files paramantenerlos ocultos.

    hide dot files = Yes

    En algunos casos puede ser necesario denegar el acceso a cierto tipo de ficheros delsistema. El parmetro veto files se utiliza para especificar la lista, separada por diagonales,de aquellas cadenas de texto que denegarn el acceso a los ficheros cuyos nombrescontengan estas cadenas. En el siguiente ejemplo, se denegar el acceso hacia los ficheroscuyos nombres incluyan la palabra Security y los que tengan extensin o terminen en.tmp:

    veto files = /*Security*/*.tmp/

    Opciones para cliente o servidor Wins.

  • 8/4/2019 Cmo configurar SAMBA

    12/20

    Puede habilitar convertirse en servidor WINS o bien utilizar un servidor WINS yaexistente. Se puede ser un servidor WINS o un cliente WINS, pero no ambas cosas a al vez.

    Si se va ser el servidor WINS, debe habilitarse lo siguiente:

    wins support = Yes

    Si se va a utilizar un servidor WINS ya existente, debe descomentar lasiguiente lnea y especificar que direccin IP utiliza dicho servidor WINS:

    wins server = 192.168.1.1

    Opciones especficas para Controlador Primario de Dominio (PDC).

    Si se va a configurar Samba como Controlador Primario de Dominio, se debe especificartodos los parmetros descritos a continuacin.

    Si se quiere que las claves de acceso del sistema y Windows se mantengan sincronizadas,es necesario descomentar las siguiente lenas:

    unix password sync = Yespasswd program = /usr/bin/passwd %upasswd chat = *New*UNIX*password* %n\n*ReType*new*UNIX*password* %n\n*passwd:*all*authentication*tokens*updated*successfully*

    El parmetro local master define al servidor como examinador del dominio (o masterbrowser); El parmetro domain master define al servidor maestro del dominio; El

    parmetro preferred master define al servidor como maestro del domino preferido en casode haber ms servidores presentes en el mismo dominio como controladores de dominio; Elparmetro time server se utiliza para definir que las estaciones debern sincronizar la horacon el servidor al unirse al dominio; El parmetro domain logons define que el servidorpermitir a las estaciones autenticar contra Samba.

    local master = Yesdomain master = Yespreferred master = Yestime server = Yesdomain logons = Yes

    La configuracin de Controlador Primario de Dominio requiere adems definir donde sealmacenarn los perfiles de los usuarios. Windows 95, 98 y ME requieren se defina con elparmetro logon home, en tanto que Windows NT, 2000 y XP requieren se haga con elparmetro logon path. Para efectos prcticos y de previsin, utilice ambos parmetros ydefina la unidad H para dicho volumen:

    logon path = \\%L\Profiles\%U

  • 8/4/2019 Cmo configurar SAMBA

    13/20

    logon home = \\%L\%U\.profilelogon drive = H:

    Si se va a utilizar Samba como Controlador Primario de Dominio, es necesario establecer elguin que ejecutarn las estaciones Windows al conectarse hacia el servidor. Esto se hace a

    travs del parmetro logon script el cual puede definir o bien un guin a utilizar por cadausuario (%u.bat) o bien por cada mquina (%m.bat) o bien de modo general para todos(logon.cmd). Para no complicar las cosas, defina inicialmente un guin general para todosdel siguiente modo:

    logon script = logon.cmd

    El fichero/var/lib/samba/netlogon/logon.cmd deber contener algo como lo siguiente:

    REM windows client logon scriptREM

    net time \\mi-servidor /SET /YESnet use H: \\mi-servidor\homes /PERSISTENT:NO

    El Controlador Primario de Dominio va a necesitar tambin se definan los guiones aejecutar para distintas tareas como alta de mquinas, usuarios y grupos as como la baja deestos.

    add user script = /usr/sbin/useradd %uadd machine script = /usr/sbin/useradd -d /dev/null -g 100 -s/bin/false -c "Cuenta de mquina" -M %udelete user script = /usr/sbin/userdel %u

    delete group script = /usr/sbin/groupdel %gadd user to group script = /usr/bin/gpasswd -a %u %gset primary group script = /usr/sbin/usermod -g %g %u

    El parmetro add user script sirve para definir lo que se deber ejecutar en el trasfondo enel sistema para crear una nueva cuenta de usuario. El parmetro add machine script esparticularmente importante porque es el mandato utilizado para dar de alta cuentas demquinas (trust accounts o cuentas de confianza) de modo automtico. El parmetrodelete user script es para definir lo propio para eliminar usuarios, delete group script paraeliminar grupos, add user to group para aadir usuarios a grupos y set primary groupscript para establecer un grupo como el principal para un usuario.

    Directorio para Netlogon y perfiles en Controlador Primario de Dominio (PDC).

    Si se va a utilizar Samba como Controlador Primario de Dominio, es necesario definir losrecursos donde residir netlogon y tambin donde se almacenarn los perfiles de losusuarios:

    [netlogon]comment = Network Logon Service

  • 8/4/2019 Cmo configurar SAMBA

    14/20

    path = /var/lib/samba/netlogonwrite list = @administradores, @admins_dominioguest ok = Yesbrowseable = Yes

    [Profiles]

    path = /var/lib/samba/profilesread only = Noguest ok = Yescreate mask = 0600directory mask = 0700

    Genere con el mandato mkdir los directorios/var/lib/samba/profiles y/var/lib/samba/netlogon. El directorio/var/lib/samba/profiles deber pertenecer a root yal grupo users y tener permiso 1777 a fin de permitir crear el directorio de perfilcorrespondiente para cada usuario.

    mkdir -p -m 1777 /var/lib/samba/profiles

    mkdir -p /var/lib/samba/netlogonchgrp users /var/lib/samba/profiles

    Inciar el servicio y aadirlo al arranque del sistema.

    Si iniciar Samba por primera vez realice lo siguiente:

    /sbin/service smb start

    Si va a reiniciar el servicio, realice lo siguiente:

    /sbin/service smb restart

    Para que Samba inicie automticamente cada vez que inicie el servidor solo ejecute elsiguiente mandato:

    /sbin/chkconfig smb on

    Accediendo hacia Samba.

    Modo texto.

    Smbclient.

    Indudablemente el mtodo ms prctico y seguro es el mandato smbclient. Este permiteacceder haca cualquier servidor Samba o Windows como si fuese el mandato ftp enmodo texto.

  • 8/4/2019 Cmo configurar SAMBA

    15/20

    Para acceder al cualquier recurso de alguna mquina Windows o servidor SAMBAdetermine primero que volmenes o recursos compartidos posee est. utilice el mandatosmbclientdel siguiente modo:

    smbclient -U usuario -L alguna_maquina

    Lo cual le devolvera ms menos lo siguiente:

    Domain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

    Sharename Type Comment--------- ---- -------homes Disk Home Directoriesnetlogon Disk Network Logon Serviceftp Disk ftpIPC$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en

    mi-servidor)ADMIN$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en

    mi-servidor)epl5900 Printer Created by redhat-config-printer 0.6.x

    hp2550bw Printer Created by redhat-config-printer 0.6.xAnonymous login successfulDomain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

    Server Comment--------- -------mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor

    Workgroup Master--------- -------MI-DOMINIO MI-SERVIDOR

    La siguiente corresponde a la sintaxis bsica para poder navegar los recursos compartidospor la mquina Windows o el servidor SAMBA:

    smbclient //alguna_maquina/recurso -U usuario

    Ejemplo:

    smbclient //LINUX/FTP -U jbarrios

    Despus de ejecutar lo anterior, el sistema solicitar se proporcione la clave de acceso delusuariojbarrios en el equipo denominadoLINUX.

    smbclient //LINUX/FTP -U jbarrios

    added interface ip=192.168.1.254 bcast=192.168.1.255nmask=255.255.255.0Password:Domain=[miusuario] OS=[Unix] Server=[Samba 2.2.1a]smb: \>

    Pueden utilizarse virtualmente los mismos mandatos que en el interprete deftp, como seranget, mget, put, del, etc.

  • 8/4/2019 Cmo configurar SAMBA

    16/20

    Por montaje de unidades de red.

    Si necesita poder visualizar desde GNU/Linux a las mquinas con Windows e interactuarcon los directorios compartidos por ests, necesitar realizar algunos pasos adicionales. Demanera predeterminada, y por motivos de seguridad, solo rootpuede utilizar los mandatos

    smbmnty smbumount. Deber entonces establecer permisos de SUID a dichos mandatos.Puede hacerlo ejecutando, como rootlo siguiente:

    chmod 4755 /usr/bin/smbmntchmod 4755 /usr/bin/smbumount

    Para acceder hacia una mquina Windows determine primero que volmenes o recursoscompartidos posee est. utilice el mandato smbclientdel siguiente modo:

    smbclient -N -L alguna_maquina

    Lo cual le devolvera ms menos lo siguiente:

    Anonymous login successfulDomain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

    Sharename Type Comment--------- ---- -------homes Disk Home Directoriesnetlogon Disk Network Logon Serviceftp Disk ftpIPC$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en

    mi-servidor)ADMIN$ IPC IPC Service (Servidor Samba 3.0.7-1.3E en

    mi-servidor)epl5900 Printer Created by redhat-config-printer 0.6.xhp2550bw Printer Created by redhat-config-printer 0.6.x

    Anonymous login successfulDomain=[MI-DOMINIO] OS=[Unix] Server=[Samba 3.0.7-1.3E]

    Server Comment--------- -------mi-servidor Servidor Samba 3.0.7-1.3E en mi-servidor

    Workgroup Master--------- -------MI-DOMINIO MI-SERVIDOR

    En el ejemplo anterior hay un volumen compartido llamado algn_volumen. Si queremosmontar este, debemos crear un punto de montaje. ste puede crearse en cualquier directoriosobre el que tengamos permisos de escritura. Para montarlo, utilizamos entonces la

    siguiente lnea de mandato:

    smbmount //alguna_maquina/algn_volumen /punto/de/montaje/

    Si la mquina Windows requiere un usuario y una clave de acceso, puede aadir a loanterior las opciones -username=el_necesario -password=el_requerido -workgroup=MIGRUPO

  • 8/4/2019 Cmo configurar SAMBA

    17/20

    Si la distribucin de GNU/Linux utilizada es reciente, tambin puede utilizar el ya conocidomandato mountdel siguiente modo:

    mount -t smbfs -o username=el_necesario,password=el_requerido//alguna_maquina/algn_volumen /punto/de/montaje/

    Si se genera una cuentapcguest, similar a la cuenta nobody, podemos montar volmenesSMB sin ingresar una clave de acceso pero con privilegios restringidos, o aquellos quedefinamos a un volumen accedido por un usuario invitado. Esto sera el mtodo poreleccin para compartir volmenes en una red de rea local. Puede generarse una cuentapcguesto bien dejar que el sistema tome al usuario nobody. Si opta por lo primero, solo dede alta la cuenta NO asigne clave de acceso alguna. Montar volmenes remotos comousuarios invitado es muy sencillo. Un ejemplo real sera:

    mount -t smbfs -o guest //LINUX/FTP //var/ftp

    Lo anterior monta un volumen SAMBA de una mquina con GNU/Linux en otra mquinacon GNU/Linux.

    Puede aadirse tambin una entrada en/etc/fstab de modo que slo tenga que ser tecleadomount /punto/de/montaje. Esta lnea sera de modo similar al siguiente:

    //LINUX/FTP /var/ftp smbfs user,auto,guest,ro,gid=100 00

    Recurdese que el volumen compartido debe estar configurado para permitir usuariosinvitados:

    [FTP]comment = Programtica libre (RPMS)path = /var/ftp/pubpublic = Yesguest ok = Yes

    Modo grfico

    Desde el entorno de GNOME.

    Si utiliza GNOME 2.x o superior, ste incluye un mdulo para Nautilus que permiteacceder hacia los recursos compartidos a travs de Samba sin necesidad de modificar cosaalguna en el sistema. Solo hay que hacer clic en Servidores de red en el men deGNOME.

  • 8/4/2019 Cmo configurar SAMBA

    18/20

    Desde Windows.

    Por su parte, desde Windows deber ser posible acceder sin problemas hacia Samba comosi fuese hacia cualquier otra mquina con Windows. Vaya, ni Windows ni el usuarionotarn siquiera la diferencia.

    Uniendo mquinas al dominio del Controlador Primario

    de Dominio.

    El controlador de dominio permite utilizar a Samba como servidor de autenticacin yservidor de archivos que adems permite almacenar el perfil, preferencias y documentos delusuario en el servidor automticamente sin la intervencin del usuario.

    Creando manualmente cuentas de mquinas

    Bajo algunas circunstancias ser necesario crear cuentas de mquinas (trust accounts ocuentas de confianza) a fin de permitir unirse al dominio. el procedimiento es simple:

    /usr/sbin/useradd -d /dev/null -g 100 -s /bin/false -c "Cuentade mquina" -M maquina-windows$smbpasswd -a maquina-windows$

    Es de resaltar que las cuentas de mquinas deben incluir obligatoriamente un smbolo $ alfinal del nombre.

    Windows 95/98/ME y Windows XP Home

  • 8/4/2019 Cmo configurar SAMBA

    19/20

    Ya que los sistemas con Windows 95/98/ME y Windows XP Home no incluyen unaimplementacin completa como miembros de dominio, no se requieren cuentas deconfianza. El procedimiento para unirse al dominio es el siguiente:

    Acceder hacia Men de inicio Configuraciones Panel de control

    Red Seleccione la pestaa de Configuracin

    Seleccione Cliente de redes Microsoft

    Haga clic en el botn de propiedades

    Seleccione Acceder a dominio de Windows NT y especifique el dominiocorrespondiente.

    Clic en todos los botones de Aceptar y reinicie el sistema

    Acceda con cualquier usuario que haya sido dado de alta en el servidorSamba y que adems cuente con una clave de acceso asignada con

    smbpasswd.

    Windows NT

    Crear manualmente la cuenta de mquina como se decribi anteriormente.

    Acceder hacia Men de inicio Configuraciones Panel de control Red.

    Seleccionar la pestaa de Identificacin.

    Clic en el botn de Cambiar.

    Ingrese el nombre del dominio y el nombre del sistema. No selecioneCrear una cuenta de mquina en el Dominio.

    Clic en Aceptar

    Espere algunos segundos.

    Deber mostrarse un mensaje emergente de confirmacin que diceBienvenido a MI-DOMINIO

    Reinicie el sistema

    Acceda con cualquier usuario que haya sido dado de alta en el servidorSamba y que adems cuente con una clave de acceso asignada consmbpasswd.

    Windows 2000/2003 y Windows XP Profesional

    Clic derecho en el icono de Mi PC.

    Seleccionar Propiedades

    Haga clic en la pestaa de Identificacin de red o Nombre delsistema.

  • 8/4/2019 Cmo configurar SAMBA

    20/20

    Clic en el botn de Propiedades.

    Clic en el botn Miembro de dominio

    Ingrese el nombre del dominio y el nombre de la mquina y haga clic enel botn de Aceptar

    Aparecer un dilogo que preguntar por una cuenta y clave de accesocon privilegios de administracin en el servidor. Especifique la root y laclave de acceso que asign a la cuenta de root con el mandato smbpasswd(NO LA CLAVE DE ACCESO DE ROOT EN EL SISTEMA).

    Espere algunos segundos.

    Deber mostrarse un mensaje emergente de confirmacin que diceBienvenido a MI-DOMINIO

    Reinicie el sistema

    Acceda con cualquier usuario que haya sido dado de alta en el servidorSamba y que adems cuente con una clave de acceso asignada con

    smbpasswd.