ssh-copy-id
是一个命令行工具,用于将本地主机的公钥复制到远程主机的 authorized_keys
文件中。使用 ssh-copy-id
可以使得用户在不需要输入密码的情况下,通过 SSH 连接到远程主机。以下是 ssh-copy-id
的使用详情和注意点:
使用详情:
-
在本地主机上生成 SSH 公钥和私钥。
-
在远程主机上开启 SSH 服务,并且确保在远程主机上存在一个存放公钥的文件(通常为
.ssh/authorized_keys
)。 -
在本地主机上执行
ssh-copy-id
命令,将公钥复制到远程主机上。ssh-copy-id user@remote_host
-
输入远程主机的密码,以授权复制公钥。
-
完成后测试 SSH 连接是否正常。
注意点:
-
要使用
ssh-copy-id
,必须在本地主机上已经生成了 SSH 公钥和私钥。使用ssh-keygen
命令可以生成一对 SSH 公钥和私钥。ssh-keygen -t rsa -b 4096 -C "[email protected]"
-
远程主机上必须开启 SSH 服务,并且已经安装了 SSH 客户端。
-
远程主机上必须存在一个存放公钥的文件(通常为
.ssh/authorized_keys
)。如果这个文件不存在,可以在远程主机上创建这个文件,然后将公钥信息复制到这个文件中。 -
当一个远程主机有多个用户需要使用 SSH 连接时,每个用户都需要执行
ssh-copy-id
命令并复制自己的公钥到远程主机上。 -
如果远程主机已经有了一些公钥,需要注意不要覆盖已有的公钥。最好是将新的公钥添加到已有公钥的下一行。