Próbowałem uruchomić to zadanie, ale nadal otrzymuję te same błędy. Próbowałem fqdn i ip hosta. Próbowałem przekazać to poświadczeniami i bez. Przyjrzałem się linijkom wskazanym w komunikacie o błędzie. Szukano google, ale nie mogę zrozumieć, dlaczego to nie działa:SSH - Python z problemem paramiko
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()
Error:
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')
- jestem w stanie połączyć się z hostem bez problemu poprzez ssh.
- Wersja ssh: OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
- Uwaga: próbuję utworzyć sposób uruchamiania serii poleceń na kilku serwerach zdalnych. Używam
sys import argv
do uruchamiania skryptu, takiego jakpython audit.py host1 host2 host3
, a następnie skrypt przeprowadzi kontrolę dla tych konkretnych hostów. Stworzyłem już skrypt basha, który to osiąga, ale chciałem mieć lepszy sposób na wykonanie go za pomocą Pythona.
Czy przyczyną może być brak słowa kluczowego "hasło"? – Tshepang