ssh-Verbindung zu einem router mit einem python-Skript
Wollte ich wissen, ob es eine Möglichkeit gibt, verwenden Sie ein python-Skript, um die Verbindung zu einem router und die Steuerung der Oberfläche (Herunterfahren, neu starten, WLAN-Netzwerk, etc..) mit einer ssh-Verbindung.
Bisher schrieb ich diese Zeilen,aber es funktioniert nicht. Wenn ich mir auf dem terminal sehe ich, dass alles blockiert ist, wenn mein script sollte echo das Kennwort für den router, um die Verbindung herzustellen. Wie kann ich das korrigieren, bitte ?
Hier sind die Zeilen :
import os, urllib, urllib2, re
def InterfaceControl():
#os.system("echo training")
os.system("ssh -l root 192.168.2.1")
os.system("echo yes")
os.system("echo My_ROUTER_PASSWORD")
os.system("shutdown -r")
def main():
InterfaceControl()
if __name__=="__main__":
main()
Vielen Dank im Voraus
InformationsquelleAutor sadek | 2013-03-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie
paramiko
was ist ein python -Bibliothek, abstracts remote-shell-verbindungen über ssh mit mehrere Optionen, mit denen Benutzer zur Verwendung der Authentifizierung mit rsa-keys, etc. Dies ist ein Beispiel-code, den Sie wieder verwenden können, um Ihr problem zu lösen:Übrigens paramiko können einfach Hinzugefügt werden, um Ihre python-Umgebung, wenn Sie Ihr Skript aus einer virtuellen Umgebung (virtualenv).
paramiko arbeitete wie ein Charme, Dank so viel @ylabidi !
Paramiko ist exec_command nutzt scp und gibt "Protokoll-Fehler kein start mit scp" - Fehler. Mit paramiko ist invoke_shell() stattdessen kann helfen. Hier ist ein link stackoverflow.com/questions/30603219/...
InformationsquelleAutor ylabidi
plumbum ist, was Sie suchen. (remote-Befehle)
InformationsquelleAutor shx2