ssh-connect Probleme

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
chw80
User
Beiträge: 5
Registriert: Mittwoch 20. November 2019, 14:01

Hallo zusammen,

ich bin so langsam etwas ratlos, da mein Problem laut Internet-Recherche recht simpel zu sein scheint, bei mir jedoch nicht funktionert.
Ich versuche mehrere ssh-connect (IP´s aus einer Liste) auf mehrere Device zu starten und eine/mehrere anschließende Abfragen in eine .csv zu speichern.

Leider bekomme ich aktuell noch nicht einmal das ssh-connect ohne Fehlermeldung hin.
Bedingt durch meine Versuche habe ich mittlerweile den Überblick verloren um einen "sauberen" Neustart hinzubekommen.

Frage:
Wie kann ich am besten eine ssh Verbindung herstellen und die Abfragen in eine Datei speichern.

Bislang bekomme ich hierüber ohne Fehler eine Verbindung, jedoch keine Ausgabe angezeigt:
import paramiko

ip='127.0.0.1'
port=22
username='USER'
password='PASSWORD'

cmd='where'

ssh=paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(ip,port,username,password)

stdin,stdout,stderr=ssh.exec_command(cmd)
outlines=stdout.readlines()
resp=''.join(outlines)
print(resp)


Gruß
chw
Benutzeravatar
__blackjack__
User
Beiträge: 14053
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@chw80: Was ist denn ``where``? Lass Dir auch `stderr` ausgeben. Da bekomme ich dann:

Code: Alles auswählen

bash: where: command not found
“Vir, intelligence has nothing to do with politics!” — Londo Mollari
Benutzeravatar
joernius
User
Beiträge: 31
Registriert: Donnerstag 11. Juni 2020, 13:47
Wohnort: Dresden
Kontaktdaten:

SSH-Verbindung zu Port 127.0.01?
Benutzeravatar
sparrow
User
Beiträge: 4538
Registriert: Freitag 17. April 2009, 10:28

@joernius: Wo siehst du da einen Port 127.0.0.1? Das ist die IP.
Benutzeravatar
joernius
User
Beiträge: 31
Registriert: Donnerstag 11. Juni 2020, 13:47
Wohnort: Dresden
Kontaktdaten:

Ja, freudscher Fehler. Wohin willst Du dich denn verbinden?

Innerhalb einer IP-Range?
Hast Du root-Rechte auf dem SSH-Server?

Mehr Infos gibt es mit der Option -v, -vv oder -vvv, Fehler in eine Datei macht "PROGRAMM 2>Fehlerdatei.txt".
ssh -vv SERVER-IP 2>logdatei.txt
Bist Du root auf dem SSH-Server? -> melde dich, sicherheitshalber mit 2 Konsolen, an und stoppe den ssh-Dienst, starte diesen dann manuell im Debug-Modus .
Vorher überprüfen ob /run/sshd existiert.
sudo -i
mkdir /run/sshd # Wenn noch nicht vorhanden
systemctl stop sshd && /usr/sbin/sshd -ddd -D
- have a lot of fun -
Antworten