Gestion des erreurs pour Java SFTP UnknownHostKeyException
Lors de l'utilisation de Java SFTP avec la bibliothèque JSch, vous pouvez rencontrer l'exception UnknownHostKey. Cette erreur se produit en raison d'informations de clé d'hôte incompatibles. La résolution implique soit d'ignorer la vérification de la clé d'hôte, soit de configurer une clé d'hôte attendue pour la vérification.
Ignorer la vérification de la clé d'hôte (non recommandé)
Évitez de désactiver la vérification de la clé d'hôte en définir "StrictHostKeyChecking" sur "no" avant de vous connecter à la session. Cette approche compromet la sécurité et ne doit être utilisée que pour les connexions fiables.
Configuration de la clé d'hôte attendue
Pour garantir des connexions sécurisées, il est essentiel de vérifier la clé d'hôte par rapport à un valeur attendue. Il existe deux méthodes pour y parvenir :
Fichier d'hôtes connus :
a. Générez un fichier "known_hosts-like" à l'aide de la commande "ssh-keyscan" (par exemple, ssh-keyscan example.com > known_hosts).
b. Configurez JSch pour qu'il utilise le fichier d'hôtes connu : JSch.setKnownHosts("/path/to/known_hosts-like").
Clé d'hôte codée en dur :
a. Obtenez la clé d'hôte attendue dans un format compatible avec JSch.getHostKeyRepository().add().
b. Ajoutez la clé d'hôte au référentiel : JSch.getHostKeyRepository().add(host, ExpectedHostKey).
En configurant une clé d'hôte connue ou codée en dur, JSch validera par rapport à valeur attendue et établir une connexion sécurisée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!