paramiko ssh 服务器 执行命令
时间: 2024-09-06 07:04:14 浏览: 20
Paramiko 是一个用 Python 编写的模块,它提供了对 SSHv2 协议的支持。可以用来在服务器上执行命令、文件传输等操作。使用 Paramiko 执行 SSH 命令通常包括以下几个步骤:
1. 安装 Paramiko 模块:可以通过 pip 工具来安装 Paramiko,使用命令 `pip install paramiko`。
2. 创建 SSH 对象:使用 Paramiko 的 `SSHClient` 对象创建一个 SSH 客户端,并连接到目标服务器。
3. 自动接受主机密钥:为了避免每次连接时都手动确认服务器的密钥,可以设置自动接受。
4. 执行命令:使用 `exec_command` 方法在服务器上执行命令,并获取命令执行的输出。
下面是一个简单的示例代码,展示如何使用 Paramiko 连接到 SSH 服务器并执行命令:
```python
import paramiko
# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器,需要提供hostname, port(默认是22), username, password
ssh.connect(hostname='your_server_ip', port=22, username='your_username', password='your_password')
# 执行命令
stdin, stdout, stderr = ssh.exec_command('ls -l')
# 获取命令结果
for line in stdout:
print(line.strip('\n'))
# 关闭连接
ssh.close()
```
在使用 Paramiko 执行 SSH 命令时,请确保正确处理了异常和错误,比如网络问题、认证失败等,并且在生产环境中建议不要直接使用密码,而是使用密钥认证的方式来提高安全性。