SSH 密钥是否与用户名绑定?

SSH 密钥是否与用户名绑定?

据我所知,如果客户端想要连接到服务器,客户端会将其public密钥添加到authorized_keys服务器上特定用户的服务器文件中。然后客户端可以像这样连接到服务器:

ssh [email protected]

我的问题是,有没有办法实现这一点:

ssh server.com

服务器是否以某种方式根据提供的密钥来选择用户?

答案1

公钥被放置在服务器上使用ssh-keygenssh-copy-id生成公钥的用户的主目录中。如果您使用 ssh 连接到没有用户名的机器,它将尝试使用登录用户的用户名进行连接。如果登录的用户在服务器上没有密钥,那么它将尝试密码验证。如果密码验证被禁用并且用户没有密钥,则登录将失败。这是假设用户有登录名和 ssh 访问权限。

答案2

.ssh/config您可以在文件中定义别名:

Host server
    Hostname server.com or the IP
    User username
    Port ssh-port

然后按照 进行连接ssh server

相关内容