Automatisation des commandes SSH avec Python
En Python, vous pouvez automatiser les tâches de ligne de commande à l'aide de subprocess.call(), comme démontré dans le exemple fourni. Cependant, pour exécuter des commandes sur un système distant via SSH, une approche différente est nécessaire.
Implémentation de commandes SSH distantes avec Paramiko
Pour faciliter la connectivité SSH et l'exécution des commandes dans Python, pensez à utiliser la bibliothèque Paramiko. Il fournit un ensemble complet d'outils pour gérer les sessions SSH à distance.
La syntaxe recommandée pour exécuter une commande à distance avec Paramiko est la suivante :
<code class="python">import paramiko ssh = paramiko.SSHClient() ssh.connect(server, username=username, password=password) ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd_to_execute)</code>
Pour utiliser les clés SSH pour l'authentification au lieu de mots de passe, utilisez l'extrait de code suivant :
<code class="python">import paramiko k = paramiko.RSAKey.from_private_key_file(keyfilename) # OR k = paramiko.DSSKey.from_private_key_file(keyfilename) ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(hostname=host, username=user, pkey=k)</code>
En tirant parti de Paramiko, vous pouvez automatiser sans effort les commandes SSH distantes en Python, améliorant considérablement votre capacité à gérer des systèmes distants à partir de votre script.
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!