Git-Klon als Teil der automatischen Konfiguration einer EC2-Instanz?

Git-Klon als Teil der automatischen Konfiguration einer EC2-Instanz?

Ich richte eine EC2-Instanz mit Terraform ein und muss während dieses Vorgangs ein großes Skript ausführen. Ich möchte das Skript aus unserem Gitlab-Repository mit etwas wie: herunterladen.

git clone [email protected]:a_name/project.git
Cloning into 'project'...
The authenticity of host 'gitlab.something.org (12.34.56.78)' can't be established.
ECDSA key fingerprint is SHA256:....
Are you sure you want to continue connecting (yes/no)? yes
Cloning into ...

Wenn ich dies über die Befehlszeile ausführe, muss ich bestätigen, was in meiner Situation jedoch nicht möglich ist.

Allerdings /var/log/cloud-init-output.logsehe ich Folgendes (nachdem ich den richtigen, privaten Schlüssel hochgeladen habe):

Cloning into 'project'...
Host key verification failed.
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Ich hoffe, dass dieser Fehler einfach darauf zurückzuführen ist, dass ich nicht mit „Ja“ geantwortet habe. Gibt es eine Möglichkeit, Git mitzuteilen, dass alles in Ordnung ist, ich weiß, was ich tue, und einfach weitermachen kann?

Antwort1

Verwenden Sie Ihr automatisiertes System, um eine known_hostsDatei mit den richtigen Hostschlüsseln bereitzustellen. Sie können die Einträge von Ihren eigenen known_hosts kopieren, z. B. mitssh-keygen -F gitlab.something.org (das funktioniert auch, wenn die Datei gehasht wurde).

Die Datei kann entweder unter ~/.ssh/known_hostsoder unter bereitgestellt werden /etc/ssh/ssh_known_hosts.

Beachten Sie, dass die Hostkey-Verifizierungist nichtEs ist nur da, damit Sie bestätigen, was Sie tun. Es ist da, um zu bestätigen, dass das, was Sie versuchen zu tun, mit dem übereinstimmt, was tatsächlich passiert. Ähnlich wie HTTPS soll es vor externen Faktoren wie MITM-Angriffen schützen – die von Ihnen eingegebene URL ist möglicherweise die ganze Zeit über 100 % korrekt, aber die Pakete werden möglicherweise Monate oder Jahre später plötzlich an den falschen Server umgeleitet.

verwandte Informationen