Información
Actualidad
Aquí encontraras noticias de actualidad sobre Gnu Linux y Open Source.

Además de información sobre la comunidad LiGNUx.
Distribuciones y entornos
Información ordenada sobre los diferenes sistema operativos Gnu Linux y las diferentes opciones de entornos gráficos.
Tutoriales y guías
Todos los pasos e informaciones que puedes desear para tu día a día.
Tutoriales
Tutoriales
Programación
Programación
About Us
Get to know the people behind the code and the mission behind the work
how we handle data
Privacy
Security
Legal

Uso de Scripts y Comandos SSH en Home Assistant

8 noviembre, 2024

Después de leer este tutorial, serás capaz de enviar comandos por SSH y ejecutar scripts desde el dispositivo en donde tienes instalado Home Assistant a otros dispositivos, para poder reiniciarlos remotamente, entre otras cosas.

Para ello generaremos "keys" entre los dispositivos para que se puedan reconocer entre si y mandarse órdenes.

Paso 1 

Lo primero que hay que hacer es abrir un terminal en el dispositivo donde tengamos instalado home assistant.

Logueamos con el usuario que creamos al instalar home assistant con el siguiente comando:

Y activamos el entorno virtual de python (PASO IMPORTANTE) de la siguiente forma:

Paso 2

Ahora vamos a generar la clave o key que será necesaria para vincular los dispositivos usando el siguiente comando:

El sistema nos preguntará en que archivo y si queremos ponerle contraseña a la clave, dejamos en blanco a todo y damos a enter para generar la clave. Una vez generada la clave nos debe aparecer algo parecido a esto:

Recordad el guardar la ruta del archivo que contiene la clave, por si la necesitáramos más adelante para usarla en otros dispositivos.

Paso 3

Ahora que tenemos la clave segura generada, es el momento de instalarla en el dispositivo al que queremos enviar el comando.

Si queremos controlar el dispositivo local procedemos con el siguiente comando:

Una vez realizado el comando os pedirá la contraseña del dispositivo a conectar , la introducimos y se nos quedarán vinculados los dos dispositivos.

Si es el primer dispositivo que vais a vincular utilizando el siguiente comando es suficiente:

Una vez realizado esto si queréis  vincular más dispositivos por SSH no hace falta generar nuevas claves, puesto que siempre utilizaremos la creada anteriormente, pero para estos nuevos dispositivos SÍ necesitais especificar la ruta del archivo y ejecutar la línea de la siguiente manera:

Paso 4

Vamos a comprobar si los pasos anteriores han funcionado, para ello solo debemos ejecutar la siguiente línea:

Y ahora deberías estar logueado en el terminal SSH del otro dispositivo desde el usuario de home assistant, una SSH inception en toda regla , y a partir de aquí ya podéis crear vuestros scripts en home assistant para mandar órdenes por SSH.

Aquí os dejamos un pequeño ejemplo de un switch para reniciar una raspberry pi por SSH:

Ejecución de scripts

Asímismo, una vez hecho los pasos anteriores, el usuario homeassistant será capaz de ejecutar scripts, a través del usuario pi.

Por ejemplo, vamos a crear un script para actualizar Home Assistant.

Así no tendrás que abrir la consola y meter los comandos como explicamos aquí

Para ello creamos un archivo que llamaremos por ejemplo upgradeha.sh

Incluiremos lo siguiente:

Guardamos los cambios.

Ahora en home assistant añadimos a shell_comands lo siguiente:

En este caso lo que hacemos es decirle al usuario pi de nuestra misma raspberry que ejecute el script, el cual podrás usar tanto el switch como el script, lo podrás organizar en tu home assistant con la guía de grupos y pestañas

Escrito por Noel

Buenas, me llamo Noel, soy un divulgador y amante del software libre y Gnu Linux.
Usuario inquieto por ver las novedades y dar a conocer a todos las grandes ventajas del software libre y Gnu Linux.

Suscribirse
Notificarme las
guest
0 Comentarios
Los más recientes
Los más antiguos Más votados
Feedbacks en línea
Ver todos los comentarios
LiGNUx trabaja sobre una licencia de Creative Commons Reconocimiento 4.0 Internacional.
cloudflagpaperclipprinterfile-emptyfilm-playcamera-videopicturelaptop-phonebriefcasecrossmenu
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram