-1

Я делаю следующую команду

sudo chmod 400 /home/ec2-user/key
sudo scp -o StrictHostKeyChecking=no -o NoHostAuthenticationForLocalhost=yes -o UserKnownHostsFile=/dev/null -i key ec2-user@${aws_instance.master.private_ip}:/home/ec2-user/token

но каждый раз, когда я получаю Enter passphrase для ключа 'key': ключ вообще не имеет парольной фразы

Я запускаю это на Amazon Linux 2 AMI 2.0.20181008 x86_64 HVM gp2, как это исправить, пожалуйста, я использую его в автоматическом скрипте terraform

1 ответ1

0

Я получаю Введите пароль для ключа 'ключ': ключ не имеет пароля

Это признак того, что файл ключа поврежден или его содержимое не в том формате, который принимает программа ssh . Некоторые версии утилиты ssh будут запрашивать парольную фразу каждый раз, когда она не может понять содержание файла ключа:

$ dd if=/dev/urandom of=key bs=1500 count=1
1+0 records in
1+0 records out
1500 bytes transferred in 0.000190 secs (7893922 bytes/sec)
$ chmod 600 key
$ ssh -i key foo@localhost
Enter passphrase for key 'key':

Более поздние версии ssh могут отличить ключ, защищенный парольной фразой, и файл, полный мусора:

$ ssh -V
OpenSSH_7.6p1, LibreSSL 2.6.2
$ dd if=/dev/random of=key bs=1500 count=1
1+0 records in
1+0 records out
1500 bytes transferred in 0.000149 secs (10082462 bytes/sec)
$ chmod 600 key
$ ssh -i key localhost
Load key "key": invalid format
Password:

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .