Ви можете кодувати його самостійно, використовуючи Paramiko, як було запропоновано вище. Крім того, ви можете заглянути у Fabric, програму на пітоні, яка робить все, про що ви запитували:
Fabric - це бібліотека та інструмент командного рядка Python, призначений для спрощення розгортання програм або виконання завдань системного адміністрування за допомогою протоколу SSH. Він надає інструменти для запуску довільних команд оболонки (або як звичайного користувача для входу, або через sudo), завантаження та завантаження файлів тощо.
Я думаю, це відповідає вашим потребам. Це також не велика бібліотека, і вона не вимагає встановлення сервера, хоча вона має залежності від paramiko та pycrypt, які вимагають встановлення на клієнті.
Колись тут був додаток . Тепер його можна знайти тут .
* The official, canonical repository is git.fabfile.org
* The official Github mirror is GitHub/bitprophet/fabric
Є кілька хороших статей про це, хоча ви повинні бути обережними, оскільки він змінився за останні півроку:
Розгортання Django за допомогою Fabric
Інструменти сучасного хакера Python: Virtualenv, Fabric і Pip
Просте та легке розгортання за допомогою тканини та Virtualenv
Пізніше: Тканина більше не вимагає установки paramiko:
$ pip install fabric
Downloading/unpacking fabric
Downloading Fabric-1.4.2.tar.gz (182Kb): 182Kb downloaded
Running setup.py egg_info for package fabric
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no files found matching 'fabfile.py'
Downloading/unpacking ssh>=1.7.14 (from fabric)
Downloading ssh-1.7.14.tar.gz (794Kb): 794Kb downloaded
Running setup.py egg_info for package ssh
Downloading/unpacking pycrypto>=2.1,!=2.4 (from ssh>=1.7.14->fabric)
Downloading pycrypto-2.6.tar.gz (443Kb): 443Kb downloaded
Running setup.py egg_info for package pycrypto
Installing collected packages: fabric, ssh, pycrypto
Running setup.py install for fabric
warning: no previously-included files matching '*' found under directory 'docs/_build'
warning: no files found matching 'fabfile.py'
Installing fab script to /home/hbrown/.virtualenvs/fabric-test/bin
Running setup.py install for ssh
Running setup.py install for pycrypto
...
Successfully installed fabric ssh pycrypto
Cleaning up...
Це, в основному, косметичне, однак: ssh - це виделка paramiko, супровід для обох бібліотек однаковий (Джефф Форсьєр, також автор Fabric), і супровідник планує возз'єднати paramiko та ssh під назвою paramiko . (Ця корекція через pbanka .)