paramiko 基于密钥文件登陆

Posted sunshinekimi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了paramiko 基于密钥文件登陆相关的知识,希望对你有一定的参考价值。

首先密钥登陆远程的原理

client 端 将公钥放在远程机器authorized_keys:

使用 ssh-copy-id  app@ip

接着在client机器生成密钥 使用ssh-keygen -t  rsa 生成密钥对,id_rsa:

编写测试脚本:

 

import paramiko
hostname="192.168.110.131"
port=22
username="app"
#client ssh-keygen -t rsa 生成的id_rsa 私钥 pkey_path="/home/app/.ssh/id_rsa" private = paramiko.RSAKey.from_private_key_file(pkey_path) paramiko.util.log_to_file(‘paramiko.log‘) client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect(hostname,port,username,pkey=private) stdin, stdout, stderr = client.exec_command(‘df -h ‘) print(stdout.read().decode(‘utf-8‘))

  

以上是关于paramiko 基于密钥文件登陆的主要内容,如果未能解决你的问题,请参考以下文章

Python - pysftp / paramiko - 使用其指纹验证主机密钥

Paramiko 无法识别 ssh-keygen 生成的 SSH 密钥:“不是有效的 RSA 私钥文件”

Paramiko 无法识别 ssh-keygen 生成的 SSH 密钥:“不是有效的 RSA 私钥文件”

Paramiko 无法识别 ssh-keygen 生成的 SSH 密钥:“不是有效的 RSA 私钥文件”

Paramiko,数据库

堡垒机 paramiko 自动登陆代码