Abrimos una consola de administrador e instalamos el servidor Samba con apt :
$ apt-get install samba
Al instalarlo te pregunta el grupo, introduce el nombre y recuerdalo que es el grupo al que van a tener que pertenecer los clientes
Listamos todos los usuarios que ya existen en el sistema para cerciorarnos que no duplicamos nombres y números de identificación :
$ cat /etc/passwd
Voy a añadir tres nuevos usuarios por ejemplo “exbian”, “pepe” y “rosa”. Los añadimos como usuarios del sistema, sin crear el directorio de usuario en “/home” y añadiendo los con los números de identificación(UID) 500, 501 y 502 :
$ adduser --system --no-create-home --uid 500 exbian $ adduser --system --no-create-home --uid 501 pepe $ adduser --system --no-create-home --uid 502 rosa
Si queremos borrar un usuario, por ejemplo “pepe” :
$ deluser pepe
Comprobamos que los usuarios “exbian”, “pepe” y “rosa” han sido añadidos correctamente :
$ cat /etc/passwd | grep exbian $ cat /etc/passwd | grep pepe $ cat /etc/passwd | grep rosa
Añadimos los usuarios “exbian” “pepe” y “rosa” a Samba :
$ smbpasswd -a exbian New SMB password: # Introduce contraseña Retype new SMB password: # Introduce contraseña Added user exbian
(Repetimos con los 3 usuarios)
Si queremos cambiar contraseñas al usuario “pepe” :
$ smbpasswd exbian New SMB password: Retype new SMB password:
Si queremos borrar al usuario “pepe” de samba :
$ smbpasswd -x pepe
Comprobamos si hemos añadido correctamente los usuarios :
$ pdbedit -L
1. Lo añadimos en “/etc/samba/smb.conf”.
Podemos hacerlo con nuestro editor de texto favorito. Yo utilizo nano :
$ nano /etc/samba/smb.conf
Y añadimos al final del archivo :
[compartidos] comment = Directorio Compartido path = /mnt/samba read only = yes write list = exbian valid users = exbian,pepe,rosa directory mask = 0775 create mask = 0644
¿Que es lo que he añadido?
"[compartidos]" : Nombre del recurso compartido. "comment" : Descripcion. "path" : Ubicación fisica. "read only = yes" : En general solo permitir lectura. "write list" : Usuarios con permiso de escritura. "valid users" : Usuarios que pueden loguearse. "directory mask" : Define el permisos. "create mask" : Define el permisos.
Podemos añadir tantos recursos compartidos como queramos.
Antes de guardar los cambios en “/etc/samba/smb.conf” tenemos que activar la opción “security = user”. Buscamos la linea
# security = user
Quitamos la '#' y tendría que quedar
security = user
Cuando acabemos CTRL+O para guardar, ENTER para confirmar nombre de archivo, y CTRL+O para salir de nano.
Yo he utilizado como “path” “/mnt/samba” porque tengo un disco duro montado en esa ubicación. Si esta no es tu situación cambia “/mnt/samba” por la ubicación del directorio donde quieras tener tus recursos compartidos. O simplemente crealo :
$ mkdir /mnt/samba
Cambiamos los permisos del directorio que va a contener los directorios compartidos para que cualquiera pueda escribir. No te preocupes samba administra los usuarios con permiso de escritura :
$ chmod 777 /mnt/samba/
1. Comprobamos el /etc/samba/smb.conf con “testparm”.
$ testparm Load smb config files from /etc/samba/smb.conf rlimit_max: rlimit_max (1024) below minimum Windows limit (16384) Processing section "[homes]" Processing section "[printers]" Processing section "[print$]" Processing section "[compartidos]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions
Si aparece “Loaded services file OK” ya tienes tu servidor samba configurado.
2. Reiniciamos el servidor samba, para que las nuevas configuraciones surtan efecto.
$ /etc/init.d/samba restart
Ya tenemos un servidor Samba con un directorio compartido para poder acceder desde cualquier PC de mi red. Daremos un usuario y contraseña a quien correponda para que puedan acceder al servidor.
Para entrar desde Linux con entorno grafico KDE utilizando los navegadores Konqueror o Dolphin simplemente escribir en la barra de direcciones :
smb://usuario@servidor/recurso Un ejemplo en Debian Squeeze
Si te conectas con Internet Explorer escribe en la barra de direcciones :
\\192.168.69.222\compartidos Sustituye "192.168.69.222" por la IP de tu servidor y "compartidos" por el nombre de tu recurso compartido.
Si Tienes usuarios en este PC y no quieres compratir nada de esos usuarios en el servidor como es mi caso, puedes anular el recurso compartido [home] en el archivo de configuración de Samba smb.conf.
1. Por seguridad hacemos la copia de seguridad del original :
$ cp /etc/samba/smb.conf /etc/samba/smb.conf_cds
2. Editamos con nano el original y borramos o almuadillamos el recurso compartido [home].
$ nano /etc/samba/smb.conf
Yo borro todo esto :
[homes] comment = Home Directories browseable = no # By default, the home directories are exported read-only. Change the # next parameter to 'no' if you want to be able to write to them. read only = yes # File creation mask is set to 0700 for security reasons. If you want to # create files with group=rw permissions, set next parameter to 0775 create mask = 0700 # Directory creation mask is set to 0700 for security reasons. If you want to # create dirs. with group=rw permissions, set next parameter to 0775. directory mask = 0700 # By default, \\server\username shares can be connected to by anyone # with access to the samba server # The following parameter makes sure that only "username" can connect # to \\server\username # This might need tweaking when using external authentication schemes valid users = %S
Cuando acabemos de editar CTRL+O para guardar, ENTER para confirmar nombre de archivo, y CTRL+O para salir de nano.
3. Comprobamos el /etc/samba/smb.conf con “testparm”.
$ testparm Load smb config files from /etc/samba/smb.conf rlimit_max: rlimit_max (1024) below minimum Windows limit (16384) Processing section "[printers]" Processing section "[print$]" Processing section "[compartidos]" Loaded services file OK. Server role: ROLE_STANDALONE Press enter to see a dump of your service definitions
Si aparece “Loaded services file OK” ya tienes tu servidor samba bien configurado.
4. Reiniciamos el servidor samba, para que las nuevas configuraciones surtan efecto.
$ /etc/init.d/samba restart