Skip to content

Dory does not support external hardware OTP input for SSH authentication #178

@dory-finn

Description

@dory-finn

Description

When connecting to an SSH server that requires OTP (One-Time Password) from an external hardware device (e.g., hardware token, MFA device), Dory currently fails to handle the interactive OTP input step.

As a result, SSH authentication fails even though credentials (password/key) are correct.

Error Messages

Observed errors include:

  • All configured authentication methods failed
  • SSH connection requires password
  • No prompt for OTP / MFA code is shown

Expected Behavior

Dory should:

  • Detect OTP/MFA prompt during SSH authentication
  • Provide an input UI for users to enter OTP codes (e.g., from hardware token)
  • Support interactive keyboard-based authentication (keyboard-interactive)

Actual Behavior

  • SSH connection fails without allowing OTP input
  • No UI or fallback mechanism for MFA/OTP
  • Appears to only support password / key-based auth

Steps to Reproduce

  1. Configure an SSH server with MFA (e.g., Google Authenticator / hardware token)
  2. Attempt to connect via Dory
  3. Observe that authentication fails without OTP prompt

Environment

  • Dory version: (please fill)
  • OS: (macOS / Windows / Linux)
  • SSH server: (e.g., OpenSSH with MFA enabled)

Possible Root Cause

  • Missing support for keyboard-interactive authentication in SSH client
  • No handling of multi-step auth challenges

Suggested Fix

  • Add support for keyboard-interactive auth flow
  • Implement OTP prompt UI
  • Support multiple challenge-response steps during SSH handshake

Additional Context

This issue blocks usage in environments with:

  • Mandatory MFA
  • Hardware security tokens
  • Enterprise SSH setups

Would love to help test if a fix or experimental version is available 🙏

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request
    No fields configured for Feature.

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions