Seite 1 von 1

ssh Verbindung Softwareliste auslesen

Verfasst: Dienstag 20. Dezember 2011, 17:33
von zimbo
Hi

ich muss über eine ssh verbindung die installierte software auslesen (bei Windows, Linux, Mac),
bin bei meiner Sucher auf paramiko gestoßen
hab alles eingerichtet jetzt wollte ich die demo_simple testen aber bekomme einen Fehler

Code: Alles auswählen

*** Connecting...
*** Caught exception: <type 'exceptions.TypeError'>: unbound method missing_host_key() must be called with WarningPolicy instance as first argument (got SSHClient instance instead)
hab ein bissl gesucht und ne angeblich Lösung gefunden die mir dann ein Warning ausgibt bei dem ich aber auch nicht weiter komme.

Code: Alles auswählen

UserWarning: Unknown ssh-rsa host key for 192.168.178.25: 7028307c7f9bd24f6e85663bec858075
Danke im vorraus :D

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Mittwoch 21. Dezember 2011, 16:57
von fecub
welches betriebssystem benutzt du?

wenn es linux ist, die known host mal removen,

Code: Alles auswählen

rm .ssh/known_hosts
sonst würde ich dir diese anleitung empfehlen
http://jessenoller.com/2009/02/05/ssh-p ... different/

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Donnerstag 22. Dezember 2011, 08:58
von zimbo
Hi benutze Win 7 mit OpenSSH

mit Putty kann ich mich mit den SSH Server verbinden.
wo wird denn die Knowsn_hoste bei windows gespeichert?

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Donnerstag 22. Dezember 2011, 18:11
von Dav1d

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Freitag 23. Dezember 2011, 07:50
von zimbo
Dav1d hat geschrieben:http://superuser.com/questions/197489/w ... on-windows Google nanana...
Es geht hier aber um die known hosts von paramiko mit windows, putty funktioniert ja also werden die known hosts ja in ordnung sein.

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Freitag 23. Dezember 2011, 15:19
von fecub
@zimbo
poste mal bitte deinen code !

Re: ssh Verbindung Softwareliste auslesen

Verfasst: Freitag 23. Dezember 2011, 15:27
von zimbo
hi das die originale demo_symple von paramiko die ich benutze.

Code: Alles auswählen


import base64
import getpass
import os
import socket
import sys
import traceback

import paramiko
import interactive


# setup logging
paramiko.util.log_to_file('demo_simple.log')

# get hostname
username = ''
if len(sys.argv) > 1:
    hostname = sys.argv[1]
    if hostname.find('@') >= 0:
        username, hostname = hostname.split('@')
else:
    hostname = raw_input('Hostname: ')
if len(hostname) == 0:
    print '*** Hostname required.'
    sys.exit(1)
port = 22
if hostname.find(':') >= 0:
    hostname, portstr = hostname.split(':')
    port = int(portstr)


# get username
if username == '':
    default_username = getpass.getuser()
    username = raw_input('Username [%s]: ' % default_username)
    if len(username) == 0:
        username = default_username
password = getpass.getpass('Password for %s@%s: ' % (username, hostname))


# now, connect and use paramiko Client to negotiate SSH2 across the connection
try:
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    client.load_system_host_keys()
    client.set_missing_host_key_policy(paramiko.WarningPolicy())
    print '*** Connecting...'
    client.connect(hostname, port, username, password)
    chan = client.invoke_shell()
    print repr(client.get_transport())
    print '*** Here we go!'
    print
    interactive.interactive_shell(chan)
    chan.close()
    client.close()

except Exception, e:
    print '*** Caught exception: %s: %s' % (e.__class__, e)
    traceback.print_exc()
    try:
        client.close()
    except:
        pass
    sys.exit(1)