📅  最后修改于: 2023-12-03 15:05:21.696000             🧑  作者: Mango
ssh-copy-id
是一个在 Linux 和 macOS 系统上安装公钥到远程主机上的命令行工具。它的作用是自动化 SSH 公钥的复制,和免去手动进行 SSH 公钥管理的繁琐步骤。
ssh-copy-id
命令语法如下:
ssh-copy-id [-f] [-i [identity_file]] [user@]hostname
其中 user
代表远程主机的用户名,hostname
代表远程主机的主机名或 IP 地址。如果没有指定用户名,则默认使用当前登录用户的用户名。
-i
选项可用于指定公钥文件的路径,如果没有指定,则默认使用 ~/.ssh/id_rsa.pub
。
-f
选项可以用于强制覆盖已经存在的远程主机上的公钥。
以下示例演示如何使用 ssh-copy-id
命令从本地主机将公钥复制到远程主机上:
ssh-keygen
命令生成公钥和私钥文件。ssh-copy-id
命令将公钥复制到远程主机上:ssh-copy-id user@hostname
其中,user
和 hostname
是远程主机的用户名和主机名,根据实际情况进行替换。
3. 执行 ssh
命令测试是否成功:
ssh user@hostname
如果成功,则表示公钥已经成功地被复制到远程主机上,并且可以免密码登录了。
ssh-copy-id
命令之前,必须先生成公钥和私钥文件。-f
选项来强制覆盖旧的公钥。ssh-copy-id
命令默认不会被安装,可以通过 Homebrew 包管理器来安装 OpenSSH:brew install openssh