COMPARTIR ARCHIVOS E IMPRESORAS EN UNA RED LOCAL CON SAMBA EN UBUNTU




Bueno en el post anterior mostré como añadir un  usuario y una contraseña para poder conectarse a las carpetas compartidas en una Red Local ... ahora les detallaré por completo el uso de SAMBA para poder configurar su compartición de archivos e impresoras locales.

¿Qué es Samba?

Samba es un software que permite a tu ordenador con Ubuntu poder compartir archivos e impresoras con otras computadoras en una misma red local. Utiliza para ello un protocolo conocido como SMB/CIFS compatible con sistemas operativos UNIX o Linux , como Ubuntu, pero además con sistemas Windows (XP, NT, 98...), OS/2 o incluso DOS. También se puede conocer como LanManager o NetBIOS.
Si Ubuntu te ha detectado correctamente la red local, que es lo mas habitual, cuando selecciones una carpeta y hagas click en el botón derecho del ratón, si le das a Compartir carpeta, al seleccionar un protocolo se iniciará un proceso automático de descarga desde Internet e instalación de Samba. También se puede instalar de la forma habitual usando Añadir y quitar... o Synaptic

INSTALACIÓN DE SAMBA
Primero instalamos samba :
$ sudo apt-get install samba samba-client smbfs smbclient
esto debería instalar también varias otras dependencias.

HERRAMIENTAS
Tenemos variadas herramientas las cuales podemos utilizar para facilitar la configuración del servidor:
  • system-config-samba : Editor gráfico de configuración.
  • gadmin-samba : Editor gráfico de configuración Avanzado.
  • swat (Samba Web Administration Tool) : Permite administrar samba a través del navegador web en http://localhost:901


MANUALES
  • samba-doc : instala manuales en /usr/share/doc-base/ y /usr/share/doc/samba-doc/ como texto y html
  • samba-doc-pdf : instala manuales en /usr/share/doc-base/ y /usr/share/doc/samba-doc-pdf/ con formato pdf

CONFIGURACIÓN

La configuración del servidor samba se realiza en el archivo /etc/samba/smb.conf el cual podemos modificar de la siguiente manera:
$ sudo nano /etc/samba/smb.conf

MODIFICAR GRUPO DE TRABAJO
Buscamos la línea que diga algo como :
workgroup = MSHOME
y reemplazamos MSHOME por el nombre de nuestro grupo de trabajo.

COMPARTIR UNA CARPETA

Opción 1

Primero debemos crear una carpeta con permisos (por ejemplo) :
$ sudo mkdir /home/publico
$ sudo chmod 755 /home/publico
Luego abrimos la configuración 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.

Opción 2

Para añadir 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/usershares
Y luego agregas los siguientes parámetros a la configuración:
usershare path = /usr/local/samba/lib/usershares
usershare max shares = 10
Finalmente se pueden añadir carpetas en nautilus haciéndole click derecho, opción "opciones de compartición".

COMPARTIR UNIDAD CD-ROM

Abrimos la configuración y le agregamos, al final, algo como esto :
[cdrom]
 comment = Cd Rom Compartido
 path = /media/cdrom0
 public = yes
 writable = no
 browseable = yes
(le agregamos un nuevo parámetro "browseable" esto sirve para ingresar a la maquina por medio de windows y linux de forma remota y ver la carpeta que esta compartida)

COMPARTIR IMPRESORAS

Compartir impresora con Windows
Para compartir una impresora con un ordenador que use Windows seguimos estos pasos:
  • 1. Necesitamos tener CUPS, así que instalamos el paquete cups de los repositorios oficiales de Ubuntu.
  • 2. Instalamos la impresora como está explicado en Instalar la impresora.
  • 3. Escribimos lo siguiente en una terminal:
$ sudo adduser cupsys shadow
$ sudo /etc/init.d/cupsys restart
Haciendo esto podrás logearte en la dirección http://localhost:631 (es el panel donde se administra CUPS), con tu nombre de usuario y contraseña y se reiniciará CUPS.
  • 4. Introducimos la siguiente dirección en el navegador web: http://localhost:631, una vez introducidos nuestro nombre de usuario y contraseña, nos metemos en administración y seleccionamos todas las casillas. Aceptamos y CUPS se reiniciará. Si no se reiniciara, lo cual se vería al salir una página de error en el navegador, pues lo reinicias desde una terminal manualmente:
$ sudo /etc/init.d/cupsys restart
  • 5. Nos vamos al ordenador con Windows y le damos a añadir impresora, seleccionamos impresora en Red, y en el cuadro escribimos:
http://*:631/printers/LaserJet-1200
El * deberás substituirlo por la dirección IP del ordenador conectado con la impresora (del tipo 192.168.1.0), y en vez de LaserJet-1200 deberás introducir el nombre de la impresora, en GNU/Linux no busques algo como nombre de impresora compartida ya que es el mismo nombre que tiene la impresora en el sistema. En Windows tal vez sea necesario instalar la impresora siendo administrador del sistema.
Listo, imprime una página de prueba.

ADMINISTRACIÓN

DAR PERMISOS 
Los usuarios que ingresan a un recurso público, el sistema le da como nombre de usuario nobody y como nombre de grupo nogroup, es así como podemos cambiar el nombre de usuario y nombre de grupo a nuestras carpetas, con el fin de que el sistema también sepa quien es el propietario de esa carpeta:
$ sudo chown nobody:nogroup /home/publico
$ sudo chmod 555 /home/publico
y si queremos que también pueda escribir sobre esta carpeta
$ sudo chmod 755 /home/public
y además debemos decirle a Samba que se lo permita (acuerdate que para que un permiso sea válido, tanto el sistema como Samba deben estar de acuerdo)

CAMBIAR CONTRASEÑA DE UN DOMINIO WINDOWS

Para cambiar la contraseña de un usuario de dominio de Windows no es necesario ir a un PC Windows sino que se puede hacer desde el propio Ubuntu. Para hacerlo sólo hay que abir un terminal y ejecutar este comando:
$ smbpasswd -r WindowsDC -U nombreUsuario
Donde WindowsDC es en este caso la dirección del controlador de dominio de Windows y nombreUsuario el usuario en el dominio.
Al ejecutar el comando pedirá la antigua contraseña en primer lugar y posteriormente pedirá la nueva.
Una vez hecho esto ya podemos hacer login con la nueva contraseña.

AGREGAR USUARIO
Suele pasar que cuando entras desde windows a una carpeta compartida en ubuntu, te pide usuario, puede hacer lo siguiente:
$ sudo smbpasswd -a tu_usuario
si deseas le pones contraseña por motivos de seguridad, y si no necesitas la constraseña solo dale enter.

CAMBIAR CONTRASEÑA DE USUARIO
hora que ya tenemos compartiendo la carpeta, nos queda crear un nombre de usuario y contraseña en el servidor Samba para que el ordenador con Windows pueda acceder a dicha carpeta, para ello abrimos una consola e introducimos:
$ sudo useradd -s /sbin/nologin usuario-windows
Donde usuario-windows es el usuario que va a acceder a la carpeta en Windows. Si /sbin/nologin no existe, probar con /usr/sbin/nologin.
Si no encuentras el fichero nologin, también puedes crear tu usuario normalmente y luego ejecutar la sentencia:
$ sudo passwd -d usuario-windows
A continuación introducimos
$ sudo smbpasswd -a usuario-windows
Y nos pedirá la contraseña que queramos asignar a dicho usuario.

REINICIAR SAMBA
Luego de efectuar algún cambio en el archivo /etc/samba/smb.conf debemos reiniciar samba, para ello :
$ sudo /etc/init.d/samba restart
Ojo en Ubuntu 10.04 LTS y 10.10 el comando anterior no va, debes utilizar este:
$ sudo restart smbd
Con todo lo anterior deberíamos ser capaces de entrar desde un equipo con windows o linux a la carpeta /home/public sin necesidad de tener nombre de usuario ni password:

ACCESO A RECURSOS COMPARTIDOS

Desde Windows

Colocamos en la barra de direcciones de alguna ventana:
\\192.168.3.1\publico
[

Desde Linux

Debemos instalar el paquete samba-client. Luego, abrimos una carpeta y colocamos en la barra de direcciones:
smb://192.168.3.1/publico/
o
smbclient //192.168.3.1/publico/
donde 192.168.3.1 es "la IP privada" del equipo linux que contiene a la carpeta /home/public

0 comentarios:

Publicar un comentario