Segurança de sshpass e SFTP para host dinâmico

1

Eu tenho um servidor com endereço IP dedicado A e um servidor com endereço IP dinâmico B (roteamento via no-ip.org). Um upload de um backup para B via sshpass:

export SSHPASS=***
sshpass -e sftp **@** << !
    [..]
    put [..]
    bye
!

Toda vez que agora (A) acontece o seguinte:

Warning: Permanently added the ECDSA host key for IP address '[...]' to the list of known hosts.

Tenho a sensação de que isso pode não ser um método seguro para transferir os dados de backup (arquivo tar). É possível que alguém intercepte o backup?

Além disso, não devo remover o IP da lista de hosts conhecidos novamente depois? O backup é executado todos os dias. Soa como uma longa lista de hosts conhecidos que são apenas dinâmicos!

    
por Alexander 23.10.2014 / 13:44

2 respostas

0

Esta mensagem de aviso não está indicando um risco de segurança, porque já verificou que a chave do host enviada pelo servidor corresponde à chave do host conhecida para o nome do host ao qual você está se conectando. (Eu realmente diria que a palavra Warning deveria ter sido deixada de fora desta mensagem em particular.)

Você pode limpar esses pares de chaves IP + adicionados dinamicamente da lista de hosts conhecidos. Mas eles não estão realmente doendo, e se você precisar ssh para o host pelo endereço IP em vez de pelo hostname, é conveniente ter a entrada já no arquivo de hosts conhecidos.

Se você se conectar a vários hosts diferentes com IP dinâmico, poderá eventualmente encontrar um caso em que um host recebe um endereço IP para o qual ssh registrou anteriormente uma chave de host diferente. Nesse caso, você receberá um erro e precisará remover o par de chaves IP + host obsoleto. (O par a ser removido fica um pouco mais difícil de identificar, se você estiver processando as linhas no arquivo de hosts conhecidos.)

Uma coisa que você pode fazer para melhorar a segurança é usar a autenticação baseada em chave em vez da autenticação baseada em senha. Não apenas uma chave é mais difícil de adivinhar do que uma senha, como também é mais difícil realizar um ataque mitm devido à chave que está sendo usada para assinar um ID de sessão que é garantidamente incompatível no caso de um ataque mitm.

    
por 23.10.2014 / 14:02
0

O "aviso" indica apenas que o endereço IP do host foi alterado, o que você espera que aconteça.

O cliente OpenSSH verifica a alteração de IP para fornecer "dica de falsificação de DNS" quando a chave do host é alterada. Como no seu caso, a chave do host está correta, o aviso é inútil, como explica o @kasperd.

Na verdade, como você espera a alteração do IP, é possível desativar CheckHostIP para evitar o aviso:

sftp -o "CheckHostIP no" **@**

Se a chave do host tivesse mudado, você receberia um aviso, no entanto.

    
por 23.10.2014 / 14:28