Presentación de Samba

Click here to load reader

download Presentación de Samba

of 31

Transcript of Presentación de Samba

  • 1. Presentacin de Samba Redes POSIXMatas Leal TC01Maximiliano Montiglio ISBO

2. Qu es Samba? Samba es una aplicacin libre que imitael protocolo de archivos compartidos, qu pose Windows (antes llamado SMB) y sirve para los sistemas de tipo UNIX. Permite que equipos con distros GNU/Linux puedan compartir archivos e impresoras con otros equipos de su red local. De sta manera hace posible que computadoras con GNU/Linux, Mac OS X o Unix en general puedan ser usadas como servidores o acten como clientes 3. Inicios de Samba: Samba es una creacin de Andrew Tridgellen el ao 92. De acuerdo con informacin brindada en la web oficial del software, Tridgell necesitaba montar un espacio en disco en su computadora para un servidor Unix. Esa computadora corra el sistema operativo DOS e inicialmente, utilizaba el sistema de archivos NFS (Network File System) para el acceso. Sin embargo, una 4. La solucin que encontr Tridgell fue sta:escribi un sniffer que permiti analizar el trfico de los datos generado por el protocolo NetBIOS, y haciendo ingeniera inversa en el protocolo SMB (Server Message Block) y lo implement en el Unix. Eso hizo que el servidor Unix apareciera como un servidor de archivos Windows en su PC con DOS. En un principio Samba tom el nombre de SMBserver, y Andrew empez a distribuirlo, pero el tipo no pudo mantener el nombre (porque ya perteneca como nombre de producto de otra empresa), as que intent lo siguiente para buscarle un nuevo nombre desde Unix: $grep i 's.*m.*b' /usr/dict/words 5. Funcionamientos de Samba: Samba implementa los protocolos NetBIOS ySMB/CIFS NetBIOS: protocolo de nivel de sesin que permite establecer sesiones entre dos ordenadoresSMB (Server Message Block): Que permite a los sistemas de Windows compartir ficheros e impresoras (llamado Common Internet File System, CIFS por Microsoft) Samba ofrece los siguientes servicios: Servicios de acceso remoto a ficheros e impresoras. Autenticacin y autorizacin. 6. Samba utiliza dos demonios: smbd y nmdb smdb permite la comparticin de archivos eimpresoras sobre una red SMB, y proporciona autentificacin y autorizacin de acceso para clientes SMB; ofrece los dos modos de comparticin de recursos existentes en Windows Modo basado en usuarios o modo user (propio de los dominios Windows NT o 2000) Modo basado en recursos o modo share (propio de Windows 3.11/95) nmbd permite que el sistema Unix participe en los mecanismos de resolucin de nombres propios de Windows (WINS), lo que incluye Anuncio en el grupo de trabajo Gestin de la lista de ordenadores del grupo de trabajo 7. Otros aspectos Un servidor Samba puede integrar un dominio deWindows Server, tanto si est en funcin PDC (Primary Domain Controller) como si se trata de un miembro del dominio. Adems de esto, puede formar parte de un dominio de Active Directory. Samba funciona en la mayor parte de los sistemas Unix y los que tienen unas caractersticas similares a estos, tanto Solaris como GNU/Linux, o las variaciones de BSD, entre las que destacan el ms que conocido sistema operativo Mac OS X Server del fabricante Apple. 8. En cuanto a su presencia en Linux, los servidoresSamba estn estandarizados y es habitual encontrarse con ellos de forma predeterminada. Esto hace que se haya convertido en una muy buena opcin para la elaboracin de servidores de red, especialmente gracias a las opciones de conectividad que ofrece. En resumen, un servidor de Samba es el que seencarga de la interconexin de equipos de distintos sistemas permitiendo una alta rentabilidad en cuanto al acceso de estos ordenadores. 9. Utilidades adicionales: Samba ofrece ms utilidades; las ms relevantesson: smbclient: es una interfaz que permite a un usuario de un sistema Unix conectarse a recursos SMB y listar, transferir y enviar ficheros. swat (Samba Web Administration Tool) : Es una utilidad para configurar Samba de forma local o remota utilizando un navegador web smbfs sistema de ficheros SMB para Linux: permite montar un recurso SMB ofrecido por un servidor SMB (un sistema Windows o un servidor Samba) en un directorio local winbind permite al sistema UNIX resolver nombres 10. Instalacin de Samba Se necesitar tener instalados los siguientes paquetes:samba: Servidor SMB. samba-client: Diversos clientes para el protocolo SMB. samba-common: Archivos necesarios para cliente y servidor. En CentOS, RedHat, Fedora, etc:$yum -y install samba samba-client samba-common En SO "derivados" de Debian:$ apt-get install samba samba-client smbfs smbclient En ArchLinux y otros SO que usan pacman para instalarpaquetes: $pacman -S samba 11. Opcional Desactivar el Firewall: Es necesario abrir los puertos 135 al 139 por TCP y UDP yel puerto 445 por TCP. Para sto puede usarse directamente las iptables ejecutando lo siguiente: $iptables -A INPUT -m state --state NEW -m tcp -p tcp -dport 135:139 -j ACCEPT $iptables -A INPUT -m state --state NEW -m udp -p udp -dport 135:139 -j ACCEPT $iptables -A INPUT -m state --state NEW -m tcp -p tcp -dport 445 -j ACCEPT service iptables save 12. O bien se puede editar el archivo /etc/sysconfig/iptables: nano /etc/sysconfig/iptables Y se le agrega el siguiente contenido: -A INPUT -m state --state NEW -m tcp -p tcp --dport 135:139 -j ACCEPT -A INPUT -m state --state NEW -m udp -p udp --dport 135:139 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT Para aplicar los cambios, para aplicar los cambios reiniciamos las Iptables:service iptables restart 13. Iniciar los servicios con el sistema: Iniciar el servicio y aadirlo al arranque delsistema. Para iniciar los servicios nmb y smb, ejecutamos: $service nmb start $service smb start Si realiza algn cambio en la configuracin de la opcin netbios name, es necesario reiniciar el servicio nmb, el cual es el encargado de proveer el servidor de nombres para los clientes a travs de NetBIOS sobre IP. service nmb restart 14. Si se va a aplicar algn cambio en cualquier otraopcin de la configuracin, como son los recursos compartidos, slo es necesario reiniciar el servicio smb: $service smb restart Para que los servicios nmb y smb inicienautomticamente junto con el sistema, slo utilizamos los dos siguientes comandos:chkconfig nmb on chkconfig smb on 15. Configuracin La configuracin del servidor samba se realiza en elarchivo /etc/samba/smb.conf el cual podemos modificar de la siguiente manera: $ sudo nano /etc/samba/smb.conf Para modificar el grupo de trabajoBuscamos la lnea que diga algo como : workgroup = MSHOME y reemplazamos MSHOME por el nombre de nuestro grupo de trabajo. 16. Para compartir una carpeta: Opcin 1: Primero debemos crear una carpeta con permisos (por ejemplo) : $ sudo mkdir /home/publico $ sudo chmod 755 /home/publico Luego abrimos la configuracin y le agregamos, al final, algo como esto : [publico] comment = Cosas publicas path = /home/publico public = yes writable = no Las opciones son sugerentes, por ejemplo "public = yes" es para que se pueda acceder a la carpeta cualquier usuario, y "writable = no" es para que no se pueda escribir. 17. Opcin 2Para aadir los recursos con nautilus (navegador de archivos) debemos crear la siguiente carpeta con sus respectivos permisos: $ sudo mkdir -p /usr/local/samba/lib/usershares $ sudo chgrp sambashare /usr/local/samba/lib/usershares $ sudo chmod 1770 /usr/local/samba/lib/usersharesY luego agregas los siguientes parmetros a la configuracin: usershare path = /usr/local/samba/lib/usershares usershare max shares = 10 Finalmente se pueden aadir carpetas en nautilus 18. Opcin 3 (Ubuntu, y algunos Linux con gnome)Nos dirigimos al men de Ubuntu: Sistema, Administracin y seleccionamos Carpetas compartidas. Pulsamos aadir (en la imagen yo ya tengo aadida una carpeta, pero t deberas tenerla en blanco) y nos aparecer una imagen como la inferior.En ruta, buscamos la carpeta que queremos compartir, como nombre pondremos Compartidos (por ejemplo) y seleccionamos Permitir examinar la carpeta. Pulsamos sobre Configuracion general de archivos compartidos con Windows, en Dominio introducimos el nombre de red que 19. Compartir la Unidad de CDROM: Abrimos la configuracin y le agregamos, al final, algocomo esto : [cdrom] comment = Cd Rom Compartido path = /media/cdrom0 public = yes writable = no browseable = yes (le agregamos un nuevo parmetro "browseable" esto sirve para ingresar a la maquina por medio de windows y linux de forma remota y ver la carpeta que esta compartida) 20. Compartir impresora con Windows Compartir impresoras en Samba es muy sencillosimplemente busca estas dos lneas en el archivo /etc/samba/smb.conf (Recuerda hacer una copia de respaldo) : printing = cups printcap name = cups Guarda el archivo cimprueba los parmetros desmb.conf y reinicia el servidor de Samba 21. Parmetros de configuracin: Globales: check password script : permite definir un script que verificar la complejidad de la contrasea definida, retornando 0 si es aprobada por el programa indicado debug uid : permite registrar los uid, gid, euid y egid del usuario que solicita un recurso en el log del servidor domain master : habilita a nmbd con un nombre NetBios especfico que lo identifica como maestro de dominio del grupo de trabajo indicado guest account : usuario utilizado para acceder a los recursos que tienen definido "guest ok" include : incluye otro archivo de configuracin complementario debuglevel o log level : permite definir el nivel de detalle del log; incluso por mdulo: all ,tdb ,printdrivers ,lanman ,smb ,rpc_parse ,rpc_srv ,rpc_cli ,passdb ,sam ,auth ,winbind ,vfs ,idmap ,quota ,acls ,locking ,msdfs ,dmapi ,registry map to guest : le indica al servidor la accin a tomar cuando falla el inicio de sesin de un usuario. intil en security = share o server max log size : tamao mximo del log message command : le indica al servidor la accin al recibir un mensaje tipo WinPopup netbios name : nombre netbios del servidor samba null passwords : permite el acceso a usuarios con contraseas vacas panic action : comando a realizar al caerse smbd o nmbd prefered master o preferred master : indica si samba es preferencialmente maestro en el grupo de trabajo security : determina cmo los clientes responden el logeo (usuario y contrasea) segn el "security mode bit" enviado en las negociaciones de protocolo. share : clientes se registran al solicitar un recurso (permite ver la lista de recursos para visitas) user : clientes se registran al solicitar la lista de recursos o solicitar un recurso domain : idntico al anterior, pero los datos de registro se consultan con controlador de dominio server : idntico al anterior, pero los datos de registro se consultan con servidor SMBserver string : texto desplegado como nombre completo del servidor 22. Usershares: Parmetros de configuracin aplicables a las carpetas compartidas a travs de nautilus ("Opciones de comparticin"): usershare allow guests : las carpetas compartidas sern accedidas por los usuarios sin registrarse usershare max shares : nmero mximo de carpetas compartidas por usuario usershare owner only : permite compartir slo las carpetas pertenecientes al usuario usershare path : ruta donde se almacenan las carpetas compartidas por cada usuario (los permisos de la carpeta indicada controlan quienes pueden compartir a travs de este medio) usershare prefix allow list : lista separada por comas de las rutas absolutas permitidas para compartir (incluye 23. Recursos administrative share : recurso administrativo. creado por defecto en sistemas MS. Por Ejemplo: C$ , D$ , IPC$. admin users : lista de usuarios con total permiso sobre los recursos (no aplica si secury = share) browsable o browseable : define si el recurso es apreciable en la lista de recursos del servidor comment : permite definir un comentario aplicado al recurso, desplegable en los recursos de toda la red; a travs de net view o de smbclient create mode o create mask : permite restringir los permisos de los archivos/directorios creados en un recurso a travs de una mscara de permisos force create mode : permite aplicar permisos a los archivos/directorios creados en un recurso directory mode o directory mask : similar a create mode o create mask, aplicado a directorios force directory mode : similar a force create mode, aplicado a directorios directory security mask : mascara de permisos aplicado a clientes Windows NT. group o force group : grupo utilizado como gid del usuario conectado user o force user : usuario utilizado como uid del usuario conectado guest ok : permite acceder a un recurso sin identificarse only guest o guest only : permite acceder slo a usuarios sin identificacin. requiere el parmetro "guest ok" allow hosts o hosts allow : lista de equipos permitidos de acceder al recurso. puede aplicar como global deny hosts o hosts deny : lista de equipos no permitidos de acceder al recurso. puede aplicar como global invalid users : lista de usuarios no permitidos de acceder al recurso only user : permite el acceso slo a los usuarios en la lista user directory o path : ruta del recurso indicado read list : lista de usuarios que tienen acceso de slo lectura read only o writeable : no se permite crear ni modificar los archivos/directorios del recurso user , users o username : usuarios con los cuales se probar la contrasea entregada valid users : lista de usuarios permitidos de acceder al recurso 24. Permisos: Gestin de usuarios de Samba: La gestin de usuarios de samba se realiza con el comando smbpasswd. Con dicho comando, entre otras cosas podremos crear y eliminar usuarios, cambiar su contrasea, etc. Creacin de un usuario de Samba: Para crear un usuario de samba debemos utilizar el comando smbpasswd, pero antes debemos haber creado el usuario en Unix. Ejemplo, supongamos que queremos crear en Unix al usuario ulises: sudo useradd ulises Si deseamos que Ulises pueda disfrutar de los servicios del Sambita, debemos crear a Ulises como usuario de samba ejecutando el siguiente comando: sudo smbpasswd -a ulises Con la opcin -a indicamos que aada al usuario. Acto seguido nos preguntar dos veces la contrasea que deseamos poner al usuario. Lo razonable es que sea la misma contrasea que tiene 25. Eliminar un usuario de samba:Para eliminar un usuario de samba debemos ejecutar smbpasswd con la opcin -x, ejemplo:sudo smbpasswd -x ulises Inmediatamente el usuario habr desaparecido de la base de datos de 'usuarios samba' aunque seguir siendo un usuario de Unix. Otras opciones de smbpasswd: -d: Deshabilitar un usuario -e: Habilitar un usuario -n: Usuario sin password. Necesita parmetro nullpasswords = yes en seccin 'global' del archivo de configuracin de Samba. 26. Gestin de grupos y permisos con Samba: La gestin de grupos y permisos de usuarios y gruposes sustancialmente diferente en Sistemas Unix y en Sistemas Microsoft Windows. En los Sistemas Unix, la gestin de los permisos quelos usuarios y los grupos de usuarios tienen sobre los archivos se realiza mediante un sencillo esquema de tres tipos de permisos (lectura, escritura y ejecucin) aplicables a tres tipos de usuarios (propietario, grupo propietario y resto). Este sencillo esquema se desarroll en los aos 70 y an hoy resulta adecuado para la gran mayora de los sistemas en red que podamos encontrar en cualquier tipo de organizacin, desde pequeas redes a las ms grandes. Es cierto que tiene algunas limitaciones pero la ventaja de ser sencillo hace que su 27. En los Sistemas Microsoft Windows, la gestin de lospermisos que los usuarios y los grupos de usuarios tienen sobre los archivos, se realiza mediante un complejo esquema de listas de control de acceso (ACLs = Access Control Lists) para cada carpeta y cada archivo. El sistema de ACLs tiene la ventaja de ser mucho ms flexible que el sistema Unix ya que se pueden establecer ms tipos de permisos, establecer permisos solo a algunos usuarios y algunos grupos, denegar permisos, etc..., pero como hemos comentado anteriormente, en la mayora de los casos, con las prestaciones del Sistema Unix es suficiente. En el lado contrario, el sistema de ACLs es ms complejo de administrar y ms lento ya que antes de acceder a las carpetas o archivos, el sistema debe comprobar listas mientras que en Unix hace una operacin lgica de los 28. Samba tiene tambin implementado el sistema de ACLsy se gestiona utilizando el comando smbcacls, no obstante, la recomendacin es utilizar el sistema de gestin de permisos de Unix. Aunque existan carpetas compartidas con samba, en ltima estancia imperan los permisos de Unix. Por ejemplo, si tenemos compartida una carpeta llamada 'profesores' con permisos de escritura para el grupo profesores, todos los usuarios que pertenezcan al grupo profesores podrn realizar cambios en la carpeta, pero si dentro de dicha carpeta existe otra llamada 'confidencial' sobre la cual no tiene permiso para entrar el grupo profesores, ningn profesor podr ver su contenido aunque est dentro de una carpeta compartida. Para realizar una gestin eficaz de usuarios, grupos ypermisos, se recomienda utilizar los permisos de Unix que permiten asignar permisos de lectura, escritura y 29. Bibliografa: http://es.tldp.org/Manuales-LuCAS/USANDOSAMBA/usando-samba.pdf http://www.ecured.cu/index.php/Samba_(Programa) http://es.wikipedia.org/wiki/Samba_(programa) http://es.overblog.com/Que_es_el_servidor_Samba_Definicion_del_ex perto-1228321779-art381293.html http://www.osmosislatina.com/linux/win_samba.htm http://www.lugro.org.ar/biblioteca/articulos/samba.html http://www.informatica.us.es/~ramon/articulos/Seminario Samba.pdf http://www.ac.usc.es/docencia/ASRI/Tema_6html/node28 .html 30. http://www.informatica-hoy.com.ar/softwarelinux/Servidor-Linux-Samba.php http://recursostic.educacion.es/observatorio/web/fr/soft ware/servidores/264-configuracion-basica-de-samba http://gistsnip.com/2009/05/27/install-samba-in-archlinuxpacman/ http://www.alcancelibre.org/staticpages/index.php/com o-samba-basico http://www.guia-ubuntu.com/index.php?title=Samba http://trauko.wordpress.com/2007/09/17/instalandosamba-en-ubuntu-para-compartir-archivos-eimpresoras-en-redes-windows/ http://www.logadmin.net/2007/01/un-mini-howto-de-lospermisos-en-samba_5333.html 31. Material de investigacin extra: http://es.wikipedia.org/wiki/Windows_Internet_Naming_S ervice http://es.wikipedia.org/wiki/NetBIOS http://es.wikipedia.org/wiki/BSD http://es.wikipedia.org/wiki/SMB http://es.wikipedia.org/wiki/File_Transfer_Protocol http://es.wikipedia.org/wiki/Ingenier%C3%ADa_inversa http://es.wikipedia.org/wiki/Gnu http://es.wikipedia.org/wiki/Sniffer http://es.wikipedia.org/wiki/Demonio_(inform%C3%A1tica ) http://blog.desdelinux.net/cups-como-usar-y-configurarlas-impresoras-de-forma-facil/