尝试通过Paramiko在远程主机上执行命令:
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=host, port=int(port), username=username, password=password)
stdin, stdout, stderr = ssh_client.exec_command(cmd, timeout=60)
对于"简单"命令如' top',' ls -la',' uname'等...一切正常。 但是对于像'scp'这样的密码询问命令,我得到了错误(通过Paramiko stderr):
即使在尝试使用Paramiko' stdin'输入参数的对象:权限被拒绝(publickey,键盘交互式)。
失去连接
stdin.write("myrootpasswd\n")
stdin.flush()