1 - Vamos a instalar SAMBA para así poder compartir carpetas que están en nuestra PC con Linux como Sistema Operativo y poder accederlas desde dispositivos con Windows, OSX(MacOS) o teléfonos si le agregamos el cliente SMB en Android o IOs de Iphone.
2 - Para ver si SAMBA quedó instalado y activado pueden usar el comando:
systemctl status smbd
Para salir de esto y llegar otra vez al prompt de Linux se hace con ctrl+c
3 - Una vez instalado crearemos un usuario para SAMBA. Se hace con el siguiente comando:
sudo smbpasswd -a serverdebian
y presionan Enter
luego el sistema les pedirá 2 veces la contraseña a usar.
Ustedes deben reemplazar "serverdebian" por el usuario que quieran usar en SAMBA
El usuario que creen en Samba debe existir en Debian o el Linux que usen.
4 - El comando testparm es una utilidad de línea de comandos utilizada principalmente en el paquete Samba para verificar la corrección interna y la sintaxis del archivo de configuración smb.conf
5 - Lo que haremos de aquí en más es verificar con lsblk si tenemos un disco para destinarle a SAMBA y allí guardar archivos compartibles.
En la imagen de abajo nos muestra que hay un recurso de 10gb que no está montado en un directorio. A este recurso lo vamos a montar en un directorio y le vamos a dar los permisos para compartirlo y ademas configurar en SAMBA para que lo comparta y lo podamos ver en máquinas Windows, MacOS, teléfonos Android o IOs de Iphone
6 - Con el comando lsblk - f vamos a conocer el UUID de los discos y con esto podríamos luego editar el archivo fstab para montarlo en un directorio del sistema.
7 - El próximo paso es editar el archivo fstab que está en /etc/. Pero primero vamos a crear un backup de fstab así tenemos un vuelta atrás si cometemos un error insalvable. Si cometemos ese error iniciamos con una usb con linux y restauramos el archivo de respaldo.
Procedemos haciendo un backup con el comando cp.
8 - Para verificar si el archivo de respaldo creado está allí nos ayudamos del comando ls y le ponemos el comodin * al final del nombre del archivo así lista todos los con parte del nombre igual.
ls /etc/fstab*
En la imagen de abajo se ve listado el archivo recién creado junto al original.
9 - Una vez tomadas las precauciones abrimos con nano el archivo fstab así:
sudo nano /etc/fstab
La imagen de abajo muestra las particiones que ahora están montadas, que en este caso solo es raiz / porque es una máquina creada con una partición para este curso.
10 - Como muestra la imagen de abajo vamos a copiar en el archivo fstab la UUID que conseguimos primero con el comando lsblk y luego le agregamos el directorio en donde será montado y el formato de sistema de archivos, en este caso el ext4 de Linux.
Realizados los cambios guardamos con ctrl+o y luego salimos con ctrl+x
11 - Con el comando cd nos iremos a /mnt, luego allí crearemos con el comando mkdir el directorio samba, abajo pongo los comandos y se entiende que después de escribir cada uno se presiona Enter.
cd /mnt
sudo mkdir samba
Aquí pedirá contraseña de administrador. Luego listamos para ver el directorio con:
ls
Con esto ya tenemos en el directorio /mnt/ un directorio llamado samba para allí montar el disco que habíamos cargado en fstab.
12 - Ahora nos queda montar el disco en el directorio creado y para eso usamos el comando:
sudo systemctl daemon-reload
Colocamos la contraseña de administrador de Linux y presionamos autenticar.
13 - Ahora otra vez usamos el comando lsblk y nos mostrará el disco montado en /mnt/samba
Aclaración: En Debian-Mate hay una forma fácil de hacerlo con la herramienta Disco, pero el tema es que de esa forma no se aprende para hacerlo en un servidor que no tenga un Entorno de Escritorio.
14 - Ahora nos vamos a enfocar en darle los permisos a ese directorio en donde está montado el disco para que puedan allí guardar archivos los que estén logueados con las credenciales(o sea el que tenga el usuario y contraseña) en SAMBA. Para eso con el comando cd nos vamos a ir hasta el directorio /mnt y allí con el comando ls -a vamos a comprobar quién es el "dueño" de ese recurso que como no lo modificamos y fue creado por el administrador con sudo el dueño es root, pero lo vamos a ver.
Luego cambiamos al dueño del recurso y lo pasamos a que nuestro usuario serverdebian sea el propietario, para eso usamos el comando chown así:
sudo chown serverdebian:serverdebian samba
Luego hicimos un ls -l para verificar si los cambios se realizaron.
15 - En este punto cambiaremos los permisos que tendrá el directorio samba para que los usuarios logueados con las credenciales de Samba puedan crear, modificar, leer y borrar archivos. Con el comando chmod modificamos los permisos para el directorio samba
sudo chmod 770 -R samba
16 - Entramos al directorio /mnt/samba, hacemos un ls para listar archivos y no se ve ninguno. Luego creamos un archivo vacío llamado pepe.txt con el comando touch. Listamos otra vez para ver si se creo y vemos el propietario y permisos del archivo.
17 - Ahora con el disco montado y los permisos configurados solo nos resta modificar el archivo de configuración de samba que se llama smb.conf y que está en /etc/samba/
Con nano abrimos el archivo para modificarlo:
sudo nano /etc/samba/smb.conf
cd /mnt
sudo mkdir samba
Aquí pedirá contraseña de administrador. Luego listamos para ver el directorio con:
ls
Con esto ya tenemos en el directorio /mnt/ un directorio llamado samba para allí montar el disco que habíamos cargado en fstab.
12 - Ahora nos queda montar el disco en el directorio creado y para eso usamos el comando:
sudo systemctl daemon-reload
Colocamos la contraseña de administrador de Linux y presionamos autenticar.
13 - Ahora otra vez usamos el comando lsblk y nos mostrará el disco montado en /mnt/samba
Aclaración: En Debian-Mate hay una forma fácil de hacerlo con la herramienta Disco, pero el tema es que de esa forma no se aprende para hacerlo en un servidor que no tenga un Entorno de Escritorio.
14 - Ahora nos vamos a enfocar en darle los permisos a ese directorio en donde está montado el disco para que puedan allí guardar archivos los que estén logueados con las credenciales(o sea el que tenga el usuario y contraseña) en SAMBA. Para eso con el comando cd nos vamos a ir hasta el directorio /mnt y allí con el comando ls -a vamos a comprobar quién es el "dueño" de ese recurso que como no lo modificamos y fue creado por el administrador con sudo el dueño es root, pero lo vamos a ver.
Luego cambiamos al dueño del recurso y lo pasamos a que nuestro usuario serverdebian sea el propietario, para eso usamos el comando chown así:
sudo chown serverdebian:serverdebian samba
Luego hicimos un ls -l para verificar si los cambios se realizaron.
15 - En este punto cambiaremos los permisos que tendrá el directorio samba para que los usuarios logueados con las credenciales de Samba puedan crear, modificar, leer y borrar archivos. Con el comando chmod modificamos los permisos para el directorio samba
sudo chmod 770 -R samba
16 - Entramos al directorio /mnt/samba, hacemos un ls para listar archivos y no se ve ninguno. Luego creamos un archivo vacío llamado pepe.txt con el comando touch. Listamos otra vez para ver si se creo y vemos el propietario y permisos del archivo.
17 - Ahora con el disco montado y los permisos configurados solo nos resta modificar el archivo de configuración de samba que se llama smb.conf y que está en /etc/samba/
Con nano abrimos el archivo para modificarlo:
sudo nano /etc/samba/smb.conf
18 - Una vez abierto el archivo con nano nos vamos a ir al final con las tecla AvPag o con la flecha para abajo. Allí escribiremos lo siguiente:
[Compartido]
path = /mnt/samba
browseable = yes
writable = yes
create mask = 644
directory mask = 755
valid users = serverdebian
Recuerden de poner su usuario creado en Samba en vez de serverdebian
19 - Luego reiniciamos los servicios de Samba con los siguientes comandos, en los que pedirá autentificación:
sudo systemctl restart nmbd
sudo systemctl restart smbd
20 - Podemos hacer un testparm para ver la integridad del archivo de configuración smb.conf que modificamos antes. El comando es:
tesparm
Lo que se ve es lo siguiente:
Recuerden de poner su usuario creado en Samba en vez de serverdebian
19 - Luego reiniciamos los servicios de Samba con los siguientes comandos, en los que pedirá autentificación:
sudo systemctl restart nmbd
sudo systemctl restart smbd
20 - Podemos hacer un testparm para ver la integridad del archivo de configuración smb.conf que modificamos antes. El comando es:
tesparm
Lo que se ve es lo siguiente:
21 - Ya quedó configurado lo que tanto les cuesta a muchos configurar Samba y que esta "cosa" funcione. Ahora abriremos Caja en Debian Mate que es el administrador de archivos o sea como el Explorer de Windows.
22 - Abierto Caja nos mostrará el recurso en Red como se ve abajo:
23 - Si hacen doble clic sobre el recurso, que en este caso es SERVERDEBIAN van a ver la ventana donde le piden loguearse con usuario y contraseña.
24 - Aquí ingresados con usuario y contraseña vemos el recurso que habíamos llamado Compartido
25 - Aquí vemos el archivo creado con touch que se llama pepe.txt
26 - Para agregar el recurso en Windows nos vamos al Explorer y allí nos posicionamos arriba de Este Equipo y con botón derecho elegimos "Conectar a unidad de red".
27 - En la ventana que se abre cargamos los datos del recurso compartido como se ve en la imagen de abajo.
28 - En la ventana que se abre debemos introducir usuario y contraseña.
Yo les recomiendo a profesionales que trabajan con archivos con muchas horas de trabajo a que se hagan un servidor de archivos con Debian y guarden allí los archivos que tanto costó hacer. Es difícil que los virus entren a los Linux cuando están bien configurados. En mi caso yo no guardo ningún archivo en un disco de Windows aunque están creado con programas de ese sistema operativo.
Incluso se puede configurar Linux para que cada ciertas horas o una vez al día haga un backup de los archivos en una partición en donde no tengan permisos los usuarios de Samba. Con un script también se puede montar un disco, se hace el backup y luego se lo desmonta y de esa forma queda aún a más resguardo.
Aquí damos por terminado este tutorial para instalar Samba, aunque como dije podrían instalar en el teléfono un cliente SMB y acceder al disco compartido para guardar archivos que ocupan lugar o como respaldo de lo que tienen en el teléfono.
No hay comentarios:
Publicar un comentario