Plant Buddy 02: Activando SSH


El primer paso es la comunicación.

¿Activamos el canal ssh de nuestra conexión?

¿y quienes podrán ingresar?

Para el desarollo los usuarios y sus credenciales se deben asignar

sudo useradd -m [usuario] # añade usuario
sudo passwd [usuario] # añade password al usuario

con criterio y sabiduría incluirlos en grupos de responsabilidad

sudo groupadd app # grupo para acceso al código de la app
sudo usermod -aG app [usuario] # añade al usuario al grupo app
sudo usermod -aG sudo [usuario] # Añade al usuario al grupo de sudoers.

¿y cómo se conectan?

Como las plantas los equipos en la misma red deben estar. Con SSH, utiliza tu usuario para conectar.

ssh pi@192.168.1.101 # ssh [usuario]@[ip-raspberry]

Mejorando el método de autentificación

Nuevas pruebas y mejoras, cargar código una y otra vez puede ser aburrido si nuestras credenciales tenemos que ingresar cada vez

SSH y sus keys

Desde nuestro PC ejecutamos ssh-keygen

ssh-keygen -t rsa

Una vez terminado copiamos nuestro public key en el archivo de llaves autorizadas ~/.ssh/authorized_keys en nuestro Raspberry Pi

cat ~/.ssh/id_rsa.pub | ssh pi@192.168.1.104 "mkdir -p ~/.ssh && cat >>  ~/.ssh/authorized_keys"

Para asegurarnos de que al intentar conectarnos utilicemos la credencial apropiada configuramos el ~/.ssh/config en nuestro PC

Host raspberry
  HostName 192.168.1.104
  User pi
  ForwardAgent no
  IdentityFile ~/.ssh/id_rsa

Finalmente, ahora el código rápido y sin obstaculos se subirá a nuestro Raspberry PI

ssh 

O incluso subir nuestro código

scp -r ../api raspberry:/opt

Ventajas de este método

  • Te ahorrarás mucho tiempo
  • No tendrás que ingresar tu contraseña cada vez
  • Es más difícil de descifrar y, por lo tanto, más seguro.
  • Si cambia la IP de Raspberry PI sólo tienes que cambiar el archivo ~/.ssh/config y mantener todas las configuraciones de desarrollo intactas.