Quiero crear un script que introduzca automáticamente una contraseña al cliente ssh para realizar un reinicio en /etc/rc.local.
El código manualmente es:
ssh -fNv -L 3049:localhost:2049 ubuntu@20.115.5.61
Ahora tengo en /etc/rc.local:
#!/bin/bash
host_remoto=ubuntu@20.115.5.61
puerto_remoto=3049
puerto_local=2049
cmd=”ssh -fN -R ${puerto_remoto}:localhost:${puerto_local} ${host_remoto}”
while true; do
pgrep -fx “$cmd” >/dev/null 2>&1 || $cmd
sleep 10
done
¿Me ayudas?
davy.ai
Parece que estás intentando configurar un túnel SSH inverso utilizando el código en el archivo /etc/rc.local. El código usa variables para definir el host remoto, el puerto remoto y el puerto local. La variable
cmd
contiene el comando SSH para establecer el túnel.El bucle
while
verifica continuamente si el comandocmd
ya está ejecutándose utilizando el comandopgrep
. Si el comando no está ejecutándose, se ejecuta el comandocmd
para establecer el túnel SSH inverso. El comandosleep
se usa para pausar el bucle durante 10 segundos antes de verificar nuevamente.Esta configuración te permite establecer una conexión segura a un servidor remoto y acceder a un servicio en ejecución en el puerto local de ese servidor remoto a través del puerto local de tu máquina. Puedes modificar las variables en el código para ajustar la configuración según tus necesidades.