Desativar autenticação para ssh [duplicado]

1

Existe uma maneira de armazenar minha senha quando ssh'ing em um servidor? Tentei alterar as variáveis BatchMode e PasswordAuthentication no meu arquivo /etc/ssh/ssh_config , mas sem sucesso. Alguém poderia me indicar como proceder?

    
por S4M 13.01.2014 / 12:03

2 respostas

3

Você pode remover sua senha no servidor e em /etc/ssh/sshd_config set:

PermitEmptyPasswords yes

mas acho que isso é perigoso.

Você deve apenas gerar um par de chaves pública / privada com ssh-keygen e copiar a chave pública para o servidor com ssh-copy-id .

    
por 13.01.2014 / 12:12
3

Eu recomendaria usar a autenticação de chave pública ao armazenar uma senha.

Com a autenticação de chave pública SSH, você gera um & público & chave privada no sistema do cliente e depois enviar a chave pública para o host remoto. Em seguida, o sistema remoto permitirá que qualquer pessoa faça login e tenha a versão privada dessa chave.

Configuração:

  1. No cliente, execute ssh-keygen . Basta pressionar enter várias vezes e aceitar os padrões (senha vazia quando solicitado).
  2. Executar ssh-copy-id [email protected]
  3. Agora você pode ssh para o host remoto apenas fazendo ssh [email protected] .

Agora, isso é um pouco inseguro, já que qualquer pessoa em seu sistema local que obtiver sua chave privada (armazenada em ~/.ssh/id_rsa ) poderá ssh para esse host remoto (embora a chave esteja protegida, então você precisa ser root para poder para chegar a ele). A solução é adicionar uma senha à chave privada e usar um chaveiro para armazenar a senha, para que você não precise digitá-la toda vez, mas isso está além do escopo dessa resposta. Há muitas outras perguntas / respostas aqui que fornecem uma explicação sobre como realizar isso.

    
por 13.01.2014 / 12:58

Tags