这是 ssh-copy-id 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
ssh 复制 ID — 使用本地可用的密钥来授权在远程机器上登录
概要
ssh 复制 ID [-f[-n[-i [身份文件]][-p 端口[-o ssh_选项[用户@]主机
ssh 复制 ID -h | -?
商品描述
ssh 复制 ID 是一个脚本,使用 SSH(1) 登录到远程机器(大概是使用
登录密码,所以应该启用密码验证,除非你做了一些聪明的事
使用多个身份)。 它组装了一个或多个指纹的列表(如描述
下面)并尝试使用每个密钥登录,以查看是否已经安装了其中任何一个(或
当然,如果你不使用 SSH代理(1) 这可能会导致你被反复提示
用于密码短语)。 然后它组合了一个登录失败的列表,并使用 ssh,
在远程服务器上使用这些密钥启用登录。 默认情况下,它通过以下方式添加密钥
将它们附加到远程用户的 〜/.ssh/authorized_keys (创建文件,和
目录,如有必要)。 它还能够检测远程系统是否是
NetScreen,并改用它的“set ssh pka-dsa key ...”命令。
选项如下:
-i 身份文件
仅使用包含在 身份文件 (而不是寻找身份
通过 SSH-ADD(1) 或在 默认_ID_文件)。 如果文件名不以 .pub
这是添加的。 如果省略文件名,则 默认_ID_文件 用来。
请注意,这可用于确保复制的密钥具有注释一
首选和/或应用额外的选项,通过确保密钥文件将这些设置为
在尝试复制之前首选。
-f 强制模式:不检查远程服务器上是否存在密钥。 这意味着
它不需要私钥。 当然,这可能导致不止一个
安装在远程系统上的密钥副本。
-n 做一次试运行。 无需在远程系统上安装密钥,只需打印
已安装的密钥。
-h, -? 打印使用情况摘要
-p 端口, -o ssh_选项
这两个选项只是原封不动地传递,连同它们的参数,
允许设置端口或其他 SSH(1) 选项,分别。
与其将这些指定为命令行选项,不如使用
(每主机)设置 SSH(1)的配置文件: ssh_配置(5)。
默认行为没有 -i, 是检查 'ssh-add -L' 是否提供任何输出,如果是
使用这些键。 请注意,这会导致对键的注释是文件名
那是给 SSH-ADD(1) 当密钥被加载到你的 SSH代理(1) 而不是
该文件中包含的评论,这有点可惜。 否则,如果 SSH-ADD(1)
不提供密钥的内容 默认_ID_文件 将被使用。
- 默认_ID_文件 是最近匹配的文件: 〜/ .ssh / ID*.pub,(不包括那些
那场比赛 〜/ .ssh /*-cert.pub) 所以如果你创建的密钥不是你想要的
ssh 复制 ID 使用,只需使用 触摸(1) 在您首选的密钥上 .pub 文件以将其恢复为
最近的。
示例
如果您已经在许多远程主机上从一个系统安装了密钥,然后
在新的客户端机器上创建一个新的密钥,例如,很难跟踪哪个
已安装新密钥的系统。 处理此问题的一种方法是同时加载
新钥匙和旧钥匙进入您的 SSH代理(1). 首先加载新密钥,没有 -c
选项,然后将一个或多个旧密钥加载到代理中,可能通过 ssh-ing 到客户端
具有旧密钥的机器,使用 -A 允许代理转发的选项:
用户@newclient$ ssh-add
user@newclient$ ssh -A old.client
用户@oldl$ ssh-add -c
...提示输入密码...
用户@old$ 注销
user@newclient$ ssh 一些服务器
现在,如果在服务器上安装了新密钥,您将被允许自动进入,而如果
您只启用了旧密钥,系统会要求您确认,这是您的提示
退出并运行
用户@newclient$ ssh-copy-id -i someserver
在这种情况下,您可能想要指定 -i 选项的原因是为了确保
对已安装密钥的评论是来自 .pub 文件,而不仅仅是文件名
已加载到您的代理中。 它还确保仅安装您想要的 ID,
而不是你的所有钥匙 SSH代理(1). 当然,你可以指定
另一个 id,或使用 SSH代理(1) 随心所欲。
提到了 SSH-ADD(1) 的 -c 选项,您可以考虑在使用代理时使用它
转发以避免您的密钥被劫持,但最好使用 SSH(1) 的
代理命令 和 -W 选项,在始终执行直接结束的同时通过远程服务器反弹
端认证。 这样中间跃点就无法访问您的 SSH代理(1). 一种
网络搜索“ssh proxycommand nc”应该很有启发性(注意现代方法是
使用 -W 选项,而不是 nc(1))。
使用 onworks.net 服务在线使用 ssh-copy-id