Esta guía explica la instalación y configuración de un servidor Samba en Ubuntu 15.10 (Wiley Werewolf) con recursos compartidos anónimos y seguros de Samba. Samba es una suite de código abierto/software gratuito que proporciona servicios de archivo e impresión sin interrupciones a clientes SMB/CIFS. Samba está disponible gratuitamente, a diferencia de otras implementaciones de SMB/CIFS, y permite la interoperabilidad entre servidores Linux/Unix y clientes basados en Windows.
1 nota preliminar
Tengo un servidor Ubuntu 15.10 recién instalado, en el que voy a instalar el servidor samba. Como sistema cliente Samba, usaré un escritorio de Windows para conectarme al servidor Samba y verificar la configuración. El escritorio de Windows debe estar en la misma red para que pueda llegar al servidor de Ubuntu. El nombre de host de mi servidor Ubuntu es server1.example.com y la IP es 192.168.1.100
Si aún no tiene un servidor Ubuntu, siga este tutorial para obtener una configuración mínima del servidor como base para este tutorial.
Nota:
- La máquina con Windows debe estar en el mismo grupo de trabajo. Para verificar el valor en la máquina con Windows, ejecute el siguiente comando en el indicador cmd:
net config workstation
La salida será así:
Su máquina Windows debe estar en el mismo dominio de estación de trabajo que el servidor Ubuntu, es decir, GRUPO DE TRABAJO en mi caso.
- Para hacer que la máquina de Windows sea accesible en Windows por su nombre de host, proceda así. Abra una terminal de Windows en modo administrador (puede acceder al modo administrador haciendo clic con el botón derecho en el ícono Terminal en el menú del programa) y ejecute el siguiente comando para abrir el archivo de hosts de Windows:
notepad C:\\Windows\System32\drivers\etc\hosts
Ahí agregas la siguiente línea roja y guardas el archivo:
[...]
192.168.1.100 server1.example.com server1
2 Samba compartido anónimo
Samba está disponible en los repositorios de Ubuntu. El primer paso es instalar el Servidor Samba y sus dependencias con apt.
apt-get install -y samba samba-common python-glade2 system-config-samba
Instalará Samba versión 4.1.17-Ubuntu.
Para configurar samba, edite el archivo /etc/samba/smb.conf. Usaré nano como editor y haré una copia de seguridad del archivo original antes de comenzar a cambiarlo. El archivo de respaldo se llama /etc/samba/smb.conf.bak
cp -pf /etc/samba/smb.conf /etc/samba/smb.conf.bak
cat /dev/null > /etc/samba/smb.conf
Abra el archivo de configuración de Samba con nano:
nano /etc/samba/smb.conf
Y agregue las siguientes líneas.
[global] workgroup = WORKGROUP server string = Samba Server %v netbios name = ubuntu security = user map to guest = bad user dns proxy = no
#============================ Share Definitions ==============================
[Anonymous] path = /samba/anonymous browsable =yes writable = yes guest ok = yes read only = no
force user = nobody
Luego crearé un directorio para el recurso compartido anónimo.
mkdir -p /samba/anonymous
Establezca los permisos correctos.
chmod -R 0755 /samba/anonymous/
chown -R nobody:nogroup /samba/anonymous/
Y reinicie Samba para aplicar la nueva configuración.
service smbd restart
Ahora puede acceder al uso compartido de Ubuntu en Windows ingresando "\\servidor1" en el campo de búsqueda de Windows del menú o usar el navegador de red del explorador de archivos de Windows para conectarse al recurso compartido.
Intente cargar un archivo arrastrando y soltando en el recurso compartido para ver si funciona correctamente.
También puede verificar el contenido en el servidor.
ls -la /sambe/anonymous/
[email protected]:/# ls -la /samba/anonymous/
total 8228
drwxr-xr-x 2 nobody nogroup 4096 Oct 30 15:14 .
drwxr-xr-x 3 root root 4096 Oct 30 15:07 ..
-rwxr--r-- 1 nobody nogroup 8414449 Jul 14 2009 Kalimba.mp3
3. Servidor Samba seguro
Para el recurso compartido protegido con contraseña, crearé un grupo smbgrp y un usuario till para acceder al servidor Samba. Usaré "howtoforge" como contraseña en este ejemplo, elija una contraseña personalizada y segura en su servidor.
addgroup smbgrp
useradd till -G smbgrp
smbpasswd -a till
[email protected]:~# smbpasswd -a till
New SMB password:<--howtoforge
Retype new SMB password:<--howtoforge
Added user till.
[email protected]:~#
Ahora cree la carpeta con el nombre "asegurado" en la carpeta /samba y otorgue permisos como este
mkdir -p /samba/secured
cd /samba
chmod -R 0770 secured
chown root:smbgrp secured
Edite el archivo de configuración de Samba y agregue las siguientes líneas (rojas) al final del archivo:
nano /etc/samba/smb.conf
[...]
[secured] path = /samba/secured valid users = @smbgrp guest ok = no writable = yes browsable = yes
service smbd restart
Para verificar la configuración, ejecute este comando:
cd
testparm
[email protected]:~# testparm
Load smb config files from /etc/samba/smb.conf
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
Processing section "[Anonymous]"
Processing section "[secured]"
Loaded services file OK.
Server role: ROLE_STANDALONE
Press enter to see a dump of your service definitions<--ENTER
[global]
netbios name = UBUNTU
server string = Samba Server %v
map to guest = Bad User
dns proxy = No
idmap config * : backend = tdb
[Anonymous]
path = /samba/anonymous
read only = No
guest ok = Yes
[secured]
path = /samba/secured
valid users = @smbgrp
read only = No
[email protected]:~#
En la máquina con Windows, abra "\\server1" dispositivo de red nuevamente, solicitará un nombre de usuario y una contraseña ahora. Ingrese los detalles de usuario que creó anteriormente. En mi caso, los valores fueron user=till y contraseña=cómoforjar.
Podemos verificar el archivo en el servidor de Ubuntu de esta manera:
ls -la /samba/secured/
[email protected]:~# ls -la /samba/secured/
total 64
drwxrwx--- 2 root smbgrp 4096 Oct 30 15:33 .
drwxr-xr-x 4 root root 4096 Oct 30 15:23 ..
-rwxr--r-- 1 till till 57113 Oct 13 2012 OptimizationReport.htm
Ahora tenemos un servidor Samba configurado correctamente con un recurso compartido anónimo y seguro en Ubuntu 15.10 :)
4 Enlaces
- Ubuntu: http://www.ubuntu.com/
- Samba: http://www.samba.org/samba/