Samba, VNC y cambio de contraseña en Raspberry Pi

En el primer arranque de nuestra raspberry pi (a partir de ahora rpi) con Raspbian vamos a cambiar la contraseña que viene por defecto para el usuario pi , habilitar SAMBA y NFS, para poder compartir recursos de la red, y VNC para poder controlar de forma remota el escritorio de la rpi y así no tener la necesidad de estar delante de la televisivo o monitor para trabajar con ella.

Habilitando servicios

La primera vez necesitamos tener conectada la rpi al televisor o monitor junto a un teclado y un ratón.

Vamos a poner en marcha ssh y vnc.

En pixel (escritorio por defecto en Raspbian) lo haremos desde Herramientas -> Configuración Raspberry Pi->Interfaces activamos las dos opciones.

Si no tenemos un entorno de escritorio, si hemos instalado Raspbian Lite por ejemplo, lo haremos desde la terminal:

El usuario por defecto es pi

Y la contraseña raspberry

 sudo raspi-config

En la ventana que aparece seleccionamos Interfaces Options

Elegimos el servicio que deseamos habilitar

Seleccionamos Si

A partir de ahora ya podemos conectamos mediante ssh a la rpi.

Para averiguar que dirección ip tiene la rpi en pixel, bastará con pasar con el raton por encima del icono de red de la barra de estado.

Si no tenemos instalado el entorno gráfico, podemos averiguar la dirección ip desde la consola :

 ificonfig -a

Lo ideal es darle un dirección ip fija a la rpi en el router.

Cambiar la contraseña de usuario

Para conectarnos a la rpi, abrimos una terminal y escribimos:

 ssh -X pi@direccion_ip_rpi

El argumento -X es para poder lanzar aplicaciones gráficas desde la consola. Cambiamos la contraseña al usuario pi.

 passwd

Actualizar el sistema

Desde la consola ejecutamos:

 sudo apt-get update && sudo apt-get upgrade -y

Montar disco duro externo de forma automática

Creamos la carpeta donde se montará el disco

 sudo mkdir /media/Nas01

Averiguamos el UUID y el TYPE (sistema de ficheros) de nuestro disco

sudo blkid
/dev/mmcblk0: PTUUID="fbaa6d83" PTTYPE="dos"
/dev/mmcblk0p1: LABEL="boot" UUID="70CE-EB76" TYPE="vfat" PARTUUID="fbaa6d83-01"
/dev/mmcblk0p2: UUID="f2100b2f-ed84-4647-b5ae-089280112716" TYPE="ext4" PARTUUID="fbaa6d83-02"
/dev/sda1: LABEL="Nas_01" UUID="9bd4f982-0898-418c-b0ed-be29c2fac1c9" TYPE="ext4" PARTUUID="00013875-01"

En mi caso es UUID=”9bd4f982-0898-418c-b0ed-be29c2fac1c9

Editamos el fichero /etc/fstab/

 nano /etc/fstab

y añadimos:

UUID="9bd4f982-0898-418c-b0ed-be29c2fac1c9"  /media/Nas01  ext4  defaults   0  0

ext4 es el sistema de ficheros de mi disco, hay que poner el que corresponda a tu disco.

Montamos la unidad.

 sudo mount -a

Instalando samba

sudo apt-get install samba

Hacemos copia de seguridad del fichero /etc/samba/smb.conf por si metemos la pata.

sudo cp /etc/samba/smb.conf /etc/samba/smb.conf-orig

Una vez que tenemos la copia hecha, editamos el fichero /etc/samba/smb.conf

sudo nano /etc/samba/smb.conf

Al final del fichero añadimos el recurso a compartir

[RPi]
  comment = Carpeta usuario pi
  path = /home/pi
  available = yes
  writable = yes
  browseable = yes
  only guest = no
  create mask = 0644
  directory mask = 0755
  public = no

[Nas_01]
  comment = Disco Duro externo 1TB
  path = /media/pi/Nas_01
  available = yes
  writable = yes
  browseable = yes
  only guest = no
  create mask = 0644
  directory mask = 0755
  public = no

Añadimos el usuario pi a samba y le ponemos clave

 sudo smbpasswd -a pi

Reiniciamos el servicio

 sudo /etc/init.d/samba restart

Si no funcionase y no viéramos el recurso compartido reiniciamos la rpi.

sudo reboot -h now

Ahora desde el explorar de ficheros accedemos a la dirección ip de la rpi, veremos el recurso compartido.

Al intentar acceder, nos pedirá un nombre de usuario y la contraseña (la que pusimos en el paso anterior)

Si las credenciales son correctas, veremos el contenido de la carpeta que hemos compartido en la rpi.

NFS

También podemos utilizar la rpi para compartir los recursos en red con NFS.

Edito: 10-08-2017

Lo siguientes apuntes los he sacado del magnifico sitio El atareao

Me limito a hacer un copia pega para mis futuras instalaciones

Para su instalación

 sudo apt-get install nfs-kernel-server

Modificamos el archivo /etc/netconfig y comentamos las dos siguientes líneas

udp6 tpi_clts v inet6 udp - -
tcp6 tpi_cots_ord v inet6 tcp - -

Así, en mi caso, el archivo /etc/netconfig, una vez realizadas las modificaciones, tiene el siguiente aspecto,

udp        tpi_clts      v     inet     udp     -       -
tcp        tpi_cots_ord  v     inet     tcp     -       -
#udp6       tpi_clts      v     inet6    udp     -       -
#tcp6       tpi_cots_ord  v     inet6    tcp     -      -
rawip      tpi_raw       -     inet      -      -       -
local      tpi_cots_ord  -     loopback  -      -       -
unix       tpi_cots_ord  -     loopback  -      -       -

Editamos el fichero /etc/exports :

 sudo nano -w /etc/exports

Ponemos los recurso que vamos a exportar:

/media/Nas01/    192.168.1.0/24(rw,no_subtree_check,async)

Reiniciamos servicios

sudo exportfs -ra
sudo update-rc.d rpcbind enable && sudo update-rc.d nfs-common enable
sudo service rpcbind restart
sudo service nfs-kernel-server restart

El cliente linux debe de tener instalado nfs-common.

Para ver los recursos que nos presenta una maquina:

showmount -e 192.168.1.53
Export list for 192.168.1.53:
/media/Nas01 192.168.1.0/24

Ahora sabemos que la maquina 192.168.1.53 tiene disponibles para compartir el recurso /media/Nas01

Antes de montar el recurso debemos de crear una carpeta en nuestro ordenador para ello:

sudo mkdir /media/Nas01

Cambiamos permisos y propietario del directorio Nas01

chown -R carlos:carlos /media/Nas01
chmod -R 755 /media/Nas01

Ahora podemos montar manualmente el recurso que nos presenta la maquina o hacerlo al iniciar el sistema a tráves del fichero /etc/fstab.

Manualmente desde una terminal.

sudo mount -t nfs 192.168.1.53:/media/Nas01   /media/Nas01

En el fichero fstab, controlamos el montaje mediante systemd, si el recurso no esta disponible, por ejemplo porque se intenta montar antes de que esté levantada la red o simplemente porque el servidor ya no lo comparte, no intentara montarlo, esperara el tiempo que le indiquemos en timeout y continuará.

192.168.1.3:/media/Nas01   /media/carlos/Nas01  nfs    noauto,x-systemd.automount,_netdev,noatime 0 0

Si el recurso esta disponible, el usuario podrá montarlo de forma automática, por ejemplo a través de dolphin o nautilus, sin necesidad de poner ningún comando.

VNC

Si tenemos instalado un entorno gráfico en la rpi puede ser interesante controlarlo de forma remota mediante VNC.

Durante los primeros pasos hemos visto como activar el servidor SSH, para VNC lo haremos de la misma forma.

Podemos utilizar cualquier cliente VNC, yo utilizo realvnc. incluso puedes conectarte desde el teléfono móvil mediante VNC Viewer - Remote Desktop_ o androidVNC

Configuramos la conexión, Archivo-> Nueva Conexión

En el campo VNC server deberemos poner la dirección ip de la rpi.

La próxima semana

La próxima semana veremos como instalar y configurar transmission , hacerlo funcionar como un servicio y personalizando el usuario que inicie dicho servicio.

comentario powered by Disqus