权限被拒绝(公钥)

权限被拒绝(公钥)

网站上有几个类似的问题,但我无法找到可以解决我的问题的问题。

我正在执行一些关于自适应比特率视频流的实验,并且需要一个(服务器)节点(我可以使用 FIP 通过 SSH 连接到该节点),以便能够访问多个(客户端)节点,这些节点没有 FIP,但由我使用 FTP 传递到服务器的私钥相同。

因此,我的所有节点都是使用 key 创建的my_chameleon_key.pem。我自己和服务器之间建立了远程连接。现在,当我尝试从服务器到客户端执行 ssh 操作(ssh -i ~/.ssh/my_chameleon_key.pem -vT cc@<client_ip>其中 server_ip 是客户端 IP 地址列表中的任意选择)时,我得到以下输出:

OpenSSH_7.2p2 Ubuntu-4ubuntu2.10, OpenSSL 1.0.2g  1 Mar 2016
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to <server_ip> [<server_ip>] port 22.
debug1: Connection established.
debug1: key_load_public: No such file or directory
debug1: identity file /home/cc/.ssh/my_chameleon_key.pem type -1
debug1: key_load_public: No such file or directory
debug1: identity file /home/cc/.ssh/my_chameleon_key.pem-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.2p2 Ubuntu-4ubuntu2.10
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.2p2 Ubuntu-4ubuntu2.10
debug1: match: OpenSSH_7.2p2 Ubuntu-4ubuntu2.10 pat OpenSSH* compat 0x04000000
debug1: Authenticating to <server_ip>:22 as 'cc'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: [email protected]
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: none
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: none
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:QaA4NOIFUybFLYXHcbg8iHuGUw1Komvn+o4Mx5bdf14
debug1: Host '<server_ip>' is known and matches the ECDSA host key.
debug1: Found key in /home/cc/.ssh/known_hosts:1
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<rsa-sha2-256,rsa-sha2-512>
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/cc/.ssh/my_chameleon_key.pem
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

同样,server_ip 是客户端 IP。

ls ~/.ssh输出authorized_keys known_hosts my_chameleon_key.pem,我已经验证 my_chameleon_key.pem 在传输过程中没有被修改。

我确信部分原因是我不知道如何导航 -vT 跟踪,但我在这里完全被难住了。我应该怎么做才能解决这个问题?

所有服务器都是 CC-Ubuntu16.04,如果这是有用的信息,使用 sudo 运行并没有帮助。如果我可以提供其他信息,请告诉我。

编辑:此时我已经运行了几个命令,因此 /var/log/auth.log 已经相当堵塞。以下是最新的内容,(理论上)应该是我的 SSH...但是,当我再次尝试 SSH 时它不会更新,所以我不确定。

Aug  8 15:47:16 mwhicks2abvsserver sshd[46351]: Accepted publickey for cc from 24.211.146.9 port 52223 ssh2: RSA SHA256:a6N6S9PllSObVyDZXJdG1GWUOkKhFTpIJ3Rae4sW8uQ
Aug  8 15:47:16 mwhicks2abvsserver sshd[46351]: pam_unix(sshd:session): session opened for user cc by (uid=0)
Aug  8 15:47:16 mwhicks2abvsserver systemd-logind[2861]: New session 8 of user cc.

另外,这里是我的完整 auth.log 文件的链接。对我来说太长了,无法考虑把它放在这里。https://pastebin.com/vsyXD7bM

答案1

首先检查您的私钥和公钥文件是否具有正确的权限。 SSH不喜欢过于开放的权限。我通常为包含公钥的 .ssh 目录设置 chmod 700,对于公钥和私钥我设置 chmod 600。

就我而言,导致此问题的原因是我已重命名用户和组并更改了主目录的名称,但忘记更改用户本身的主目录。所以在 /etc/passwd home 中仍然指向旧目录。

相关内容