From abbcd30fa12470ff3d9fc0d8f6de4de6f5437e33 Mon Sep 17 00:00:00 2001 From: David Wilson Date: Sun, 10 Sep 2017 12:45:28 +0530 Subject: [PATCH] fakessh: add nice graphml image --- docs/images/fakessh.graphml | 331 ++++++++++++++++++++++++++++++++++++ docs/images/fakessh.png | Bin 0 -> 8569 bytes docs/index.rst | 26 ++- 3 files changed, 341 insertions(+), 16 deletions(-) create mode 100644 docs/images/fakessh.graphml create mode 100644 docs/images/fakessh.png diff --git a/docs/images/fakessh.graphml b/docs/images/fakessh.graphml new file mode 100644 index 00000000..b07bc162 --- /dev/null +++ b/docs/images/fakessh.graphml @@ -0,0 +1,331 @@ + + + + + + + + + + + + + + + + + + + + + + + + bastion + + + + + + + + + + + + + + + + + + ssh.webserver + + + + + + + + + + + + + + + + + + sudo.webapp + + + + + + + + + + + + + + + + + + fakessh + + + + + + + + + + + + + + + + + + rsync + + + + + + + + + + + + + + + + + + rsync --server + + + + + + + + + + + + + + + + + + ssh.fileserver + + + + + + + + + + + + + + + + + + master + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/fakessh.png b/docs/images/fakessh.png new file mode 100644 index 0000000000000000000000000000000000000000..b58e07bf7fb710b29b975b4e0bca9ba8a8cf420a GIT binary patch literal 8569 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 ZfKSLww{(3J_)7(rvV!{4;wNSy{{yLcSx^7~ literal 0 HcmV?d00001 diff --git a/docs/index.rst b/docs/index.rst index 9d42a443..aa5d2e70 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -128,6 +128,9 @@ context has hung. SSH Client Emulation #################### +.. image:: images/fakessh.png + :align: right + Support is included for starting subprocesses with a modified environment, that cause their attempt to use SSH to be redirected back into the host program. In this way tools like `rsync`, `sftp`, and `scp` can efficiently reuse the host @@ -141,23 +144,14 @@ example enforce an interactive sudo TTY and account password. .. code-block:: python - bastion = router.ssh( - hostname='bastion.mycorp.com' - ) - - appserver = router.ssh( - via=bastion, - hostname='appserver1.internal.mycorp.com' - ) - - appuser = router.sudo( - via=appserver - username='appuser', - ) + bastion = router.ssh(hostname='bastion.mycorp.com') + webserver = router.ssh(via=bastion, hostname='webserver') + fileserver = router.ssh(via=bastion, hostname='fileserver') + webapp = router.sudo(via=webserver, username='webapp') - appuser.call(my_diagnostic_function) - # Transparently tunnelled over bastion -> appserver -> appuser link. - econtext.fakessh.run(appuser, ['rsync', 'appdata', 'appserver:appdata']) + # Transparently tunnelled over fileserver -> .. -> sudo.webapp link + fileserver.call(econtext.fakessh.run, webapp, + ['rsync', 'appdata', 'appserver:appdata']) Module Forwarder