Como lidar com a verificação da chave do host ssh com 2 anfitriões diferentes na mesma (mas mudando) o endereço IP? [fechadas]

StackOverflow https://stackoverflow.com/questions/733753

Pergunta

Eu tenho 2 servidores SSH por trás de um firewall nat em um local que muda sua wan IP a cada dia. Eles estão sempre ao mesmo wan endereço IP em um determinado momento, mas em portas diferentes.

Eu estou conectando ao servidor A desta maneira:

ssh -p 22001 karl@x1.example.com

e servidor B:

ssh -p 22002 karl@x2.example.com

Então, eu recebo 2 chaves de host diferentes para o mesmo IP, e também quando o IP muda mesmo um IP diferente para o mesmo host.

Eu tenho que ir sobre a eliminação de mais e mais a outra chave ou a chave de idade (no caso de mudança de IP) no arquivo known_hosts.

Eu estou hesitando em desligue a chave de verificação, porque isso seria menos seguro. Mas recebendo um aviso o tempo todo também não segura (porque eu ignorar tais alertas o tempo todo, então). Existe uma solução melhor?

Isso está relacionado à minha velha questão aqui, mas não é o mesmo:

SSH login do aviso de mensagem no servidor com 2 nomes DNS

Foi útil?

Solução

Eu acho que isso vai funcionar:

Crie um arquivo config em seu diretório .ssh da seguinte forma:

Host server1
  Hostname x1.example.com
  HostKeyAlias server1
  CheckHostIP no
  Port 22001
  User karl

Host server2
  Hostname x2.example.com
  HostKeyAlias server2
  CheckHostIP no
  Port 22002
  User karl

explicação abaixo (a partir man ssh_config)

CheckHostIP

Se este sinalizador estiver definido para "Sim", ssh (1), adicionalmente, verifique o endereço IP de acolhimento nos known_hosts Arquivo. Isso permite que ssh para detectar se um chave de host alterado devido à falsificação de DNS. Se a opção é definida como "não", o verificação não será executada. o padrão é "sim".

HostKeyAlias ??

Especifica um alias que deve ser usado em vez do real nome do host quando se olha para cima ou para salvar a chave de host na chave de host arquivos de banco de dados. Esta opção é útil para SSH tunneling conexões ou para vários servidores em execução em um único host.

A linha de Username e Port evita que você tenha que dar essas opções na linha de comando, também, então você pode apenas usar:

% ssh server1
% ssh server2
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top