问题描述
在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的解决方案。根据您的需求和环境,选择适合您的方法进行配置。