diff options
author | Joey Hess <joey@kitenet.net> | 2012-09-01 21:11:58 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2012-09-01 21:11:58 -0400 |
commit | 51dfbd77d6154744a24521c65394721aa2ca6fb1 (patch) | |
tree | b6763630bb8afe971a9340830530e117bbdd1bf0 /doc | |
parent | 53043999acc4d7c989287aac149768fa988a7c1d (diff) |
blog for the day
Diffstat (limited to 'doc')
-rw-r--r-- | doc/design/assistant/blog/day_71__ssh_probing.mdwn | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/doc/design/assistant/blog/day_71__ssh_probing.mdwn b/doc/design/assistant/blog/day_71__ssh_probing.mdwn new file mode 100644 index 000000000..ac5a47380 --- /dev/null +++ b/doc/design/assistant/blog/day_71__ssh_probing.mdwn @@ -0,0 +1,26 @@ +Got ssh probing implemented. It checks if it can connect to the server, and +probes the server to see how it should be used. + +Turned out to need two ssh probes. The first uses the system's existing ssh +configuration, but disables password prompts. If that's able to get in +without prompting for a password, then the user must have set that up, +and doesn't want to be bothered with password prompts, and it'll respect +that configuration. + +Otherwise, it sets up a per-host ssh key, and configures a hostname alias +in `~/.ssh/config` to use that key, and probes using that. +Configuring ssh this way is nice because it avoids changing ssh's +behavior except when git-annex uses it, and it does not open up the server +to arbitrary commands being run without password. + +-- + +Next up will be creating the repositories. When there's a per-host key, +this will also involve setting up `authorized_keys`, locking down the ssh +key to only allow running git-annex-shell or rsync. + +I decided to keep that separate from the ssh probing, even though it means +the user will be prompted twice for their ssh password. It's cleaner and +allows the probing to do other checks -- maybe it'll later check the amount +of free disk space -- and the user should be able to decide after the probe +whether or not to proceed with making the repository. |