Menyelesaikan Ralat UnknownHostKey dalam Java SFTP Menggunakan JSch
Ralat "UnknownHostKey" berlaku apabila JSch menemui kunci hos yang tidak diketahui semasa membuat sambungan SFTP . Untuk menyelesaikan isu ini, anda perlu menyediakan JSch dengan kunci hos yang dijangkakan untuk pengesahan.
Menetapkan StrictHostKeyChecking
Pada mulanya, anda cuba melumpuhkan semakan kunci hos dengan menetapkan " StrictHostKeyChecking" kepada "tidak" sebelum menyambung ke pelayan SFTP. Ini adalah risiko keselamatan dan tidak boleh dilakukan melainkan benar-benar perlu.
Pendekatan yang Betul: Menetapkan Kunci Hos yang Dijangka
Sebaliknya, anda harus menyediakan kunci hos yang dijangkakan untuk JSch untuk mengesahkan terhadap. Terdapat dua kaedah utama untuk mencapai ini:
Menggunakan Fail known_hosts
ssh-keyscan example.com > known_hosts JSch.setKnownHosts("path/to/known_hosts");
Menggunakan HostKeyRepository
// Create HostKey from public key HostKey key = new HostKey("example.com", "rsa", ...); // Add HostKey to repository JSch.getHostKeyRepository().add(key);
Nota: Kedua-dua pendekatan memastikan JSch boleh mengesahkan ketulenan pelayan SFTP menggunakan kunci hos yang dijangkakan , dengan itu menyelesaikan ralat "UnknownHostKey".
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat 'UnknownHostKey' dalam Java SFTP Menggunakan JSch?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!