SSH Kernel
Project description
SSH Kernel
SSH Kernel is a Jupyter kernel specialized in executing commands remotely with paramiko SSH client.
Major requirements
- Python3.5+
- IPython 7.0+
Installation
pip install -U sshkernel
python -m sshkernel install [--user|--sys-prefix]
# Type `python -m sshkernel install --help` for more information.
To uninstall:
jupyter kernelspec remove ssh
pip uninstall sshkernel
Getting Started
Basic examples of using SSH Kernel.
Configuration
SSH Kernel obtains configuration data from ~/.ssh/config
file to connect servers.
Possible keywords are as follows:
- HostName
- User
- Port
- IdentityFile
Notes about private keys
- As private key files in
~/.ssh/
are discoverable, you do not necessarily specifyIdentityFile
- If you use a ed25519 key, please generate with or convert into old PEM format
- e.g.
ssh-keygen -m PEM -t ed25519 ...
- This is because
paramiko
library doesn't support latest format "RFC4716"
- e.g.
Configuration examples
Example1:
[~/.ssh/config]
Host myserver
HostName myserver.example.com
User admin
Port 2222
IdentityFile ~/.ssh/id_rsa_myserver
Example2:
[~/.ssh/config]
Host another-server
HostName 192.0.2.1
Minimal example:
[~/.ssh/config]
# If you specify a FQDN / IP address, same login user, and discoverable private key,
# no configuration needed
See also a tutorial above in detail.
Parameterized run
See examples/parameterized-notebook.
Limitations
- As Jupyter Notebook has limitation to handle
stdin
, you may need to change some server configuration and commands to avoid interactive input.- e.g. use publickey-authentication instead of password, enable NOPASSWD for sudo, use
expect
- e.g. use publickey-authentication instead of password, enable NOPASSWD for sudo, use
- Some shell variables are different from normal interactive shell
- e.g.
$?
,$$
- e.g.
LICENSE
This software is released under the terms of the Modified BSD License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
sshkernel-0.7.0.tar.gz
(8.6 kB
view details)
Built Distribution
sshkernel-0.7.0-py3-none-any.whl
(11.4 kB
view details)
File details
Details for the file sshkernel-0.7.0.tar.gz
.
File metadata
- Download URL: sshkernel-0.7.0.tar.gz
- Upload date:
- Size: 8.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3243cecdc088d9b025f5cf26f3976a450639c40bb4a82a9471b95ca229a93c8 |
|
MD5 | eca8b2bf6d2b3b366bfd09acefada229 |
|
BLAKE2b-256 | c3bf36a59bec521bd553d53eb0da686818b740ba655d1ea4b3e1efcb8584af60 |
Provenance
File details
Details for the file sshkernel-0.7.0-py3-none-any.whl
.
File metadata
- Download URL: sshkernel-0.7.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.6.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9c93d6380c24eae38559d63f8e17762f3d9ff648881b487a980579f3093abd1a |
|
MD5 | a327b2b367315ed2192146bdf00159f9 |
|
BLAKE2b-256 | f4b6e591e3dc302323361204d388c7ebdbe3672727a09a2fcb23bc48299f6fee |