答案1
ssh 密钥不是个性化的,因此您可以在您的用户下创建密钥,然后将您的公钥粘贴到远程服务器上目标用户的authorized_keys 中。
因此,如果您在本地工作站上的“thufir”下生成了密钥,并且想要以“ubuntu”身份登录远程服务器,则需要将 .ssh/id_rsa.pub 的内容复制到用户 ubuntu 上的 .ssh/authorized_keys远程服务器并使用类似命令
ssh ubuntu@remotehost
如果您想作为 thufir 连接到远程服务器,那么,是的,在远程服务器上您需要创建用户 thufir,将其添加到 sudoers,然后将您的公钥放入新用户的 .ssh/authorized_keys 中,然后您将能够通过连接
ssh thufir@remotehost
或者,建议您以 thufir 身份登录到本地盒子,通过
ssh remotehost
答案2
相同的 ssh 公钥可以用作同一系统以及多个系统上的多个用户的身份验证密钥。
仅用于ssh-copy-id
将您的公钥发送到远程主机。对于用户ubuntu
,您将需要私钥的副本,并使用ssh-copy-id ubuntu@aws
它将默认的 ssh 公钥复制到 ubuntu 用户的~/.ssh/authorized_keys
文件中。
下图仅用于说明目的,显示复制到多个主机和用户的相同公钥。
.---------------------------------------.
| aws:/home/thufir/.ssh/authorized_keys |
|---------------------------------------|
| ssh-rsa AAAA... user10@host |
'---------------------------------------'
^
|
|
ssh-copy-id | .---------------------------------------.
| | aws:/home/ubuntu/.ssh/authorized_keys |
.---' |---------------------------------------|
| | ssh-rsa AAAA... user10@host |
| '---------------------------------------'
| ^
.---------------------------------------. |
| local:/home/user10/.ssh/id_rsa | | ssh-copy-id
| Private Key | |
|---------------------------------------| |
| BEGIN RSA PRIVATE KEY |----------.
| Proc-Type: 4,ENCRYPTED | |
| DEK-Info: AES- | | ssh-copy-id
'---------------------------------------' |
| v
| .---------------------------------------.
'---. | aws2:/home/user5/.ssh/authorized_keys |
| |---------------------------------------|
| | ssh-rsa AAAA... user10@host |
ssh-copy-id | '---------------------------------------'
|
v
.----------------------------------------.
| aws2:/root/.ssh/authorized_keys |
|----------------------------------------|
| ssh-rsa AAAA... user10@host |
'----------------------------------------'