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

Поиск по сайту

Подпишитесь на Telegram канал @aofeed чтобы следить за выходом новых статей и обновлением старых

Перейти на канал

@aofeed

Задать вопрос в Телеграм-группе

@aofeedchat

Контакты и сотрудничество:
Рекомендую наш хостинг beget.ru
Пишите на info@urn.su если Вы:
1. Хотите написать статью для нашего сайта или перевести статью на свой родной язык.
2. Хотите разместить на сайте рекламу, подходящую по тематике.
3. Реклама на моём сайте имеет максимальный уровень цензуры. Если Вы увидели рекламный блок недопустимый для просмотра детьми школьного возраста, вызывающий шок или вводящий в заблуждение - пожалуйста свяжитесь с нами по электронной почте
4. Нашли на сайте ошибку, неточности, баг и т.д. ... .......
5. Статьи можно расшарить в соцсетях, нажав на иконку сети: