jueves, 6 de agosto de 2015

Ssh’ing… o desarrollando en remoto

Hola a todos,

Hoy algo sencillo, configurar el entorno de trabajo para poder desarrollar en remoto y poder usar todas las capacidades de nuestro ordenador y dejar la Rasp2 para lo que la queremos dedicar (y no instalar nada innecesario).

Lo primero es que damos por sabido que los lectores conocen el protocolo (o como conjunto de utilidades) SSH y sus derivados (para nosotros SFTP) https://en.wikipedia.org/wiki/Secure_Shell
Los usuarios de Linux o Mac (como es mi caso) traen instaladas las herramientas del protocolo por defecto, o de muy fácil instalación. El esquema de solución que tenemos que configurar es nuestra Rasp2 como servidor SSH y nuestro PC configurarlo con una herramienta de cliente SSH y SFTP.

1.     Rasp2 como servidor
La primera vez que se inicia el Raspbian se ejecuta por defecto la herramienta de configuración del SO, y si no, podemos llamarla en cualquier momento con la orden:
$ sudo raspi-config

Esto inicia una ventana-menú en modo texto 
 y elegimos “8 Advanced Options” …
 … y “A4 SSH”… para finalmente obtener un mensaje de aceptación.
 
En el caso de tener algún tipo de error reiniciar y reintentar, o es que ya estaba instalado previamente. 



2.     Una vez instalado el servidor en la Rasp2 tenemos que pasar a la conexión desde nuestro PC.
Para ello abrimos la terminal… y escribimos:

$ ssh –X pi@192.168.1.17

Esta orden tiene varios parámetros:
·      -X: esto habilita lo que se llama el “X11 forwarding”, o lo que es lo mismo, poder abrir pantallas gráficas remotas. Esto nos permitirá ver que es lo que está mirando la cámara en directo.
·      pi: o el usuario con el cual queramos acceder
·      192.168.1.17: o dirección IP de nuestra Rasp2. Para consultar cual es nuestra IP podemos mirar el interface de red
$ sudo ifconfig
eth0      Link encap:Ethernet  HWaddr b8:27:eb:d2:0a:e5 
          inet addr:192.168.1.17  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:422 errors:0 dropped:1 overruns:0 frame:0
          TX packets:219 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:67827 (66.2 KiB)  TX bytes:40141 (39.2 KiB)



Con todo esto ya tendríamos acceso a nuestra Rasp2:

aunque lo primero que nos aparece es la clave RSA de la Rasp2 para que la aceptemos… y escribimos “yes”..

  
posteriormente nos pide la contraseña y cuando aceptamos, nos muestra un mensaje de configuración y bienvenida:
Ya estamos dentro.

Para probarlo, podemos ejecutar algún código que tengamos para comprobarlo, como el streaming de video del post anterior

$ source ~/.profile
$ workon cv
$ cd Desktop/ejemplos/
$ python test_video.py

            y  podemos ver algo similar:


 Para terminar, vamos a editar en remoto con nuestro programa favorito (o al menos el mio) que soporte SFTP.

Yo uso TextWrangler… Lo abro… y elegimos la opción “File -> Open from FTP/SFTP server”, lo que nos abre una ventana nueva con las opciones de validación

Eso nos dará el directorio de la Rasp2, donde podremos elegir el fichero que queramos y podemos editarlo ya.

Un saludo y buen desarrollo.




No hay comentarios:

Publicar un comentario