Некоторые различия между OpenSSH и Paramiko при работе с удалёнными серверами:
- OpenSSH обычно более портативный и лучше интегрируется с конфигурацией пользователя. 1 С внешней точки зрения OpenSSH более настраиваемый: пользователь может настроить поведение SSH, изменив файл ~/.ssh/config. 1 Однако у OpenSSH есть ограничения: он в основном работает как чёрный ящик, и для обнаружения проблем на уровне сети или SSH приходится анализировать вывод программы. 1 Также при использовании OpenSSH могут возникать проблемы с производительностью из-за большого количества процессов, которые создаются для выполнения команд SSH. 1
- Paramiko решает эти проблемы, перемещая обработчик SSH внутрь процесса в виде библиотеки Python. 1 Он использует поддержку нескольких сеансов в протоколе SSH 2, чтобы запускать несколько команд по одному постоянному соединению. 1 Однако для использования Paramiko необходимо использовать sshd протокола 2 на удалённой машине и установить библиотеку Paramiko. 1 Также у Paramiko более слабая поддержка ssh_config, он поддерживает только поиск файлов ключей. 1
Таким образом, выбор между OpenSSH и Paramiko зависит от конкретных требований проекта и уровня контроля, который необходим над реализацией SSH. 3