scp fragt nach einem Passwort für den Schlüssel ohne

387
Ali

Ich mache den folgenden Befehl

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

Jedes Mal, wenn ich Passphrase für Schlüssel 'Schlüssel' eingeben bekomme, hat der Schlüssel überhaupt keine Passphrase

Ich führe dies auf Amazon Linux 2 AMI 2.0.20181008 x86_64 HVM gp2 aus, um dieses Problem zu beheben, da ich es in einem automatischen Terraform-Skript verwende

-1
Sind Sie sicher, dass "Schlüssel" mit "/ home / ec2-user / Schlüssel" identisch ist? Sind Sie sicher, dass Sie die Aufforderung erhalten? Warum verwenden Sie "Sudo"? Was ist mit den Anführungszeichen und Kommas? Attie vor 5 Jahren 0
ja das gleiche, sudo nur um Admin-Prevelage zu erzwingen, doppelte qoutes Ursache des Skripts kann man vernachlässigen Ali vor 5 Jahren 0
Aktualisieren Sie Ihre Frage, um den Cruft zu entfernen ... Fordert `ssh-keygen -y -f / home / ec2-user / key` nach einer Passphrase? Attie vor 5 Jahren 0
@Attie hat die Quest geändert, nein fragt nicht nach Es ist erforderlich, dass Ihre privaten Schlüsseldateien NICHT für andere zugänglich sind. Ali vor 5 Jahren 0
"_Es ist erforderlich, dass Ihre privaten Schlüsseldateien NICHT für andere Benutzer zugänglich sind." ... und nach dem entsprechenden `chmod`? Attie vor 5 Jahren 0
nachdem chmod nach dem passwort gefragt hat, wie das zu beheben ist Ali vor 5 Jahren 0
Lassen Sie uns [diese Diskussion im Chat fortsetzen] (https://chat.stackexchange.com/rooms/84379/discussion-between-ali-and-attie). Ali vor 5 Jahren 0

1 Antwort auf die Frage

0
Kenster

Ich erhalte Enter passphrase for key 'key': Der Schlüssel hat überhaupt keine Passphrase

Dies ist ein Zeichen dafür, dass die Schlüsseldatei beschädigt ist oder deren Inhalt nicht in einem Format vorliegt, das das sshProgramm akzeptiert. Einige Versionen des Dienstprogramms "ssh" fragen immer nach einer Passphrase, wenn sie den Inhalt der Schlüsseldatei nicht verstehen können:

$ 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': 

Neuere Versionen von sshkönnen den Unterschied zwischen einem durch Passphrasen geschützten Schlüssel und einer Datei mit Mülleimer unterscheiden:

$ 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: