Signing back into the Community for the first time? You'll need to reset your password to access your account.  Find out more.

Forum Discussion

pcorreia's avatar
pcorreia
New Contributor
2 months ago
Solved

Is it possible to select the SSH Client I want to use for ssh:// entries?

The way my company uses 1Password is by creating entries for firewalls located at our clients.
Simple user and password entries that have the https and ssh links on them.

I use Xshell, and have whole environment over it with automations and color coding to help me do things faster.

What I need is just to be able to open XShell instead of Putty when I click ssh:// links inside 1Password.

I use Windows 11.

  • We're working on better Windows support. This is what we currently have on the nightly channel (and soon in the beta too): you can choose between launching it with Windows Terminal (which uses wt.exe under the hood), which is the default, or you can specify a custom launch command. I don't have Xshell.exe installed myself, but you could try if this works:

     

  • kyanny's avatar
    kyanny
    New Contributor

    I have the same problem with macOS.

    Recently 1Password started disrespecting the default URL scheme handler for ssh protocol.

    I've set iTerm.app to the default URL scheme handler for ssh protocol, but when I click ssh:// link on a 1Password item, it opens Terminal.app to connect to the remote server via SSH.

    Navigating ssh:// link from other app (for example, a hyperlink on the Obsidian markdown editor) opens iTerm.app as expected.

    It appears that 1Password ignores the OS-level default handler configuration.

    I use 1Password for Mac 8.10.60 through Production channel. I don't see the following option with my desktop app.

    > Under Developer -> Advanced, there's an option for "Open SSH URLs with: _________ "

    • pcorreia's avatar
      pcorreia
      New Contributor

      Hopefully they'll bring this to Windows as well...

      Right now I'm disapointed for it not following the OS handler and neither letting me choose how to deal with those links.

      • floris_1P's avatar
        floris_1P
        Icon for 1Password Team rank1Password Team

        We're working on better Windows support. This is what we currently have on the nightly channel (and soon in the beta too): you can choose between launching it with Windows Terminal (which uses wt.exe under the hood), which is the default, or you can specify a custom launch command. I don't have Xshell.exe installed myself, but you could try if this works:

         

    • OscarP's avatar
      OscarP
      New Contributor

      On Mac if you click Use the SSH Agent an "Advanced" box should appear

       

       

      • floris_1P's avatar
        floris_1P
        Icon for 1Password Team rank1Password Team

        Correct, you can have it open iTerm by going to Settings > Developer > Advanced > Open SSH URLs with: iTerm

         

  • pcorreia's avatar
    pcorreia
    New Contributor

    Ok, I managed to create a handler for ssh URLs.
    But it looks like 1Password doesn't use that handler. So, a bit frustrated... I needed to know how 1Password calls an external program to SSH. Is it directly? Is it a different handler?

    I'll paste the Reg file I created for the Xshell handler, it might be helpful for someone else.

    Windows Registry Editor Version 5.00
    
    [HKEY_CLASSES_ROOT\telnet]
    @="URL:Telnet Protocol"
    "EditFlags"=dword:00000002
    "FriendlyTypeName"="@ieframe.dll,-907"
    "URL Protocol"=""
    "BrowserFlags"=dword:00000008
    
    [HKEY_CLASSES_ROOT\telnet\DefaultIcon]
    @="C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe,0"
    
    [HKEY_CLASSES_ROOT\telnet\shell]
    @=""
    
    [HKEY_CLASSES_ROOT\telnet\shell\open]
    
    [HKEY_CLASSES_ROOT\telnet\shell\open\command]
    @="\"C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe\" %1"
    
    [HKEY_CLASSES_ROOT\ssh]
    @="URL:SSH Protocol"
    "EditFlags"=dword:00000002
    "FriendlyTypeName"="@ieframe.dll,-907"
    "URL Protocol"=""
    "BrowserFlags"=dword:00000008
    
    [HKEY_CLASSES_ROOT\ssh\DefaultIcon]
    @="C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe,0"
    
    [HKEY_CLASSES_ROOT\ssh\shell]
    @=""
    
    [HKEY_CLASSES_ROOT\ssh\shell\open]
    
    [HKEY_CLASSES_ROOT\ssh\shell\open\command]
    @="\"C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe\" %1"
    
    
    [HKEY_CLASSES_ROOT\putty]
    @="URL:PuTTY Protocol"
    "EditFlags"=dword:00000002
    "FriendlyTypeName"="@ieframe.dll,-907"
    "URL Protocol"=""
    "BrowserFlags"=dword:00000008
    
    [HKEY_CLASSES_ROOT\putty\DefaultIcon]
    @="C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe,0"
    
    [HKEY_CLASSES_ROOT\putty\shell]
    @=""
    
    [HKEY_CLASSES_ROOT\putty\shell\open]
    
    [HKEY_CLASSES_ROOT\putty\shell\open\command]
    @="\"C:\\Program Files (x86)\\NetSarang\\Xshell 7\\Xshell.exe" -url %1"

     

  • OscarP's avatar
    OscarP
    New Contributor

    You are correct. I just checked on my Windows 11 pc and it's different from my Mac. 

    Have you checked the Windows 11 System Settings -> Apps -> Default Apps. See if putty is listed, there are the default option to open certain file types or urls types. I'm positive 1Password doesn't hardcode it (as I don't have putty and it opens ssh links fine) so it should be in a Windows setting.

    • pcorreia's avatar
      pcorreia
      New Contributor

      Unfortunately, whoever put putty as the default program for SSH didn't registered it in a way you can see over the default apps.
      I'm scratching my head for days and still copying 1Password URL every time I want to access something.
      Honestly, disapointed with 1Password nt  enabling you to select the app yourself, with Windows to allow a default app be registered outside the list and with Windows again for not letting me add the entry myself.

      • OscarP's avatar
        OscarP
        New Contributor

        Yeah, that's unfortunate. If it's something that really bothers you and you have some time, I suggest looking into creating a custom protocol handler in Windows Registry Editor that opens Xshell when an ssh:// link is clicked. There should be articles and examples online.

  • OscarP's avatar
    OscarP
    New Contributor

    Have you checked the 1Password preferences? Under Developer -> Advanced, there's an option for "Open SSH URLs with: _________ "