1

我想通过 phoenix 应用程序 ssh 到远程主机。

我正在按照以下步骤使用 Erlang :ssh

1) 启动 iex 会话

iex -S mix phoenix.server

2) 确保 :ssh 应用程序已启动

:application.ensure_all_started(:ssh)

3) ssh 到远程服务器

{:ok, conn} = :ssh.connect('xxx.xxx.xxx.xxx', 22, [user: 'root', user_dir: 'priv/keys', silently_accept_hosts: true])

即使在遵循所有这些信息之后,我仍被要求输入 ssh 密码。

我的 IP 和用户值也正确传递了 priv/keys 文件夹中的密钥。

有什么我做错了吗?

4

1 回答 1

0

如果您的密钥文件有密码,您将需要包含其中一个*_pass_phrase选项。

{:ok, conn} = 
  :ssh.connect('xxx.xxx.xxx.xxx', 22, 
    [user: 'root', user_dir: 'priv/keys', silently_accept_hosts: true,
    rsa_pass_phrase: 'mypassphrase'])
于 2016-11-21T20:21:28.940 回答