it-swarm-ru.tech

Как я могу избежать проверки хоста SSH для известных хостов?

Я получаю следующий запрос каждый раз, когда пытаюсь подключиться к серверу с использованием SSH. Я набираю «да», но есть ли способ это исправить?

The authenticity of Host '111.222.333.444 (111.222.333.444)' can't be established.
RSA key fingerprint is f3:cf:58:ae:71:0b:c8:04:6f:34:a3:b2:e4:1e:0c:8b.
Are you sure you want to continue connecting (yes/no)? 
155
shantanuo

Используйте опцию -o,

ssh -o "StrictHostKeyChecking no" [email protected]
216
thegeek

Добавьте следующие строки в начало /etc/ssh/ssh_config...

Host 192.168.0.*
   StrictHostKeyChecking no
   UserKnownHostsFile=/dev/null

Опции:

  • Подсеть хоста может быть *, чтобы разрешить неограниченный доступ ко всем IP-адресам.
  • Отредактируйте /etc/ssh/ssh_config для глобальной конфигурации или ~/.ssh/config для пользовательской конфигурации.

Смотрите http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-Host-key-checking.html

96
JimFred

Вы должны получить это только при первом подключении к новому хосту. После того, как вы ответите yes, Хост будет сохранен в ~/.ssh/known_hosts, и вам не будет предложено при следующем подключении.

Обратите внимание, что если ~/.ssh/known_hosts не может быть записан по какой-либо причине (например, проблема с разрешениями), вам будет предлагаться каждый раз, когда вы подключаетесь.

28
Paul R

Лучший способ (поскольку он не жертвует безопасностью) - это один раз подключиться ко всем компьютерам с одного клиента (каждый раз будет запрашиваться, всегда отвечайте «да»). Как указано в другом ответе, ключи будут сохранены в ~/.ssh/known_hosts. Затем скопируйте этот файл на каждый клиентский компьютер, к которому вы позже захотите подключиться (возможно, для каждой учетной записи пользователя, которую вы используете). Тогда все эти учетные записи будут «знать» компьютеры, следовательно, не запрашивать.

Преимущество перед отключением подсказки заключается в том, что SSH может на самом деле проверять наличие атаки MITM.

11
sleske

Если вы хотите отключить подтверждение, а не аутентификацию, вы можете использовать опцию: "-o CheckHostIP = no"

ssh -i sergeys_rsa_key.pem -o CheckHostIP=no [email protected]
1
R J

Вероятно, это связано с тем, что ваш сервер ключей ssh ​​изменился, поскольку IP-адрес или домен сервера совпадают, но несоответствие ключей ssh.

Вы должны удалить сохраненный ключ в /home/$user/.ssh/known_hosts, чтобы избежать этого сообщения.

Я исправил это, удалив все ключи в этом файле, поэтому для этого доменного имени был создан новый токен.

0
IvanReed