Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
|
sistema:linux:samba [2010/04/04 11:19] alfred |
— (actual) | ||
|---|---|---|---|
| Línea 1: | Línea 1: | ||
| - | ====== Samba ====== | ||
| - | * Podemos volver a la pantalla donde configuramos Samba cuando lo instalamos mediante el comando //sambaconfig//. | ||
| - | ===== Demonios ===== | ||
| - | * **smdb** Maneja los recursos compartidos cliente-servidor Samba (impresión, visualización, compartición...). | ||
| - | * **nmbd** Servidor de nombres que emula la funcionalidad de un servidor WINS y NetBIOS. | ||
| - | ===== smb.conf ===== | ||
| - | * **/etc/samba/smb.conf** es el fichero de configuración de Samba. | ||
| - | * Los # y los ; son los comentarios. | ||
| - | * Una vez modificado necesitarás reiniciar el sistema con: ///etc/init.d/samba restart// | ||
| - | |||
| - | ==== Zonas ==== | ||
| - | * **[global]**, donde irá la información usada por todos los usuarios. | ||
| - | * **workgroup**, grupo de trabajo. | ||
| - | * **encrypt passwords**, si vamos a usar en redes con windows de versión mayor a la 98. | ||
| - | * **netbios name**, nombre netbios. | ||
| - | * **hosts allow** indica el rango de ips permitidas para conectarse a la máquina. Para indicar un rango se hace '192.168.1.' y de esta forma entrarían todos con ip 198.168.1.x: | ||
| - | * hosts allow = 192.168.1. 127. | ||
| - | * **[etiqueta directorio]**, para cada directorio que decidamos compartir. | ||
| - | * **path**, ruta del directorio que compartiremos. | ||
| - | * **read only = [yes|no]** indicará si el directorio usado es de solo lectura. | ||
| - | * **guest ok = [yes|no]** indicará si permitimos o no al usuario invitado entrar en nuestro sistema. | ||
| - | * **browsable = [yes|no]** si podrá ser visto en la lista de recursos compartidos. | ||
| - | |||
| - | ==== Ejemplo ==== | ||
| - | <code> | ||
| - | [global] | ||
| - | workgroup = MICASA | ||
| - | encrypt passwords = yes | ||
| - | netbios name = arturito | ||
| - | hosts allow = 192.168.1. 127. | ||
| - | [docs] | ||
| - | path = /home/alfred/myDir | ||
| - | browseable = no | ||
| - | read only = yes | ||
| - | guest ok = no | ||
| - | </code> | ||
| - | |||
| - | |||
| - | ===== Programas relacionados ===== | ||
| - | * **smbclient** es un programa que, al estilo ftp, puedes conectarte a recursos samba. Por ejemplo, lo usariamos: //smbclient \\\\192.168.1.2\\Downloads// o lo que es lo mismo: //<nowiki>smbclient //192.168.1.2/Downloads</nowiki>// | ||
| - | * **smbstatus** es un programa que te reporta el estado de las conexiones samba actuales. | ||
| - | * **testparm** es un programa que valida la sintaxis del fichero de configuración de samba. | ||
| - | * **smbpasswd** programa para enlazar usuarios\contraseñas del sistema samba. (//smbpasswd -a <usuario>//) El usuario será creado para samba y debe existir en windows. | ||
| - | === smbclient === | ||
| - | Internamente, dentro de smbclient podemos utilizar distintos comandos: | ||
| - | * **get <nombre de archivo>** copia un archivo a local. | ||
| - | * **put <nombre de archivo>** copia un archivo desde local al ordenador accedido. | ||
| - | * **mget <mascara>**, la máscara puede ser, por ejemplo, un *, recoge los archivos que coinciden con la máscara. | ||
| - | * **ls**, **cd** moverse por los directorios. | ||
| - | |||
| - | ===== Pasos para acceder desde windows a un recurso compartido ===== | ||
| - | - Editar el fichero smb.conf | ||
| - | - Configurar la máquina local | ||
| - | - Configurar los directorios compartidos | ||
| - | - Añadir un usuario al sistema | ||
| - | - Reiniciar el servicio | ||
| - | |||
| - | |||
| - | |||
| - | ===== Montar carpetas compartidas ===== | ||
| - | Para poder hacer esto necesitamos tener instalado el paquete **smbfs**, luego, para desmontar podemos usar de igual manera el **umount**. | ||
| - | |||
| - | El paquete nos instala un nuevo comando: //smbmount// que es el que nos permite montar mediante la siguiente sintaxis: | ||
| - | * **<nowiki>smbmount //192.168.1.2/Downloads /mnt -o password=hola</nowiki>**. | ||
| - | * **<nowiki>smbmount //192.168.1.2/Downloads /mnt -o passwd=hola</nowiki>**. | ||
| - | |||
| - | Aunque también nos permite añadir (o utilizar en el archivo fstab) un nuevo tipo: el //smbfs//. | ||
| - | * **<nowiki>mount -t smbfs -o password=hola //192.168.1.2/Downloads /mnt</nowiki>** | ||
| - | |||
| - | Luego, con hacer //umount /mnt// ya estaría desmontada. | ||
| - | |||
| - | Para **montar al iniciar el sistema** tendremos que añadir una línea al ///etc/fstab//: | ||
| - | <code> | ||
| - | //192.168.1.2/Downloads /mnt/smb smbfs credentials=/etc/cred 0 0 | ||
| - | </code> | ||
| - | Y, por lo tanto en este caso, crear el fichero /etc/cred con lo siguiente: | ||
| - | <code> | ||
| - | username = alfred | ||
| - | password = alfredspass | ||
| - | </code> | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== CIFS ==== | ||
| - | A dia de hoy el //smbfs// parece estar en desuso, para montar una carpeta de red utilizaremos el ''Common Internet File System'': **cifs**. \\ | ||
| - | La utilización de este es idéntica a la del smbfs; también necesitaremos tener instalados los paquetes de samba. \\ | ||
| - | <code> | ||
| - | mount -k cifs //192.168.1.10/APPS /mnt | ||
| - | mount.cifs //192.168.1.10/WWW /mnt -o credentials=/cred | ||
| - | mount.cifs //oz/WWW /home/alfred/public_html -o uid=alfred,pass=thepass | ||
| - | </code> | ||
| - | |||
| - | |||
| - | |||
| - | ===== SWAT ===== | ||
| - | Es una interfaz web para configurar SAMBA de una forma gráfica. | ||
| - | |||
| - | |||
| - | |||
| - | ==== Instalar ==== | ||
| - | <code> | ||
| - | apt-get install swat | ||
| - | </code> | ||
| - | Reiniciamos máquina. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== Acceder ==== | ||
| - | <code> | ||
| - | http://<ip>:901 | ||
| - | </code> | ||
| - | El nombre de usuario y el password tendrán que ser uno de la máquina que se está administrando. Los permisos para ese usuario serán los mismos que tenga para modificar el fichero ''smb.conf''. | ||
| - | |||
| - | |||
| - | |||
| - | |||
| - | |||
| - | ==== Como... ==== | ||
| - | === Crear usuario exclusivo de administración === | ||
| - | Imaginemos que el usuario que queremos crear es ''smbadmin'' para acceder a esta config (desde Ubuntu): | ||
| - | <code> | ||
| - | adduser smbadmin --shell /sbin/nologin --no-create-home | ||
| - | chgrp smbadmin /etc/samba/smb.conf | ||
| - | chmod g+w /etc/samba/smb.conf | ||
| - | </code> | ||
| - | === Añadir una carpeta compartida === | ||
| - | - Vamos al menú ''Shares''. | ||
| - | - Creamos el //share// que queremos, el nombre que pongamos será con el que se comparta. | ||
| - | - En //path// indicamos la ruta de la carpeta. | ||
| - | - Indicamos "//available//", "//guest ok//" y "//browsable//" como //yes//. | ||
| - | La carpeta tendrá que tener los siguientes permisos: | ||
| - | <code> | ||
| - | chown nobody:nogroup smbtest/ | ||
| - | chmod 555 smbtest | ||
| - | </code> | ||
| - | O si queremos que también sea modificable: | ||
| - | <code> | ||
| - | chmod 755 smbtest | ||
| - | </code> | ||
| - | |||
| - | ===== Notas ===== | ||
| - | * En la máquina windows debería de tener activo el puerto **445** para una conexión más ágil. | ||
| - | * Si quisiesemos ver los recursos compartidos de un host: **<nowiki>smbclient -L //192.168.1.2</nowiki>** | ||
| - | * Para utilizar nombres de máquina en vez de ip's (smbclient -L <nowiki>//</nowiki>alfredsp4) ha de existir el archivo ///etc/samba/lmhosts// y en él una referencia como la siguiente: | ||
| - | <code>192.168.1.2 alfredsp4</code> | ||