[Bug 3393] New: ssh_config: Overriding (local!) user shell

bugzilla-daemon at mindrot.org bugzilla-daemon at mindrot.org
Fri Feb 18 12:51:00 AEDT 2022


https://bugzilla.mindrot.org/show_bug.cgi?id=3393

            Bug ID: 3393
           Summary: ssh_config: Overriding (local!) user shell
           Product: Portable OpenSSH
           Version: 8.6p1
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: ssh
          Assignee: unassigned-bugs at mindrot.org
          Reporter: nhed+openssh-bugzilla22 at starry.com

We have a large shared ssh config that is shared between many
company employees.  A few of the entries have items like

    Host bla+*
        ProxyCommand ssh -q bla-jumpbox nc $(sed 's at bla+@@;
s at .blahnet@@'<<<%h).blahnet %p


Which usually works perfectly.  Today I learned that some users use
shells where this is not valid syntax (fish).

As a temporary workaround I advised the user to try to alias `ssh`
and `scp` so that they are prefixed with `SHELL=/bin/sh`.

Obviously we would make all of these wrapped with `sh -c "...."`
but that will make the configs less readable and we also would 
probably miss some because the user adding an entry is most likely
the rare `fish` user.

Suggestion: Add an ssh_config keyword such as `LocalShell` to 
override current logic when determining local shell to use
when executing:
    - ProxyCommand,
    - LocalCommand, &
    - Match exec statements

NOTE: this is about the *LOCAL* (client side) shell.

-- 
You are receiving this mail because:
You are watching the assignee of the bug.


More information about the openssh-bugs mailing list