我正在使用 Ubuntu 18.04 LTS。
- 无论何时,我
ssh-copy-id
第一次username@host
按预期将 my 放在 authorized_keys 文件行的末尾。
在远程机器上:
sacredos@sacredos-DT:~$ cat /home/sacredos/.ssh/auth*
ssh-rsa ... sacredos@sacredos-LT
在本地机器上:
sacredos@sacredos-LT:~$ ssh-add -l
4096 SHA256:... sacredos@sacredos-LT (RSA)
- 当我转到
ssh-copy-id
另一台计算机或后续计算机时,它会将 id 文件的路径放在那里。
在清除并重新复制密钥后的远程计算机上:
sacredos@sacredos-DT:~$ cat /home/sacredos/.ssh/auth*
ssh-rsa ... /home/sacredos/.ssh/id_rsa
再次复制密钥后在本地计算机上:
sacredos@sacredos-LT:~$ ssh-add -l
4096 SHA256:... /home/username/.ssh/id_rsa (RSA)
- 我安装了一个全新的系统来检查这不是我对配置所做的事情,但它的行为是一样的。它是处于清除状态的同一台机器还是新机器也无关紧要,如果密钥被 ssh-copy-id'ed 两次或更多次,就会发生这种情况。
这里发生了什么?
从
ssh-copy-id(1)
手册页:所以你应该总是使用例如。
-i ~/.ssh/id_rsa.pub
(如手册中所述)或ssh-agent
如果您想保留身份文件中的评论,则无需使用。请注意,在 debian(也可能在 ubuntu 上)默认情况下,GUI 会话作为
ssh-agent
(查看)的子进程运行,因此即使您不打算/etc/X11/Xsession.d/90x11-common_ssh-agent
这样做,您也会使用。ssh-agent
此外,如果您启用了该选项(请参阅手册页) ,则
ssh-agent
在运行时ssh
(通过)将自动添加密钥ssh-copy-id
,而无需运行。ssh-add
AddKeysToAgent
ssh_config(5)