'sh' acesso negado por conexão ssh

3

Eu tenho um servidor Ubuntu e um cliente Windows XP rodando Cygwin. O servidor ssh está no cliente e tenta executar um script de shell com alguns parâmetros, com o seguinte comando:

ssh user@IP_ADDR 'sh /home/user/project/clientside 2 5 7 6 9 5 7 IP_ADDR'

onde IP_ADDR é o endereço IP do cliente.
No entanto, ao fazer isso, recebo o seguinte erro:

Access is denied.

Pensando que isso pode ser um erro de permissão do usuário, tentei executar sh /home/user/project/clientside 2 5 7 6 9 5 7 IP_ADDR no cliente, no Cygwin, enquanto estava logado como user .
Isso funciona como esperado.

Então eu pensei que isso poderia ser um erro com o login que eu uso quando eu ssh no cliente. Então eu executei isso:

ssh user@IP_ADDR 'whoami'

e recuperou user .

Isso aconteceu mesmo depois que eu fiz chmod -R 777 /home/user/project no cliente, no Cygwin.

Para chutes, eu entrei no Cygwin no cliente e fiz ssh localhost e manualmente executei sh /home/user/project/clientside 2 5 7 6 9 5 7 IP_ADDR .
Isso funcionou como esperado.

No entanto, quando eu fiz ssh IP_ADDR do Cygwin e fiz ssh localhost e manualmente executei sh /home/user/project/clientside 2 5 7 6 9 5 7 IP_ADDR , obtive o mesmo erro Access is denied. .

Por que isso está acontecendo? Como posso consertar isso?

A propósito, tanto o servidor quanto o cliente têm a chave pública rsa do outro para ssh sem senha

    
por inspectorG4dget 20.12.2012 / 02:26

2 respostas

2

O problema é com o funcionamento dos serviços Windows.
Isso resolve o problema:

  1. Fechar o Cygwin
  2. Ir para serviços do Windows ( services.msc on Run Dialog ).
  3. Pare o CYGWIN sshd service
  4. Clique duas vezes em CYGWIN sshd para inserir as propriedades do serviço
  5. Pare o serviço
  6. Na guia Log On , verifique se Log on as está definido como Local System account e Allow service to interact with desktop está marcado
  7. Reinicie o serviço
  8. Reinicie o Cygwin
  9. Vá buscar uma cerveja
por 20.12.2012 / 03:48
1

Você pode tentar ssh IP_ADDR sh echo lalala apenas para realmente abrir um sh terminal. se falhar ... você sabe o motivo. Também seria útil nos dar uma amostra de / var / log / messages e / var / log / secure {ou qualquer log que você achar que será útil}

    
por 20.12.2012 / 03:11