você pode fazer um SSH reverso com o -R arg (eu escrevi um artigo em francês sobre isso aqui ) e cron ou fazer um serviço com.
aqui as coisas traduzidas
user@mynewRaspberry :~$ ssh -R 61337:localhost:22 [email protected]
depois que você pode acessá-lo de outro lugar, aqui no exemplo de z8po.dyndns.info
z8po@hive :~$ ssh z8po.dyndns.info -p 61337
Em seguida, vamos usar um while loop no seu script para verificar se o ssh é para sempre o relançamento.
while true do ssh -R 61337:localhost:22 [email protected] done
você pode manter sua conexão com um keep alive em um cliente ssh ou em um servidor, adicionar a / etc / ssh / sshd_config ou ~ / .ssh / config a seguinte linha
ClientAliveInterval 60
Não se esqueça de usar a chave rsa insteed de paswsrod para login automático sem prompt, ou se você realmente quiser usar senha, mude o comando ssh com user: password @ ip mas é bem menos seguro.
Primeiro método Cron it
faça um script verificando se já foi iniciado, em /home/USER/autolauncher.sh
#!/bin/sh
if ps -ef | grep -v grep | grep yourscript.sh ; then
exit 0
else
while true do ssh -R 61337:localhost:22 [email protected] done
exit 0
fi
e edite seu crontab
crontab -e
adicione depois dos outros jobs crons; a cada 5 min inicie o script anterior (que não funcionará se já estiver em execução)
*/5 * * * * /home/USER/autolauncher.sh
Segundo método: serviço na inicialização
crie ou copie o script no init.d adicione os comandos nele usando o vi:
sudo nano /etc/init.d/autolauncher.sh
torne-o executável
sudo chmod +x /etc/init.d/autolauncher.sh
update-rc.d para criar e configurar o início:
sudo update-rc.d autolauncher.sh defaults
agora você tem dois métodos para fazer seu rasperry tentando se conectar