Bagaimana cara membuat file host yang dikenal? [duplikat]

Dec 15 2020

Saya mencoba terhubung ke situs SFTP menggunakan python tetapi file known_hosts tidak ada di mesin windows 10 saya. Saya menemukan secara online bahwa kunci host muncul saat pertama kali menghubungkan ke server:https://winscp.net/eng/docs/ssh_verifying_the_host_key

Bagaimana cara mengubahnya menjadi file known_hosts yang dapat saya gunakan dalam kode python saya?

Saya mencoba membuat file seperti: hostname ssh-rsa 2EP...8MZpada contoh di atas tetapi saya menerima kesalahan kunci host yang tidak valid:Error('Incorrect padding'))

Terima kasih.

import pysftp

cnopts = pysftp.CnOpts(knownhosts='C:\\Users\\Documents\\known_hosts')

with pysftp.Connection('xxx',username='xxx', password='xxx',cnopts=cnopts) as sftp:
    localpath='TEST.txt'
    remotepath='TEST.txt'
    sftp.put(localpath,remotepath)
    sftp.close()

Jawaban

TheDevKiller Dec 15 2020 at 21:28

Pertama, Anda pasti ingin tahu protokol apa yang Anda gunakan. Dalam pertanyaan Anda, Anda menyebutkan beberapa kali FTP, dan kode Anda + konsep yang Anda bicarakan (known_hosts) adalah hal-hal SFTP.

FTP dan SFTP adalah dua protocole yang sangat berbeda, FTP menjadi satu untuk mentransfer file antara klien dan server dan SFTP untuk memindahkan file antara klien dan server SSH.

SaltyLeaguePlayer Dec 15 2020 at 23:03

TERPECAHKAN!!! Jadi saya menggunakan Windows dan menggunakan FileZilla dan WinScp untuk transfer sftp tetapi file C: \ Users .... ssh tidak pernah ada sejauh yang saya ketahui. Saya mengunduh klien Windows SSH:https://www.howtogeek.com/336775/how-to-enable-and-use-windows-10s-built-in-ssh-commands/

Dan kemudian menggunakan PowerShell untuk terhubung ke server. Ketika Anda memasukkan perintah: ssh hostnameitu akan menyatakan sidik jari RSA dan menanyakan apakah Anda ingin menghubungkan. Masukkan Ya dan itu akan mengembalikan "Peringatan: 'Nama host' yang ditambahkan secara permanen ke daftar host yang dikenal. File .ssh kemudian akan muncul di direktori C: \ Users .... ssh Anda. Ini kemudian dapat direferensikan dengan python.

Terima kasih.