如何在 CentOs 7 机器上的两个用户之间共享 SSH 密钥?

如何在 CentOs 7 机器上的两个用户之间共享 SSH 密钥?

我不是系统管理员\网络专家(我是软件开发人员),并且在客户的 Linux CentOS 7 远程机器上工作时发现以下困难。

我正在使用 MobaxTerm 连接到这台机器。他们给我提供了一个.ppk 文件和一个用户。

.ppk 文件包含如下内容:

PuTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: MY CUSTOMER KeyPair
Public-Lines: 6
.....................................................................
.....................................................................
.....................................................................

导入此文件(进入 MobaxTerm“高级 SSH 设置 --> 使用私钥”)我可以使用他们给我的用户毫无问题地登录这台机器。

然后,在我以提供的用户身份登录后,我使用以下命令创建了一个全新的 root 用户:

sudo adduser my_new_user
sudo passwd my_new_user
sudo usermod -aG wheel my_new_user

完成此操作后,我可以通过以下方式更改用户:

su - my_new_user

它运行正常,而且似乎我有 root 访问权限。

问题是现在我无法使用此 my_new_user 用户通过 SSH 进行访问。如果我在执行登录时尝试提示此用户名,则会收到以下错误消息:

Server refused our key

No supported authentication methods available (server sent: publickey,gssapi-keyex,gssapi-with-mic)

我认为这个错误取决于导入的.ppk 文件与提供的用户相关而不是与这个全新的用户相关(事实上,如果我禁用.ppk 导入,使用原始提供的用户也会得到同样的错误)。

在网上看了一下,好像是同一个key可以访问多个用户/主机,但是需要对每个用户分别授权。所以我尝试做了如下操作:

在我的新用户目录中,我手动创建了.ssh目录:

[anobili@prod-whazu-nodo1 ~]$ pwd
/home/anobili
[anobili@prod-whazu-nodo1 ~]$ ls -a
.  ..  .bash_history  .bash_logout  .bash_profile  .bashrc  .ssh
[anobili@prod-whazu-nodo1 ~]$

然后我复制了/home/originaluser/.ssh/authorized_keys文件(其中 originaluser 是他们向我提供的用户)放入全新的.ssh文件夹。它现在包含这个授权密钥包含密钥的文件:

[anobili@prod-whazu-nodo1 .ssh]$ pwd
/home/anobili/.ssh
[anobili@prod-whazu-nodo1 .ssh]$ ls -a
.  ..  authorized_keys
[anobili@prod-whazu-nodo1 .ssh]$

现在我希望我也可以通过 SSH 以同样的方式登录阿诺比利用户,但我仍然收到之前的错误消息。

哪里出了问题?我遗漏了什么?我该如何修复此问题?

答案1

首先:使用ls -lhAZ-Z在启用 SELinux 的系统上),它显示 Linux 文件所有权、权限和 SELinux 标签。

重置目录和文件的权限:

# DAC - Restore permissions
chmod 0700 ~anobili/.ssh
chmod 0600 ~anobili/.ssh/authorized_keys
# Restore ownership
chown -R anobili ~anobili/.ssh
# MAC - Restore SELinux 
restorecon -R ~anobili/.ssh

它看起来应该是这样的:

$ ls -lhaZ | grep .ssh
drwx------. 2 user group unconfined_u:object_r:ssh_home_t:s0  4.0K Feb 21 18:52 .ssh
$ ls -lhaZ .ssh
-rw-------. 1 user group unconfined_u:object_r:ssh_home_t:s0 0 Feb 21 18:53 authorized_keys

相关内容