sad*_*dek 1 python ssh router os.system
我想知道是否有可能使用python脚本连接到路由器并通过ssh连接控制接口(关闭,重新启动无线网络等)。
到目前为止,我已经写了这些行,但是仍然行不通。当我查看终端时,我看到脚本在应路由器的密码来完成连接时应阻止一切。请问我该如何纠正?
以下是这些行:
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()
Run Code Online (Sandbox Code Playgroud)
提前谢谢你
您可以使用paramiko哪个是一个python 库,该库通过ssh提取通过ssh进行的远程外壳连接的抽象化,并提供了多个选项,允许用户使用rsa密钥等进行身份验证。这是示例代码,您可以重复使用以解决问题:
import paramiko
ssh = paramiko.SSHClient()
ssh.connect( 'hostname', username = 'username', password = 'password' )
ssh.exec_command( 'ls -al' )
Run Code Online (Sandbox Code Playgroud)
顺便说一下,如果您是从虚拟环境(virtualenv)运行脚本,则可以轻松地将paramiko添加到python环境中。
| 归档时间: |
|
| 查看次数: |
12061 次 |
| 最近记录: |