restringindo o acesso via ssh

1

Temos uma estação de trabalho de processamento de dados compartilhada por vários usuários. Eu gostaria de configurar um script nessa máquina para processar meus dados e depois copiá-los de volta para minha máquina pessoal posteriormente.

Recentemente aprendi sobre autenticação de chave pública ssh, então meu primeiro pensamento foi simplesmente adicionar a chave pública dessa máquina ao meu arquivo authorized_keys e adicionar um comando scp ao meu script. No entanto, isso faz com que qualquer pessoa nessa máquina possa fazer ssh na minha máquina, se souber o endereço IP da minha máquina. Qual é a maneira correta de definir com segurança esse tipo de coisa?

    
por eykanal 02.05.2011 / 19:09

3 respostas

1

O que você pode fazer é configurar a autenticação de chave pública por outro caminho; criar um par de chaves em sua máquina pessoal e adicionar a chave pública às permissões autorizadas da estação de trabalho de processamento de dados.

O processamento de dados seria iniciado pelo ssh na estação de trabalho DP, executando o comando e copiando-o de volta. Por exemplo,

#!/bin/sh

ssh common@dp /path/to/process_data_script
scp common@dp:/path/to/data /copy/here
    
por 02.05.2011 / 19:50
0

Como a Estação de Trabalho de Processamento de Dados (DPW) não foi configurada adequadamente para acesso multiusuário e você não tem planos de fazê-lo, talvez tenha mais sorte fazendo um push versus um push de seus dados processados: pode ter seu trabalho DPW enviar um alerta por e-mail e, em seguida, você manualmente SFTP / SCP no DPW e buscar seus dados processados ou você pode usar rsync para fazer um "mudo" puxar da pasta "dados processados" DPW para uma pasta de origem em sua máquina (com a opção de --remove-sent-files para remover os dados DPW após a transferência) periodicamente, diga a cada hora.

    
por 02.05.2011 / 19:58
0

Primeiro, a chave privada deve ter permissões 0600 para que seja legível apenas por você (ou usuários raiz na caixa).

As chaves privadas geralmente têm códigos de acesso para que intrometidos ociosos não possam usá-los, mas isso não funciona para o script. Uma forma de lidar com essa vulnerabilidade é configurar outra conta que SÓ tenha acesso e permissões necessárias para as coisas que ela precisa fazer.

Por último, considere fazer essa ação ao contrário. Peça à sua máquina confiável para buscar os dados da outra máquina compartilhada. A direção que você sugere é mais vulnerável. Se você quiser, pode configurar algum tipo de script de sinal para que a máquina remota possa dizer "ei, pronto, venha e pegue" e sua máquina local pode disparar um trabalho para fazer a transferência.

    
por 02.05.2011 / 20:06