X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=remoteusage%2Faboriginal.mdwn;h=88ad036ae7af90b3df807353e4f1c0218349aca5;hb=a0cd5d78701ce4b05e1cd5d0b9d92c0557f3b4db;hp=540381b752913109112f8140ba7cd1054a5bfcdd;hpb=264ce3866a61e26da9b644a522cd9e857ac94c7b;p=notmuch-wiki diff --git a/remoteusage/aboriginal.mdwn b/remoteusage/aboriginal.mdwn index 540381b..88ad036 100644 --- a/remoteusage/aboriginal.mdwn +++ b/remoteusage/aboriginal.mdwn @@ -7,17 +7,14 @@ other requirements and general information. This solution uses one pre-made ssh connection where the client is put into "master" mode (-M) for connection sharing. The wrapper script then uses the control socket created by this pre-made ssh connection for -its own connection. - -Write the following code to a file, for example `remote-notmuch.sh`. -There is just one line to that normally needs configuration: - - readonly SSH_CONTROL_SOCK='~'/.ssh/master-user@host:22 - -the options howto are presented after the script. +its own connection. As long as master ssh connection is live, slave +can use it. Disconnecting master all future attempts to connect +from the script will fail. ## The script +Write the following code to a file, for example `remote-notmuch.sh`. + #!/bin/bash # http://notmuchmail.org/remoteusage/aboriginal/ @@ -55,6 +52,11 @@ the options howto are presented after the script. echo " See`sed '1d;2d;s/.//;q' "$0"` for help." +Note the `0.1` in ssh command line. It is used to avoid any opportunistic +behaviour ssh might do; for example if control socket is not alive ssh +would attempt to do it's own ssh connection to remote ssh server. As +address `0.1` is invalid this attempt will fail early. + ## Test Easiest way to test this script is to run the pre-made ssh connection @@ -69,10 +71,10 @@ terminal and then test the script with `./remote-notmuch.sh help` Note that the '~' is inside single quotes for a reason. In this case shell never expand it to `$HOME` -- ssh does it by not reading -`$HOME` but checking the real user home directory from `/etc/passewd`. +`$HOME` but checking the real user home directory from `/etc/passwd`. For security purposes this is just how it should be. -## Tunkkaa +## Tune The path `'~'/.ssh/master-user@host:22` might look too generic to be used as is as the control socket after initial testing (but it can