Maison > développement back-end > Tutoriel Python > Comment puis-je vérifier correctement les clés d'hôte SSH lors de l'utilisation de pysftp ou Paramiko ?

Comment puis-je vérifier correctement les clés d'hôte SSH lors de l'utilisation de pysftp ou Paramiko ?

DDD
Libérer: 2024-12-04 15:20:12
original
869 Les gens l'ont consulté

How Can I Properly Verify SSH Host Keys When Using pysftp or Paramiko?

Vérification de la clé d'hôte avec pysftp

Cet article aborde le problème rencontré lors de l'utilisation de pysftp pour vérifier la clé d'hôte SSH par rapport au fichier known_hosts. L'erreur d'origine se produit car pysftp ne trouve pas la clé d'hôte à l'emplacement spécifié.

Abandon de pysftp et utilisation alternative de Paramiko

La bibliothèque pysftp a connu des bugs concernant gestion des clés d'hôte, et il est recommandé d'utiliser Paramiko directement à la place. Paramiko fournit une API robuste et bien prise en charge pour les connexions SSH, y compris la vérification de la clé d'hôte.

Gestion des clés d'hôte avec Paramiko

Paramiko permet un contrôle précis sur l'hôte gestion des clés à l'aide de la classe CnOpts. En définissant cnopts.hostkeys, vous pouvez gérer les clés d'hôte de confiance et fournir à la bibliothèque la clé attendue pour l'hôte cible.

Chargement des clés d'hôte à partir du fichier d'hôtes connus (recommandé)

L'approche la plus sécurisée consiste à utiliser un fichier d'hôtes connu contenant les clés publiques des hôtes de confiance. Ce fichier se trouve généralement dans ~/.ssh/known_hosts sur les systèmes Unix. La classe CnOpts fournit une méthode pratique pour charger les clés d'hôte à partir de ce fichier.

Ajout manuel de clés d'hôte (non recommandé)

Comme alternative moins sécurisée, vous pouvez ajouter clés d'hôte manuellement à l'aide de la classe HostKeys. Cela nécessite d'extraire la clé d'hôte du fichier d'hôtes connu ou de l'obtenir directement à partir du serveur à l'aide de SSH.

Utilisation de l'utilitaire ssh-keyscan pour la récupération de clé d'hôte à distance

Le L'utilitaire ssh-keyscan peut être utilisé pour récupérer la clé d'hôte d'un serveur distant au format requis. Cependant, notez que cette approche ne fonctionne pas si le serveur utilise un port non standard.

Ajout automatique de clé d'hôte avec AutoAddPolicy (Attention)

Si vous souhaitez pysftp pour ajouter automatiquement les clés d'hôte des nouveaux hôtes à known_hosts, vous pouvez utiliser la classe AutoAddPolicy. Cependant, il est important de faire preuve de prudence et de vérifier les clés de l'hôte de manière indépendante avant d'établir la confiance.

Obtention de l'empreinte digitale de la clé de l'hôte pour la vérification des empreintes digitales

Pour une sécurité absolue, il est recommandé pour obtenir manuellement l'empreinte digitale de la clé hôte et la vérifier directement plutôt que de compter sur la récupération à distance.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal