Meteor MUP failed authentication using ssh ed25519

2019-08-29 01:16发布

问题:

Problem

I want to setup my config using mup setup. However it fails in all possible configs:

{
  host: '1.2.3.4',
  username: 'root',
  pem: '/home/user/.ssh/id_ed25519',
}

Fails, where module ssh2 (which seems to be the part of MUP that handles the client auth requests) can't parse the (unkown) format of the key.

{
  host: '1.2.3.4',
  username: 'root',
  password: '...'
}

Fails, because my server only accepts login using key authentication (ssh -i)

{
  host: '1.2.3.4',
  username: 'root',
  // or leave blank to authenticate using ssh-agent
}

Fails also with ssh2 due to unknown key format. Note, that using my ssh-agent from default OSX terminal works as expected.

Background

The node ssh2 module seems to not support ssh ed25519 and I can only login to the server using the ssh key.

Question

Is there any possible way to authenticate mup setup without using the node module ssh2 or am I locked out from using MUP?

回答1:

I encountered the exact same problem.

The ssh2 npm module isn't as fully featured as your command line ssh. The types of keys supported are limited. I know that the ed25519 format unfortunately isn't supported. It's a little odd, because it uses ssh-agent to get the key, but doesn't support all types.

My only option (short of trying to upgrade the ssh2 module myself) was to use an RSA key.