1

我不知道为什么我的 libssh 程序无法连接到本地主机,但它适用于远程主机。

ssh_session my_ssh_session = ssh_new();
ssh_options_set(my_ssh_session, SSH_OPTIONS_USER, "my_user_name");
ssh_options_set(my_ssh_session, SSH_OPTIONS_HOST, "localhost");

int rc = ssh_connect(my_ssh_session);
if(rc != SSH_OK) {
  printf("Error connecting to the localhost\n");
  exit(-1);
}
// Authorized by the password.
rc = ssh_userauth_password(my_ssh_session, "my_user_name", "my_password");

该程序可以成功创建会话,但是当我尝试进行身份验证时,它总是在最后一行失败。我得到的错误信息ssh_userauth_password(Access denied. Authentication that can continue: publickey,keyboard-interactive).

4

1 回答 1

1

你看到配置 /etc/ssh/sshd_config

更改 passwordauthentication nopasswordauthentication yes

参考:权限被拒绝(公钥,键盘交互)

于 2015-08-12T03:15:00.573 回答