Posso usar um cliente ssh ou algo semelhante para executar comandos na máquina local a partir de uma máquina remota?

2

Eu tenho uma máquina que não posso usar. Eu gostaria de poder controlar uma sessão de shell nele. Existe alguma maneira de conectá-lo a outra máquina e para eu emitir comandos na máquina do servidor que são executados na máquina cliente?

Tony
fonte
O que você pode fazer nessa máquina? Você pode executar scripts baseados na Web, como PERL, Python ou PHP? Além disso, você tem permissão para executar aplicativos de longa duração ou apenas scripts da Web?
Julian Knight

Respostas:

3

Você pode se você é capaz de configurar uma sessão ssh reversa .

Use o seguinte para configurar o encaminhamento de porta reversa na máquina que você não pode acessar (ou seja, você precisa fazer isso uma vez nessa máquina)

ssh -R 2210:localhost:22 bhome.dyndns.com

e sempre que você quiser da sua máquina doméstica:

ssh -p 2210 localhost

irá se conectar à máquina que você não conseguiu acessar.

Veja aqui para mais informações .

jmetz
fonte
Eu suspeito que, se ele não puder obter acesso SSH, ele não poderá configurar uma sessão SSH reversa.
Julian Knight
1
Na verdade, as sessões SSH reversas são perfeitas para casos em que o acesso SSH não é possível - verifique o link na minha resposta. Não ser capaz de SSH não implica que o OP não pode acessar a máquina inacessível de jeito nenhum - ela pode ser bloqueada por um firewall.
jmetz
Eu vejo o seu ponto, minha resposta foi pensar em um servidor hospedado onde você só tem acesso limitado. Embora, na realidade, em seu cenário, seja muito improvável que quaisquer portas que não sejam as HTTP padrão sejam deixadas abertas, mesmo para a saída. Eu usei uma porta 443-> 22 mapeamento PAT para isso no passado. Também é cada vez mais comum que filtros de saída verifiquem tráfego estranho e bloqueiem esse tipo de conexão de qualquer maneira - todos os grandes fornecedores têm esse tipo de filtragem disponível agora (por exemplo, CISCO).
Julian Knight
1
Isso é exatamente o que eu estava procurando! Obrigado!
Tony
1

Se você puder executar scripts de aplicativos da Web na máquina, recomendo configurar um conjunto seguro de scripts que são acionados via HTTPS - talvez em um menu personalizado. A maioria das linguagens de script, incluindo PHP, Python e PERL, Lua, Ruby etc., podem executar comandos no nível do sistema operacional.

De fato, é assim que o Webmin funciona - exceto que vai ainda mais longe. Cria o seu próprio servidor web.

Eu fiz isso no passado para lidar com o problema que você destaca.

Você também pode ir mais longe se conseguir que a máquina converse com um servidor de e-mail - eu geralmente reservaria uma conta de e-mail IMAP. Em seguida, você pode configurar um script que verifique periodicamente a caixa de correio em busca de emails especificamente formatados.

Julian Knight
fonte
Obrigado pela resposta. Eu deveria ter explicado mais claramente a minha situação na minha pergunta original - mutzmatron deu a resposta que eu estava realmente procurando.
Tony
Não é um problema, feliz que você encontrou a resposta que você precisava.
Julian Knight