CentOS 7 使用密钥认证登录SSH

37次阅读
没有评论

问题描述

在CentOS 7上启用了密钥认证,并禁用了密码认证。他想知道是否有可能创建一个主账户(例如,一个主要的笔记本电脑),从该账户登录到服务器上的所有账户。

解决方案

请注意以下操作注意版本差异及修改前做好备份。

方案1

在CentOS 7上,您可以通过以下步骤实现从主账户登录到其他账户:
1. 使用主账户或root账户登录到服务器。
2. 使用以下命令切换到其他用户账户:

sudo su otheruser

请注意,这里的otheruser是您想要登录的其他用户账户的用户名。您需要先登录到特权用户的账户,然后使用sudo su命令切换到其他用户账户。
另外,需要确保您要登录的用户账户在/etc/passwd文件中具有有效的shell路径,例如/bin/bash。如果用户账户的shell路径是/bin/fase/bin/nologin,您将无法切换到该用户账户(其他用户也无法切换)。

方案2

请注意以下操作注意版本差异及修改前做好备份。
另一种方法是编辑/etc/ssh/sshd_config文件,并添加以下内容:

AuthorizedKeysFile    /etc/ssh/all_users_authorized_keys

然后,在/etc/ssh/all_users_authorized_keys文件中放置您的公钥,并重新启动sshd服务。
默认情况下,/etc/ssh/sshd_config文件中的配置是:

AuthorizedKeysFile    %h/.ssh/authorized_keys

通过修改AuthorizedKeysFile配置,您可以将公钥文件的位置更改为/etc/ssh/all_users_authorized_keys,从而实现从主账户登录到其他账户。

请注意,无论使用哪种方法,都需要确保您的公钥已正确添加到目标用户账户的authorized_keys文件中。这样,您才能使用密钥认证登录到该用户账户。

以上是在CentOS 7上使用密钥认证登录SSH的解决方案。根据您的需求和环境,选择适合您的方法进行配置。

正文完