Otomatis menerima sidik jari kunci rsa dari baris perintah

15

Saya sudah mencoba yes | ssh [email protected]untuk mencoba menerima sidik jari kunci RSA, tetapi saya masih diminta jika saya yakin ingin terhubung. Apakah ada cara untuk membuat ini otomatis?

VenomFangs
sumber

Jawaban:

8

Tambahkan ini ke file startup bash Anda, atau serupa:

 #
 #  ssh + scp without storing or prompting for keys.
 #
 function sshtmp
 {
     ssh -o "ConnectTimeout 3" \
         -o "StrictHostKeyChecking no" \
         -o "UserKnownHostsFile /dev/null" \
              "$@"
 }
 function scptmp
 {
     exec scp -o "ConnectTimeout 3" \
         -o "StrictHostKeyChecking no" \
         -o "UserKnownHostsFile /dev/null" \
         "$@"
 }

Kemudian gunakan sshtmp, atau scptmpdi tempat sshdan scp.

CATATAN Jika Anda melewati jalan ini, Anda tidak akan diberi tahu bahwa kunci host telah berubah dan akan kehilangan keamanan.


sumber
4
Terima kasih ssh -o "StrictHostKeyChecking no" [email protected]berhasil untuk saya
VenomFangs
16
bagaimana ini jawabannya? Pertanyaannya adalah menerima kunci secara otomatis, bukan mengabaikannya! Jika ini ditanyakan dan dijawab di sini, bagaimana cara menemukan jawaban untuk pertanyaan aktual "Terima kunci secara otomatis"? Benci untuk melakukan downvote tetapi datang-pada orang, ini bukan cara pertukaran stack seharusnya!
JohnnyB
@ JohnnyB lihat jawaban saya. Ini bukan solusi terbersih, tetapi sebenarnya memungkinkan kunci untuk diterima secara otomatis
RDP
13

OpenSSH 7.6 telah memperkenalkan StrictHostKeyChecking=accept-newpengaturan baru untuk tujuan ini:

ssh(1): expand the StrictHostKeyChecking option with two new
   settings. The first "accept-new" will automatically accept
   hitherto-unseen keys but will refuse connections for changed or
   invalid hostkeys. This is a safer subset of the current behaviour
   of StrictHostKeyChecking=no. The second setting "n", is a synonym
   for the current behaviour of StrictHostKeyChecking=no: accept new
   host keys, and continue connection for hosts with incorrect
   hostkeys. A future release will change the meaning of
   StrictHostKeyChecking=no to the behaviour of "accept-new".

( Catatan Rilis OpenSSH 7.6 )

Klas Š.
sumber
10

Menggunakan SSH Secara terprogram dengan kunci host yang dikenal

Jika yang Anda inginkan adalah dapat menggunakan program dan menghindari serangan Man-In-The-Middle , maka saya sarankan Anda mendapatkan sidik jari yang dikenal menggunakan perintah ssh-keyscan. Contoh:

$ ssh-keyscan -t rsa,dsa github.com 2>/dev/null
github.com ssh-dss AAAAB3NzaC1kc3MAAACBANGFW2P9xlGU3zWrymJgI/lKo//ZW2WfVtmbsUZJ5uyKArtlQOT2+WRhcg4979aFxgKdcsqAYW3/LS1T2km3jYW/vr4Uzn+dXWODVk5VlUiZ1HFOHf6s6ITcZvjvdbp6ZbpM+DuJT7Bw+h5Fx8Qt8I16oCZYmAPJRtu46o9C2zk1AAAAFQC4gdFGcSbp5Gr0Wd5Ay/jtcldMewAAAIATTgn4sY4Nem/FQE+XJlyUQptPWMem5fwOcWtSXiTKaaN0lkk2p2snz+EJvAGXGq9dTSWHyLJSM2W6ZdQDqWJ1k+cL8CARAqL+UMwF84CR0m3hj+wtVGD/J4G5kW2DBAf4/bqzP4469lT+dF2FRQ2L9JKXrCWcnhMtJUvua8dvnwAAAIB6C4nQfAA7x8oLta6tT+oCk2WQcydNsyugE8vLrHlogoWEicla6cWPk7oXSspbzUcfkjN3Qa6e74PhRkc7JdSdAlFzU3m7LMkXo1MHgkqNX8glxWNVqBSc0YRdbFdTkL0C6gtpklilhvuHQCdbgB3LBAikcRkDp+FCVkUgPC/7Rw==
github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==

Kemudian Anda bisa memalsukan skrip untuk menyimpannya ke file sementara dan menggunakan UserKnownHostsFileopsi. Contoh di bawah ini adalah skrip, yang dapat disebut ssh_github:

#!/bin/bash

HOSTKEY='github.com ssh-dss AAAAB3NzaC1kc3MAAACBANGFW2P9xlGU3zWrymJgI/lKo//ZW2WfVtmbsUZJ5uyKArtlQOT2+WRhcg4979aFxgKdcsqAYW3/LS1T2km3jYW/vr4Uzn+dXWODVk5VlUiZ1HFOHf6s6ITcZvjvdbp6ZbpM+DuJT7Bw+                      h5Fx8Qt8I16oCZYmAPJRtu46o9C2zk1AAAAFQC4gdFGcSbp5Gr0Wd5Ay/jtcldMewAAAIATTgn4sY4Nem/FQE+XJlyUQptPWMem5fwOcWtSXiTKaaN0lkk2p2snz+EJvAGXGq9dTSWHyLJSM2W6ZdQDqWJ1k+cL8CARAqL+UMwF84CR0m3hj+wtVGD/J4G5kW2DBAf4/bqzP4469lT+dF2FRQ2L9JKXrCWcnhMtJUvua8dvnwAAAIB6C4nQfAA7x8oLta6tT+oCk2WQcydNsyugE8vLrHlogoWEicla6cWPk7oXSspbzUcfkjN3Qa6e74PhRkc7JdSdAlFzU3m7LMkXo1MHgkqNX8glxWNVqBSc0YRdbFdTkL0C6gtpklilhvuHQCdbgB3LBAikcRkDp+FCVkUgPC/7Rw==
github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+                                                                                                                                      PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+    2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=='

TEMPFILE=$(mktemp)
echo "$HOSTKEY" > $TEMPFILE

ssh -o "UserKnownHostsFile $TEMPFILE" $@

rm $TEMPFILE

Dengan ini, Anda bisa menjalankan ssh_githubalih-alih sshdan itu akan terhubung bahkan jika tidak ada known_hostsfile tempat Anda meletakkan skrip.

RDP
sumber
0

Saya hanya menggunakan: 'ssh -o StrictHostKeyChecking = no user @ host', ini juga dapat digunakan dengan pssh: 'pssh -O StrictHostKeyChecking = no -h list.text -l pengguna -A -i "cmd"'

Salam,

Diego Souza
sumber
Ini bekerja untuk saya, apakah ada alasan mengapa itu tidak dipilih? Juga membutuhkan OpenSSH 7.6+
Xenocide8998
-3

Anda dapat menggunakan -yopsi: yaitu mencoba

ssh -y [email protected]

-y Selalu terima kunci host jarak jauh jika tidak dikenal

pengguna392897
sumber
Selamat Datang di Kesalahan Server! Silakan gunakan Markdown dan / atau opsi pemformatan di menu edit untuk mengetik dengan benar posting Anda untuk meningkatkan keterbacaannya. Ini adalah konvensi untuk memformat perintah sebagai " code".
HBruijn
Aneh tapi pada pria aku melihat yang berikut --y Send log information using the syslog system module. By default this information is sent to stderr.
ALex_hha
Saya melihat hal yang sama dalam diri manusia.
Király István
ini bukan opsi ssh yang valid? Dari mana Anda menyalin / menempel ini?
Flo Woo
2
Opsi ini hanya ada di SSH dropbear, bukan OpenSSH.
Jeremy Visser