Ich habe versucht, dies zum Laufen zu bringen, aber immer die gleichen Fehler zu bekommen. Ich habe versucht, die FQDN und IP des Hosts. Ich habe versucht, es mit Anmeldeinformationen und ohne zu übergeben. Ich habe mir die Zeilen in der Fehlermeldung angesehen. Google gesucht, aber kann nicht herausfinden, warum dies nicht funktioniert:SSH - Python mit paramiko Ausgabe
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('host', username='loginname')
stdin, stdout, stderr = ssh.exec_command("pwd")
stdout.readlines()
Fehler:
Traceback (most recent call last):
File "audit.py", line 7, in <module>
ssh.connect('host', username='loginname')
File "/usr/lib/python2.6/site-packages/paramiko/client.py", line 338, in connect
self._auth(username, password, pkey, key_filenames, allow_agent, look_for_keys)
File "/usr/lib/python2.6/site-packages/paramiko/client.py", line 520, in _auth
raise SSHException('No authentication methods available')
- Ich bin in der Lage an den Host ohne Problem über ssh zu verbinden.
- ssh-Version: OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
- Zu beachten: Ich versuche, eine Möglichkeit zum Ausführen einer Reihe von Befehlen auf mehreren Remote-Servern zu erstellen. Ich verwende
sys import argv
, um das Skript wiepython audit.py host1 host2 host3
auszuführen, und dann wird das Skript die Überprüfung für diese bestimmten Hosts ausführen. Ich habe bereits ein Bash-Skript erstellt, das dies ermöglicht, aber ich wollte einen besseren Weg, es über Python zu machen.
Könnte dies auf das fehlende Schlüsselwort 'password' zurückzuführen sein? – Tshepang