使用paramiko进行ssh连接
前提是当前系统的公钥已经ssh-copy-id到了要连接主机的Authoried_keys下
ssh = paramiko.SSHClient()
pkey = r'C:\Users\Administrator\.ssh\id_rsa' #当前系统的rsa秘钥
key = paramiko.RSAKey.from_private_key_file(pkey)
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname=hostname, port=22, username='root', pkey=key)

#如果用用户名密码连接,timeout参数可以设置一个超时时间

#ssh.connect(hostname=hostname, port=22, username='root', password=xxx,timeout=5)

# 执行命令
stdin, stdout, stderr = ssh.exec_command("ifconfig |grep -A 1 ens33|grep inet|awk '{print $2}'")
# 获取命令结果
result = stdout.read()
# 关闭连接
ssh.close()
posted on 2019-07-10 20:24  Shawn_1026  阅读(1364)  评论(0编辑  收藏  举报