Expose AuthorizedKeysFile to user session
John Drinkwater
john at nextraweb.com
Wed Nov 21 08:38:35 AEDT 2018
Hi,
I’d like to ask about the best method of exposing AuthorizedKeysFile to
the user session, so that scripts such as ssh-copy-id that log-in and
locally run commands to append a key know where the file(s) are.
There’s (rightly or not) a large amount of assumption in the location of
~/.ssh/, even though pathnames.h does its best to make that flexible
with compile-time adjustments for paths: _PATH_SSH_USER_PERMITTED_KEYS,
yet not for others: "%.200s/.ssh/environment".
sshd_config does offer flexibility for some variables at runtime, though
that hasn’t been met by clients interacting with ssh because those
variable changes aren’t published.
I’m thinking do_setup_env could emit an envvar SSH_AUTHORIZEDKEYFILE(?)
of the first user-writeable file from this array, with tokens already
parsed so future changes should not impact clients. But is that
short‐sighted and instead or as well should _PATH_SSH_USER_DIR be shared
too?
Is there something obvious I don’t know of that could avoid all of this?
I had taken a step* at making ssh-copy-id work with a relocated
authorized_keys but Jakub Jelen informed me sshd_config is not often
readable by users. Which suggests sshd needs this work done.
* https://bugzilla.mindrot.org/show_bug.cgi?id=2932
Regards,
--
John ‘[Beta]’ Drinkwater | john at nextraweb.com
More information about the openssh-unix-dev
mailing list