使用libssh连接到SUSE

时间:2017-09-14 12:52:40

标签: c++ linux authentication suse libssh

我正在尝试使用libssh(https://www.libssh.org/)与安装了SUSE Enterprise操作系统的计算机建立连接。

    ssh_options_set(tempSshSession, SSH_OPTIONS_HOST, host2Connect);
    ssh_options_set(tempSshSession, SSH_OPTIONS_LOG_VERBOSITY, &verbosity);
    ssh_options_set(tempSshSession, SSH_OPTIONS_PORT, &port);

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

在调用ssh_userauth_password()后,它会返回响应:“ SSH_AUTH_DENIED:身份验证失败:使用其他方法

适用于以下操作系统:Ubuntu,Linux Generic和CentOS。

由于

1 个答案:

答案 0 :(得分:0)

检查/etc/ssh/sshd_config。你应该在那里找到PermitRootLogin forced-command-only。将其设置为yes,您的问题就应该消失了。请记住,有一个原因,为什么人们决定不允许每个默认的root用户/通过登录。