Como enviar um comando para background usando o ssh no sistema remoto

1

Estou tentando abrir uma porta no sistema remoto usando ssh & netcat assim:

ssh [email protected] 'netcat -l 7777 &'

mas aguarda para mostrar a saída e não vai para o fundo!
Eu tentei nohup antes de netcat mas obtive o mesmo resultado;

Como posso executar netcat em segundo plano usando o ssh no sistema remoto?

    
por RYN 03.06.2017 / 21:59

2 respostas

1

Você pode usar isto:

ssh -f [email protected] "sh -c 'netcat -l 7777 > /dev/null 2>&1 &'"

Verifique este tópico .

    
por 03.06.2017 / 22:55
0

A versão oficial é usar -f alternar para ssh , que será o plano de fundo de toda a conexão sem toda a magia do shell, conforme explicado na outra resposta:

-f

Requests ssh to go to background just before command execution. This is useful if ssh is going to ask for passwords or passphrases, but the user wants it in the background. This implies -n. The recommended way to start X11 programs at a remote site is with something like ssh -f host xterm.

If the ExitOnForwardFailure configuration option is set to “yes”, then a client started with -f will wait for all remote port forwards to be successfully established before placing itself in the background.

    
por 04.06.2017 / 11:58