Paramiko

Содержание
Введение
Пример подключения
Объекты
Похожие статьи

Введение

Paramiko-это Python (2.7, 3.4+) реализация протокола SSHv2, обеспечивающая как клиентскую, так и серверную функциональность.

В то время как он использует расширение Python C для низкоуровневой криптографии (Cryptography), Paramiko сама по себе является чистым интерфейсом Python вокруг сетевых концепций SSH.

Документация для библиотеки Paramiko: docs.paramiko.org

Пример

Простейший пример подключения к 192.168.56.2 с пользователем andrey и паролем olegovich

#!/usr/bin/env python import time import paramiko client = paramiko.SSHClient() client.set_missing_host_key_policy(paramiko.AutoAddPolicy()) client.connect( '192.168.56.2', username='andrey', password='olegovich' ) command = 'ls' (stdin, stdout, stderr) = client.exec_command(command) time.sleep(1.0) for line in stdout.readlines(): print(line, end = '') client.close()

Обратите внимание на

client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

Это означает, что наличие ключей хоста, к которому идёт подключение, в файле known_hosts не будет проверяться.

Это небезопасно и может использоваться только при подключении к хосту, которому вы полностью доверяете.

Подробности можете изучить в статье SSH

time.sleep(1.0)

Это прямолинейный способ избежать ошибки AttributeError: 'NoneType' object has no attribute 'time'

Объекты

Разберемся что есть что

client = paramiko.SSHClient() print(type(client))

<class 'paramiko.client.SSHClient'>

(stdin, stdout, stderr) = client.exec_command(command) print(type(stdin)) print(type(stdout)) print(type(stderr))

<class 'paramiko.channel.ChannelStdinFile'> <class 'paramiko.channel.ChannelFile'> <class 'paramiko.channel.ChannelStderrFile'>

Похожие статьи
Paramiko Ошибки
Python
if, elif, else
Циклы
Методы
enum
Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@eth1.ru если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящуюю по тематике.
3. Хотите поддержать сайт материально
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......