pytho连接ssh
时间: 2023-07-03 10:22:04 浏览: 82
要在Python中连接SSH,可以使用paramiko库。以下是一个简单的示例代码:
```python
import paramiko
# 创建SSH客户端
ssh = paramiko.SSHClient()
# 自动添加主机密钥
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='your_server_host',
port=22,
username='your_username',
password='your_password')
# 执行命令
stdin, stdout, stderr = ssh.exec_command('ls')
# 打印输出结果
print(stdout.read().decode())
# 关闭连接
ssh.close()
```
你需要将 `your_server_host`、`your_username`、`your_password` 替换为实际的值。此外,你也可以使用公钥密钥进行连接,这样更加安全。
相关问题
python连接ssh
可以使用 Paramiko 库来连接 SSH。以下是一个简单的示例代码:
```python
import paramiko
# 创建 SSH 客户端
ssh = paramiko.SSHClient()
# 自动添加远程服务器的主机密钥
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接远程服务器
ssh.connect(hostname='remote.server.com', username='username', password='password')
# 执行命令
stdin, stdout, stderr = ssh.exec_command('ls -l')
# 输出命令结果
print(stdout.read().decode())
# 关闭连接
ssh.close()
```
在上面的示例中,我们首先创建了一个 SSH 客户端对象。然后,我们设置了一个策略,以便自动添加远程服务器的主机密钥,这是一个必须的步骤。接下来,我们使用 `connect()` 方法连接到远程服务器,并指定用户名和密码。一旦连接成功,我们可以使用 `exec_command()` 方法执行任何命令,这里我们执行了一个简单的 `ls -l` 命令来列出远程服务器上的目录内容。最后,我们关闭了连接。
python连接ssh使用公钥
要使用公钥连接 SSH,首先需要在远程服务器上将公钥添加到您的用户帐户中。以下是一些简单的步骤:
1. 生成 SSH 密钥对
在本地计算机上打开终端或命令提示符,输入以下命令:
```
ssh-keygen -t rsa
```
然后按照提示输入密钥的名称和密码(可选)等信息。
2. 将公钥复制到远程服务器
在本地计算机上打开终端或命令提示符,输入以下命令:
```
ssh-copy-id user@remote_host
```
其中 `user` 是您的用户名,`remote_host` 是远程服务器的地址。您需要输入远程服务器的密码,然后公钥将被复制到远程服务器的 `~/.ssh/authorized_keys` 文件中。
3. 连接 SSH
在本地计算机上打开终端或命令提示符,输入以下命令:
```
ssh user@remote_host
```
这样您就可以使用公钥连接到远程服务器了。
注意:如果您使用的是 Windows 操作系统,可以使用 PuTTY 工具来连接 SSH,并在其中配置公钥。
阅读全文